:root{ --card-radius:18px; }
body{ background:#0b0f14; color:#e6edf3; }
a{ color:#7dd3fc; } a:hover{ color:#bae6fd; }
.table{ --bs-table-bg:transparent; --bs-table-color:#e6edf3; --bs-table-border-color:rgba(255,255,255,.08); }
.panel,.kpi-card{ border-radius:var(--card-radius); border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.02); box-shadow:0 8px 24px rgba(0,0,0,.35); }
.kpi-number{ font-size:1.9rem; font-weight:800; letter-spacing:.3px; }
.badge-soft{ background:rgba(125,211,252,.12); border:1px solid rgba(125,211,252,.25); color:#bae6fd; }
.form-control,.form-select{ background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.12); color:#e6edf3; }
.form-control:focus,.form-select:focus{ box-shadow:none; border-color:rgba(125,211,252,.45); }
select option{ background:#0b0f14; color:#e6edf3; }
hr{ border-color:rgba(255,255,255,.08); }
.sticky-header thead th{ position:sticky; top:0; background:rgba(11,15,20,.95); z-index:2; }
.total-red{ color:#ef4444 !important; font-weight:800 !important; }

/* Advanced Analytics PRODUCT–AGE total row */
.age-total-row td{ background:#079C16 !important; color:#000 !important; }
.age-total-row a{ color:#000 !important; font-weight:800 !important; }

/* Age bucket coloring for the MODEL AGE widget */
.age-0{ background:rgba(34,197,94,.10); }
.age-1{ background:rgba(56,189,248,.10); }
.age-2{ background:rgba(245,158,11,.10); }
.age-3{ background:rgba(239,68,68,.10); }
