:root {
  --bg: #111b20;
  --panel: #1d292f;
  --panel2: #253943;
  --line: #3f5965;
  --text: #edf4f6;
  --muted: #9db2bc;
  --blue: #3d99d4;
  --green: #31966d;
  --red: #d66a66;
  --amber: #d7a72e;
  --cyan: #4eb5c8;
  --shadow: 0 12px 28px rgba(0,0,0,.24);
}

body { background: linear-gradient(180deg, #111b20, #18262d 56%, #111b20); font-size: 15px; }
.shell { grid-template-columns: 242px 1fr; }
aside { background: #172329; border-right-color: #36505b; padding: 23px 16px; }
.brand { font-size: 19px; letter-spacing: .02em; }
.brand small { color: #89a8b6; font-size: 12px; }
nav a { color: #b4c8d1; font-size: 14px; border-radius: 4px; }
nav a.active, nav a:hover { background: #314b57; box-shadow: inset 3px 0 #3d99d4; }
main { padding: 26px 30px 50px; }
h1 { font-size: 31px; letter-spacing: -.025em; }
.subtitle { font-size: 14px; color: #9db2bc; }
.pill { background: #22333b; border-color: #4a6570; border-radius: 4px; }
.card { background: linear-gradient(180deg, #23343c, #1a282f); border-color: #3a515c; border-radius: 6px; }
.kpi { min-height: 116px; padding: 15px; border-top: 3px solid #3d99d4; }
.kpi:nth-child(2), .kpi:nth-child(4) { border-top-color: #d7a72e; }
.kpi .label { color: #a9bec7; font-size: 13px; }
.kpi .value { font-size: 25px; }
.badge { border-radius: 3px; }
.chartbox, .perf, .op-card, .digital-twin-kpi, .twin-kpi, .network-kpi, .drive-card, .drive-step, .quality-chip, .calc-card, .bench-card {
  background: #17242a;
  border-color: #36515d;
  border-radius: 5px;
}
.section h2 { font-size: 18px; }
.charttitle { font-size: 14px; }
.small, .source-note, .network-meta { font-size: 12px; color: #9db2bc; }
.dt-chart { background: #152228; border-color: #36515d; border-radius: 5px; }
.dt-grid { stroke: #2c414b; }
.dt-axis { stroke: #77939f; }
.dt-label { fill: #a9c0ca; font-size: 13px; }
.dt-axis-title { fill: #edf4f6; }
.dt-live-point { fill: #31966d; }
.dt-reference { stroke: #d7a72e; }
.network-formula, .calc-details, .tech-details, .network-kpi-wrap { background: #152228; border-color: #3b5662; border-radius: 5px; }
th { background: #304b58; font-size: 12px; }
td { color: #d1dfe5; font-size: 12px; border-color: #344d58; }
.footer-note { background: #243b46; border-color: #456775; border-radius: 5px; }
.benchmark-toolbar button, .dt-tabs button { border-radius: 4px; background: #263d48; border-color: #4b6976; }
.benchmark-toolbar button.active, .dt-tabs button.active { background: #3f6677; border-color: #5e91a8; }
.quality { background: #233b45; border-color: #456977; }
@media(max-width:1250px){.shell{grid-template-columns:1fr}aside{display:none}}
