:root[data-theme="light"]{color-scheme:light;--bg:#edf2f8;--card:#fff;--card2:#f6f8fc;--text:#0b1730;--muted:#475569;--line:#cbd5e1;--blue:#1d56c4;--blue2:#17449b;--green:#087a4b;--success:#087a4b;--warning:#b85d00;--danger:#c93445;--gray:#64748b;--shadow:0 8px 24px rgba(15,35,65,.1);--docs-surface:#fff;--docs-surface-2:#f4f7fb;--docs-text:#0b1730;--docs-muted:#475569;--docs-border:#cbd5e1;--docs-accent:#1d56c4;--docs-accent-soft:#dfe9ff}
:root[data-theme="dark"]{color-scheme:dark;--bg:#050d18;--card:#0d1b2c;--card2:#14263c;--text:#f8fafc;--muted:#c1ccda;--line:#3a4d65;--blue:#82b2ff;--blue2:#4d8bea;--green:#5bd6a0;--success:#5bd6a0;--warning:#ffc267;--danger:#ff929e;--gray:#a3b1c2;--shadow:0 12px 30px rgba(0,3,10,.38);--docs-surface:#0d1b2c;--docs-surface-2:#14263c;--docs-text:#f8fafc;--docs-muted:#c1ccda;--docs-border:#3a4d65;--docs-accent:#82b2ff;--docs-accent-soft:#19375e}
:root[data-theme] html,:root[data-theme] body,:root[data-theme] .dashboard-page,:root[data-theme] .main,:root[data-theme] .app{background:var(--bg)!important;color:var(--docs-text)!important}
:root[data-theme] .topbar,:root[data-theme] .top{background:linear-gradient(135deg,#123b82 0%,#1f61c7 55%,#174994 100%)!important;color:#f7faff!important;border-color:transparent!important}
:root[data-theme="dark"] .topbar,:root[data-theme="dark"] .top{background:linear-gradient(135deg,#0b2857 0%,#174b96 55%,#102f66 100%)!important}
:root[data-theme] .hero-grid,:root[data-theme] .card,:root[data-theme] .area-panel,:root[data-theme] .task-card,:root[data-theme] .team-row,:root[data-theme] .stat,:root[data-theme] .day,:root[data-theme] .cell,:root[data-theme] .detail,:root[data-theme] .shift-row,:root[data-theme] .person-card,:root[data-theme] .person,:root[data-theme] .toolbar,:root[data-theme] .device-card,:root[data-theme] .form-card,:root[data-theme] .panel,:root[data-theme] .content-card,:root[data-theme] .admin-form,:root[data-theme] .admin-user,:root[data-theme] .profile-card,:root[data-theme] .review-card{background:var(--docs-surface)!important;color:var(--docs-text)!important;border-color:var(--docs-border)!important;box-shadow:var(--shadow)}
:root[data-theme] .dayHead,:root[data-theme] .identity-item,:root[data-theme] .track,:root[data-theme] input,:root[data-theme] select,:root[data-theme] textarea,:root[data-theme] .search,:root[data-theme] .btn,:root[data-theme] .member-pill,:root[data-theme] .account-menu,:root[data-theme] .task-footer,:root[data-theme] .check-row,:root[data-theme] .admin-toolbar{background:var(--docs-surface-2)!important;color:var(--docs-text)!important;border-color:var(--docs-border)!important}
:root[data-theme] input::placeholder,:root[data-theme] textarea::placeholder{color:var(--docs-muted)!important;opacity:.82}
:root[data-theme] .bottom,:root[data-theme] .bottom-nav{background:var(--docs-surface)!important;border-color:var(--docs-border)!important;box-shadow:0 10px 30px rgba(12,30,55,.16)!important}
:root[data-theme] .tab,:root[data-theme] .nav-btn,:root[data-theme] .task-name,:root[data-theme] .card-title,:root[data-theme] .summary-label,:root[data-theme] .summary-num,:root[data-theme] .metric-value,:root[data-theme] .shift-time,:root[data-theme] .month-title,:root[data-theme] label{color:var(--docs-text)!important}
:root[data-theme] .card-sub,:root[data-theme] .team-time,:root[data-theme] .person-role,:root[data-theme] .person-div,:root[data-theme] small{color:var(--docs-muted)!important}
:root[data-theme] .tab.active,:root[data-theme] .nav-btn.active,:root[data-theme] a{color:var(--docs-accent)}
:root[data-theme] .tab.active:after,:root[data-theme] .nav-btn.active:after{background:var(--docs-accent)!important}
:root[data-theme] .toggle-btn,:root[data-theme] .team-day-arrow,:root[data-theme] .admin-edit,:root[data-theme] .review-open{background:var(--docs-accent-soft)!important;color:var(--docs-accent)!important}
:root[data-theme="dark"] .status-badge{background:#17283d!important;color:#dce7f6!important}
:root[data-theme="dark"] .task-footer.open{background:#142338!important;color:#aebcd0!important}
:root[data-theme="dark"] .task-footer.done{background:#103126!important;color:#65d9a2!important}
:root[data-theme="dark"] .task-footer.other{background:#122d50!important;color:#80b3ff!important}
:root[data-theme="dark"] .account-menu .menu-logout{color:#ff8e9b!important}:root[data-theme="light"] .account-menu .menu-logout{color:#c93f50!important}
:root[data-theme] .state-done,:root[data-theme] .metric-note{color:var(--success)!important}:root[data-theme] .state-progress{color:var(--warning)!important}
:root[data-theme] .progress-bar{background:var(--docs-border)!important}:root[data-theme] .progress-fill{background:linear-gradient(90deg,#168455,#3bbf83)!important}
.theme-selector{padding:9px 10px 8px;border-top:1px solid var(--docs-border)}.theme-selector-label{margin-bottom:7px;color:var(--docs-muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.5px}.theme-selector-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}.account-menu .theme-choice{justify-content:center;padding:9px 7px;border:1px solid var(--docs-border);font-size:12px;background:var(--docs-surface-2)!important;color:var(--docs-text)!important}.account-menu .theme-choice.active{background:var(--docs-accent)!important;border-color:var(--docs-accent)!important;color:#fff!important}

/* Kontras teks: menimpa warna lama yang dikunci per komponen. */
:root[data-theme] .hero-title,:root[data-theme] .task-name,:root[data-theme] .check-title,:root[data-theme] .check-state,:root[data-theme] .area-column-title,:root[data-theme] .dayTitle b,:root[data-theme] .date b,:root[data-theme] .daynum b,:root[data-theme] .person-name,:root[data-theme] .identity-item b,:root[data-theme] .shift-time,:root[data-theme] .detail-head b,:root[data-theme] .team-day-label,:root[data-theme] .admin-user-name,:root[data-theme] .profile-section{color:var(--docs-text)!important}
:root[data-theme] .check-by,:root[data-theme] .notice,:root[data-theme] .empty,:root[data-theme] .dayTitle small,:root[data-theme] .date span,:root[data-theme] .daynum span,:root[data-theme] .shift-note,:root[data-theme] .identity-item small,:root[data-theme] .review-meta,:root[data-theme] .admin-user-meta,:root[data-theme] .profile-note,:root[data-theme] .loader-sub,:root[data-theme] .calendar-loader-label{color:var(--docs-muted)!important}
:root[data-theme] .summary-box:after,:root[data-theme] .area-note,:root[data-theme] .count{color:var(--docs-accent)!important}
:root[data-theme="dark"] .status-open,:root[data-theme="dark"] .state-open,:root[data-theme="dark"] .state-locked{color:#d6e0ec!important}
:root[data-theme="light"] .status-open,:root[data-theme="light"] .state-open,:root[data-theme="light"] .state-locked{color:#263750!important}
:root[data-theme="dark"] option{background:#14263c;color:#f8fafc}
:root[data-theme] button:focus-visible,:root[data-theme] input:focus-visible,:root[data-theme] select:focus-visible,:root[data-theme] textarea:focus-visible{outline:3px solid var(--docs-accent)!important;outline-offset:2px}

/* Multi-area: bagian atas benar-benar gelap pada dark mode. */
:root[data-theme="dark"] .main-header{background:#07111f!important;border-bottom:1px solid #3a4d65!important;box-shadow:0 4px 14px rgba(0,0,0,.42)!important}
:root[data-theme="dark"] .summary,:root[data-theme="dark"] .area-bar-wrap,:root[data-theme="dark"] .workspace,:root[data-theme="dark"] .area-pane,:root[data-theme="dark"] .area-frame,:root[data-theme="dark"] .area-loading,:root[data-theme="dark"] .area-error,:root[data-theme="dark"] .empty-state{background:#081321!important;color:#f8fafc!important;border-color:#3a4d65!important}
:root[data-theme="dark"] .summary-item{color:#c1ccda!important}:root[data-theme="dark"] .summary-item b,:root[data-theme="dark"] .area-label-row{color:#f8fafc!important}
:root[data-theme="dark"] .area-tab{background:#14263c!important;color:#f8fafc!important;border:1px solid #536b87!important;box-shadow:none!important}
:root[data-theme="dark"] .area-tab.active{background:#1e5db8!important;color:#fff!important;border-color:#82b2ff!important;box-shadow:0 0 0 1px rgba(130,178,255,.32)!important}

/* Form checklist: batas kartu dan bidang input terlihat tegas. */
:root[data-theme] .device-card{border:2px solid var(--docs-border)!important;box-shadow:0 5px 16px rgba(0,0,0,.14)!important}
:root[data-theme] .device-header{border-bottom:1px solid var(--docs-border)!important}
:root[data-theme] .info-card{background:var(--docs-surface)!important;color:var(--docs-text)!important;border:2px solid var(--docs-border)!important;box-shadow:0 5px 16px rgba(0,0,0,.12)!important}
:root[data-theme] .input-group input,:root[data-theme] .input-group select,:root[data-theme] textarea{border:2px solid var(--docs-border)!important;background:var(--docs-surface-2)!important;color:var(--docs-text)!important;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)!important}
:root[data-theme] .input-group input:focus,:root[data-theme] .input-group select:focus,:root[data-theme] textarea:focus{border-color:var(--docs-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--docs-accent) 32%,transparent)!important}
:root[data-theme="dark"] .device-card{border-color:#496481!important;background:#0d1b2c!important}
:root[data-theme="dark"] .device-header{background:#1a2c40!important;border-color:#496481!important}
:root[data-theme="dark"] .input-group input,:root[data-theme="dark"] .input-group select,:root[data-theme="dark"] textarea{border-color:#617d9d!important;background:#13263c!important}
:root[data-theme="light"] .device-card,:root[data-theme="light"] .info-card{border-color:#a7b5c7!important}
:root[data-theme="light"] .input-group input,:root[data-theme="light"] .input-group select,:root[data-theme="light"] textarea{border-color:#94a3b8!important}
