/* design: light | 科技白 | 浅灰蓝底 + 白卡 + 品牌蓝，白天投影和打印用 */
:root[data-design="light"] {
  color-scheme: light;
  --bg: #eef2f8; --panel: #ffffff; --ink: #1c2b40; --ink2: #46586f; --muted: #6f8199;
  --hi: #0f2547; --rule: #e2e8f1; --rule2: #cfd9e6; --grid: #eef3f9;
  --neon: #1660e8; --neon-rgb: 22, 96, 232; --neon2: #12a36b;
  --deep: #ffffff; --deep-rgb: 255, 255, 255; --glow: none;
  --bg-img: radial-gradient(900px 420px at 50% -10%, rgba(22,96,232,.10), transparent 60%),
            linear-gradient(180deg, #f4f7fc, #e9eff8);
  --bg-size: auto, auto;
  --top-bg: linear-gradient(180deg, #ffffff, #f4f8ff);
  --top-line: linear-gradient(90deg, transparent, #1660e8, transparent);
  --title: #0f2547; --title-glow: none;
  --status-bg: #ffffff; --panel-shadow: 0 1px 3px rgba(19,42,74,.08), 0 6px 18px rgba(19,42,74,.05);
  --corner: #b9cdea; --corner-op: 1; --head-bg: #f7faff;
  --nav-bg: #f1f6fd; --nav-hover: rgba(22,96,232,.07); --nav-on: #1660e8; --nav-on-ink: #ffffff;
  --nav-on-glow: 0 2px 8px rgba(22,96,232,.25);
  --stat-bg: #f7faff; --kpi-bg: linear-gradient(180deg, #ffffff, #f7faff);
  --track: #e8eef7; --hover: rgba(22,96,232,.05); --thead: #f2f7fe;
  --chip-bg: #ffffff; --btn-bg: #ffffff; --btn-primary-ink: #ffffff;
  --judge-bg: rgba(255,255,255,.95); --code-bg: #f6f9fe; --drop-bg: #f8fbff;
  --gw: #1660e8; --gw-soft: rgba(22,96,232,.55); --lc: #e2761b; --lc-soft: rgba(226,118,27,.55);
  --plan: #12a36b; --rain: #2a86d8; --crit: #d92b3c; --crit-bg: rgba(217,43,60,.08); --crit-line: rgba(217,43,60,.35);
  --warn: #b87400; --warn-bg: rgba(184,116,0,.09); --warn-line: rgba(184,116,0,.3);
  --good: #0f8f5c; --good-bg: rgba(15,143,92,.08); --good-line: rgba(15,143,92,.3);
  --neon-bg: rgba(22,96,232,.08); --neon-line: rgba(22,96,232,.35);
  --wall: #1660e8; --sky: #e6eff9; --terr-lo: #c4d6bd; --terr-hi: #8aa570; --terr-in: #d3bd9d;
  --waste: #b99a72; --soil: #c9bda6; --rock: #a9b7c4; --wall-line: #1660e8; --ditch: #7a9fbf;
  --zone: #46586f; --contour-major: #9fb2c8; --contour-minor: #c3d1e0;
  --fx-a: 0; --scan: 0; --stage-grad: linear-gradient(180deg, #eaf1fa 0%, #dfe9f6 100%);
}
:root[data-design="light"] .topbar { box-shadow: 0 2px 14px rgba(19,42,74,.07); border-bottom: 3px solid #1660e8; }
:root[data-design="light"] .top-center h1 { font-weight: 700; letter-spacing: .14em; }
:root[data-design="light"] .nav a.on { font-weight: 600; }
:root[data-design="light"] .panel { border-color: #dbe4f0; }
:root[data-design="light"] .panel::before { border-color: #1660e8; opacity: .5; }
:root[data-design="light"] .panel::after { border-color: #b9cdea; }
:root[data-design="light"] .p-head .bar { box-shadow: none; }
:root[data-design="light"] .kpi { border-top-width: 3px; }
:root[data-design="light"] .kpi .val { color: #0f2547; }
:root[data-design="light"] .rank-bar i { box-shadow: none; }
:root[data-design="light"] .rank-row.high .rank-bar i { background: #d92b3c; }
:root[data-design="light"] .stage { background: var(--stage-grad); border-color: #c9d6e6; }
:root[data-design="light"] .judge { box-shadow: 0 2px 8px rgba(19,42,74,.12); }
:root[data-design="light"] .north::before, :root[data-design="light"] .scalebar { text-shadow: none; }
:root[data-design="light"] .stage-title { text-shadow: none; }
:root[data-design="light"] .tag.high { font-weight: 600; }
:root[data-design="light"] .site-stat { border-left-color: #1660e8; }
