        /* ── Light Mode ── */
        body.light-mode {
            --bg: #f2f5f2;
            --bg-card: rgba(0,0,0,.028);
            --bg-card-h: rgba(0,0,0,.05);
            --border: rgba(0,0,0,.10);
            --border-g: rgba(20,100,50,.28);
            --g1: #16a34a;
            --g2: #166534;
            --g3: #dcfce7;
            --g4: #14532d;
            --gm: rgba(22,163,74,.08);
            --text: #0d1710;
            --text2: rgba(13,23,16,.62);
            --text3: rgba(13,23,16,.42);
            --red: #dc2626;
            --red-bg: rgba(220,38,38,.09);
            --teal: #0891b2;
            --purple: #7c3aed;
            --amber: #b45309;
            --orange: #c2410c;
            background-image: none;
        }
        body.light-mode .sidebar { background: rgba(255,255,255,.82); backdrop-filter:blur(8px); }
        body.light-mode .topbar  { background: rgba(242,245,242,.94); }
        body.light-mode .modal   { background: #fff; }
        body.light-mode .modal-ov { background: rgba(0,0,0,.55); }
        body.light-mode .period-sel option,
        body.light-mode .fs option { background: #fff; color: #0d1710; }
        body.light-mode thead th { background: rgba(0,0,0,.035); }
        body.light-mode .proj-wrap thead th { background: #eaf0ea; }
        body.light-mode tbody tr:hover { background: rgba(0,0,0,.025); }
        body.light-mode .tmt-slider { background: rgba(0,0,0,.14); }
        body.light-mode .tmt-wrap  { background: rgba(0,0,0,.04); }
        body.light-mode .kpi-work  { color: rgba(13,23,16,.5); }
        body.light-mode .kpi-fml   { color: rgba(13,23,16,.3); }
        body.light-mode .kw-tog    { color: rgba(13,23,16,.3); }
        body.light-mode .kw-tog:hover { color: rgba(13,23,16,.7); }
        body.light-mode .kw-tog-all { background: rgba(0,0,0,.05); border-color: rgba(0,0,0,.1); }
        body.light-mode .kw-tog-all:hover { background: rgba(0,0,0,.11); }
        body.light-mode .inp:hover:not(:focus) { background: rgba(0,0,0,.03); border-color: rgba(0,0,0,.1); }
        body.light-mode .inp:focus { background: rgba(22,163,74,.06); }
        body.light-mode .fi,
        body.light-mode .fs { background: rgba(0,0,0,.04); }
        body.light-mode .sat-bar { background: rgba(0,0,0,.09); }
        body.light-mode .ftabs,
        body.light-mode .cd-tab-bar { background: rgba(0,0,0,.04); }
        body.light-mode .ftab:hover,
        body.light-mode .cd-tab:hover { background: rgba(0,0,0,.05); }
        body.light-mode .kpi-delta.nul { background: rgba(0,0,0,.05); }
        body.light-mode .status-badge.unknown { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.08); }
        body.light-mode .di-calc-row { border-bottom-color: rgba(0,0,0,.05); }
        body.light-mode .referral-inp { background: rgba(0,0,0,.04); }
        /* Theme toggle button */
        .theme-btn {
            display:inline-flex;align-items:center;gap:5px;
            background:rgba(255,255,255,.06);border:1px solid var(--border);
            border-radius:100px;padding:4px 13px;cursor:pointer;
            font-size:18px;color:var(--text3);font-weight:600;
            letter-spacing:.04em;font-family:inherit;
            transition:background .15s,color .15s;
        }
        .theme-btn:hover { background:rgba(255,255,255,.12); color:var(--text); }
        body.light-mode .theme-btn { background:rgba(0,0,0,.05); border-color:rgba(0,0,0,.1); }
        body.light-mode .theme-btn:hover { background:rgba(0,0,0,.11); color:var(--text); }

        /* ── Test Mode Theme Override ── */
        body.test-mode{
            --g1:#fb923c;
            --g2:#fdba74;
            --g3:#431a07;
            --g4:#9a3412;
            --gm:rgba(154,52,18,.2);
            --border-g:rgba(251,146,60,.4);
            background-image:
                radial-gradient(ellipse 70% 40% at 50% -5%,rgba(60,25,5,.4) 0%,transparent 55%),
                radial-gradient(ellipse 50% 30% at 85% 90%,rgba(45,18,5,.2) 0%,transparent 55%);
        }
        body.test-mode .modal{background:#120800}
        body.test-mode .fs option,body.test-mode .period-sel option{background:#120800}
        body.test-mode .badge-live{background:rgba(251,146,60,.15);border-color:rgba(251,146,60,.4);color:#fb923c}
        body.test-mode .dot{background:#fb923c;box-shadow:0 0 6px #fb923c}
        body.test-mode .tmt-label{color:#fb923c}
        body.test-mode .tmt-wrap{border-color:rgba(251,146,60,.35)}
