/* === Repo Cards === */
.repo-card {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 1.2rem 1.4rem;
  margin-bottom: 1rem;
  background: #fafbfc;
  transition: box-shadow 0.2s ease, transform 0.15s ease;
  border-left: 4px solid #e2e8f0;
}

.repo-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  transform: translateY(-2px);
}

/* Color-coded left borders by org */
.repo-card.org-databricks {
  border-left-color: #1e293b;
}

.repo-card.org-labs {
  border-left-color: #FFA166;
}

.repo-card.org-solutions {
  border-left-color: #593196;
}

.repo-card.org-community {
  border-left-color: #22c55e;
}

.repo-card.org-oss {
  border-left-color: #0ea5e9;
}

.repo-card.org-industry {
  border-left-color: #e11d48;
}

/* Repo name styling inside cards */
.repo-card .repo-name {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0.4rem;
}

.repo-card .repo-name a {
  color: #1e293b;
  text-decoration: none;
}

.repo-card .repo-name a:hover {
  color: #593196;
  text-decoration: underline;
}

/* Badge row */
.repo-card p img {
  margin-right: 4px;
  vertical-align: middle;
}

/* Featured card — bigger, with background */
.repo-featured {
  border: 2px solid #593196;
  border-radius: 12px;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
  background: linear-gradient(135deg, #f9f8fc 0%, #f0ecf9 100%);
  border-left: 6px solid #593196;
}

.repo-featured:hover {
  box-shadow: 0 6px 24px rgba(89, 49, 150, 0.12);
  transform: translateY(-2px);
}

/* Org legend */
.org-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 1rem 0 1.5rem;
  padding: 0.8rem 1rem;
  background: #f8fafc;
  border-radius: 8px;
  border: 1px solid #e2e8f0;
  font-size: 0.9rem;
}

.org-legend-item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.org-dot {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  display: inline-block;
}

.org-dot.navy { background: #1e293b; }
.org-dot.orange { background: #FFA166; }
.org-dot.purple { background: #593196; }
.org-dot.green { background: #22c55e; }
.org-dot.blue { background: #0ea5e9; }
.org-dot.pink { background: #e11d48; }

/* Star history chart container */
.star-history {
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  overflow: hidden;
  margin: 1rem 0;
}

.star-history img {
  width: 100%;
  display: block;
}

/* Section emoji/icon badges */
.section-badge {
  display: inline-block;
  padding: 0.2rem 0.6rem;
  border-radius: 20px;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-left: 0.5rem;
  vertical-align: middle;
}

.badge-official { background: #1e293b; color: white; }
.badge-labs { background: #FFA166; color: #1e293b; }
.badge-solutions { background: #593196; color: white; }
.badge-community { background: #22c55e; color: white; }
.badge-oss { background: #0ea5e9; color: white; }
.badge-industry { background: #e11d48; color: white; }

/* GitHub opengraph cards - constrain size */
.github-card {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 1rem;
  max-width: 100%;
}

.github-card img {
  width: 100%;
  border-radius: 10px;
  transition: opacity 0.2s;
}

.github-card img:hover {
  opacity: 0.92;
}

/* Tabset custom styling */
.panel-tabset .nav-tabs {
  border-bottom: 2px solid #e2e8f0;
}

.panel-tabset .nav-link.active {
  color: #593196 !important;
  border-bottom-color: #593196 !important;
  font-weight: 600;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .repo-card {
    padding: 1rem;
  }

  .repo-featured {
    padding: 1rem;
  }

  .org-legend {
    flex-direction: column;
    gap: 0.5rem;
  }
}
