/* ─── Features Grid ─── */
.features-grid {
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:20px;
  justify-content:start;
}

.feature-card {
  position:relative; overflow:hidden;
  background:var(--card); border:1px solid var(--border);
  border-radius:20px; padding:26px;
  backdrop-filter:blur(8px);
  transition:transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.feature-card::after {
  content:""; position:absolute; inset:10px;
  border:1px dashed rgba(255,255,255,0.05); border-radius:14px; pointer-events:none;
}
.feature-card:hover {
  transform:translateY(-3px);
  border-color:rgba(167,139,250,0.28);
  box-shadow:0 12px 28px rgba(124,58,237,0.15);
}
.feature-icon {
  width:46px; height:46px; border-radius:14px; margin-bottom:16px;
  display:flex; align-items:center; justify-content:center; font-size:1.3rem;
  background:rgba(167,139,250,0.1); border:1px solid rgba(167,139,250,0.22);
}
.feature-badge {
  display:inline-block; margin-bottom:10px; padding:4px 10px;
  border-radius:999px; font-size:0.7rem; text-transform:uppercase; letter-spacing:0.06em;
  background:rgba(167,139,250,0.08); border:1px solid rgba(167,139,250,0.2); color:var(--accent3);
}
.feature-card h3 { font-size:1.05rem; margin-bottom:8px; }
.feature-card p  { color:var(--muted); font-size:0.92rem; }

/* ─── Status Section ─── */
.status-section { padding-top:0; }
.status-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:20px; justify-content:start; }

.status-main {
  position:relative; overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(124,58,237,0.14), transparent 40%),
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02)),
    rgba(255,255,255,0.03);
  border:1px solid rgba(167,139,250,0.18);
  border-radius:24px; padding:30px;
  backdrop-filter:blur(8px);
}
.status-main::after {
  content:""; position:absolute; inset:14px;
  border:1px dashed rgba(167,139,250,0.1); border-radius:16px; pointer-events:none;
}

.status-label {
  position:relative; z-index:1; display:inline-block; margin-bottom:14px;
  padding:5px 10px; border-radius:999px;
  font-size:0.74rem; text-transform:uppercase; letter-spacing:0.08em;
  color:#86efac; background:rgba(34,197,94,0.1); border:1px solid rgba(34,197,94,0.22);
}
.status-dot-live {
  display:inline-block; width:7px; height:7px; border-radius:50%;
  background:#22c55e; box-shadow:0 0 6px rgba(34,197,94,0.7);
  animation:pulse 2s ease-in-out infinite; vertical-align:middle; margin-right:5px;
}
@keyframes pulse { 0%,100% { opacity:1; } 50% { opacity:0.4; } }

.status-main h3 { position:relative; z-index:1; font-size:1.4rem; line-height:1.18; margin-bottom:12px; }
.status-main p  { position:relative; z-index:1; color:var(--muted); max-width:44ch; font-size:0.94rem; }

.status-metrics {
  position:relative; z-index:1;
  display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:22px;
}
.metric { padding:14px; border-radius:16px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.07); }
.metric-val { display:block; font-size:1rem; font-weight:700; margin-bottom:3px; }
.metric-lbl { display:block; color:var(--muted); font-size:0.84rem; }

.status-side { display:grid; gap:16px; }
.status-card {
  position:relative; overflow:hidden;
  background:var(--card); border:1px solid var(--border);
  border-radius:20px; padding:22px; backdrop-filter:blur(8px);
  transition:border-color 0.2s ease;
}
.status-card::after {
  content:""; position:absolute; inset:10px;
  border:1px dashed rgba(255,255,255,0.05); border-radius:13px; pointer-events:none;
}
.status-card h3 { position:relative; z-index:1; font-size:1rem; margin-bottom:6px; }
.status-card p  { position:relative; z-index:1; color:var(--muted); font-size:0.88rem; }
.progress-bar {
  position:relative; z-index:1; margin-top:12px;
  height:5px; border-radius:999px; background:rgba(255,255,255,0.07);
}
.progress-fill {
  height:100%; border-radius:999px;
  background:linear-gradient(90deg, var(--accent2), var(--accent));
}
.progress-label {
  position:relative; z-index:1;
  display:flex; justify-content:space-between;
  margin-top:6px; font-size:0.76rem; color:var(--muted);
}

/* ─── Latest PR ─── */
.latest-section { padding-top:0; }

.latest-card {
  position:relative; overflow:hidden;
  background:var(--card); border:1px solid var(--border);
  border-radius:20px; padding:28px; backdrop-filter:blur(8px);
  display:flex; align-items:flex-start; gap:20px; justify-content:flex-start;
}
.latest-card::after {
  content:""; position:absolute; inset:10px;
  border:1px dashed rgba(255,255,255,0.05); border-radius:13px; pointer-events:none;
}
.latest-icon {
  position:relative; z-index:1; flex-shrink:0;
  width:46px; height:46px; border-radius:14px;
  display:flex; align-items:center; justify-content:center; font-size:1.2rem;
  background:rgba(167,139,250,0.1); border:1px solid rgba(167,139,250,0.2);
}
.latest-body { position:relative; z-index:1; flex:1; min-width:0; }
.latest-meta { display:flex; align-items:center; gap:8px; margin-bottom:8px; flex-wrap:wrap; }

.latest-badge {
  padding:3px 9px; border-radius:999px; font-size:0.7rem;
  text-transform:uppercase; letter-spacing:0.05em;
  background:rgba(167,139,250,0.1); border:1px solid rgba(167,139,250,0.22); color:var(--accent3);
}
.latest-badge.merged { background:rgba(139,92,246,0.15); border-color:rgba(139,92,246,0.3); color:#c4b5fd; }
.latest-badge.open   { background:rgba(34,197,94,0.10);  border-color:rgba(34,197,94,0.22);  color:#86efac; }
.latest-badge.closed { background:rgba(255,255,255,0.05); border-color:var(--border); color:var(--muted); }

.latest-time { font-size:0.78rem; color:var(--muted); }
.latest-body h3 { font-size:1.05rem; margin-bottom:6px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.latest-body p  { color:var(--muted); font-size:0.88rem; }
.latest-link {
  position:relative; z-index:1; display:inline-flex; align-items:center; gap:5px;
  margin-top:14px; color:var(--accent2); font-size:0.88rem; font-weight:600;
}
.latest-link:hover { text-decoration:underline; }

/* ─── CTA Section ─── */
.cta-section { padding-top:0; }

.cta-card {
  position:relative; overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(124,58,237,0.18), transparent 45%),
    linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.025)),
    rgba(255,255,255,0.03);
  border:1px solid rgba(167,139,250,0.2);
  border-radius:24px;
  padding:48px;
  text-align:center;
}

.cta-card::after {
  content:""; position:absolute; inset:14px;
  border:1px dashed rgba(167,139,250,0.1);
  border-radius:16px;
  pointer-events:none;
}

.cta-card h2 {
  position:relative;
  z-index:1;
  font-size:clamp(1.6rem,3vw,2.2rem);
  margin-bottom:14px;
}

.cta-card p {
  position:relative;
  z-index:1;
  color:var(--muted);
  max-width:52ch;
  margin:0 auto 28px;
}

.cta-actions {
  position:relative;
  z-index:1;
  display:flex;
  gap:12px;
  justify-content:center !important;
  align-items:center;
  flex-wrap:wrap;
  width:100%;
  margin:0 auto;
}

/* ─── Responsive ─── */
@media(max-width:900px) {
  .status-grid { grid-template-columns:1fr; }
}
@media(max-width:720px) {
  .features-grid { grid-template-columns:1fr; }
  .latest-card { flex-direction:column; }
  .cta-card { padding:32px 22px; }
}

.features-grid, .status-grid, .cta-actions, .hero-actions { justify-content:flex-start; }
.latest-card { justify-content:flex-start; }
