:root{color-scheme:light}
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;min-height:34px;border:1px solid #536c65;border-radius:8px;padding:6px 10px;background:#24433b;color:#e3eee9;font-size:.75rem;font-weight:600}
.theme-toggle:hover{background:#315249;border-color:#8ba99e}
.theme-toggle:focus-visible{outline:3px solid #83c8b9;outline-offset:3px}
:root[data-theme="dark"]{color-scheme:dark;background:#11191e;color:#d8e4e2;--accent:#80cbb7;--muted:#9bafad;--night-panel:#1a252c;--night-inset:#223038;--night-border:#35474e;--night-text:#d8e4e2;--night-muted:#9bafad;--night-green:#a4d7c5}
[data-theme="dark"] body{background:#11191e;color:var(--night-text)}
[data-theme="dark"] .topbar{background:#11191e;border-bottom:1px solid #2b3b42}
[data-theme="dark"] .theme-toggle{background:#25373c;border-color:#456066;color:#c9dfd9}
[data-theme="dark"] .theme-toggle:hover{background:#30484c}
[data-theme="dark"] :is(.library,.launch-dock,.case-card,.case-card.selected,.practice-stage,.formula-details,.previous-case-card,.completion-state,.trainer-empty,.case-preview){background:var(--night-panel);border-color:var(--night-border);color:var(--night-text);box-shadow:none}
[data-theme="dark"] .case-card.selected{border-color:#4c8176}
[data-theme="dark"] .case-card.current{border-color:#80cbb7}
[data-theme="dark"] .practice-timing{background:#18232a;border-color:var(--night-border)}
[data-theme="dark"] :is(.setup-box,.formula-panel>div,.previous-case-figure,.preview-setup,.preview-algorithms>div,.preview-dialog-heading button){background:var(--night-inset);border-color:var(--night-border)}
[data-theme="dark"] :is(.section-subtitle,.side-note,.page-heading,.card-bottom span:last-child,.case-progress,.setup-label,.setup-label span:last-child,.timing-eyebrow,.timer-instruction,.formula-hint,.keyboard-tip,.practice-stats span,.previous-case-kicker,.previous-case-info>p:not(.last-solve-time),.completion-state p,.trainer-empty p,.case-preview span){color:var(--night-muted)}
[data-theme="dark"] :is(.eyebrow,.selection-intro .eyebrow,.case-ident,.setup-box .algorithm-text,.formula-panel p,.formula-details summary,.timer,.practice-stats strong,.previous-case-info strong,.trainer-empty h3,.case-preview p,.preview-dialog-heading h2){color:var(--night-text)}
[data-theme="dark"] :is(.page-button,.group-button,.group-actions button,.outline-button,.selection-mark),[data-theme="dark"] .group-actions #onlyGroup{background:var(--night-inset);border-color:var(--night-border);color:#c7d9d5}
[data-theme="dark"] .case-card.selected .selection-mark{background:#376f62;border-color:#5e9d87;color:#e4f0e9}
[data-theme="dark"] :is(.page-button,.group-button,.group-actions button,.outline-button):hover{background:#2b4047;border-color:#5c8e80;color:#e0eee9}
[data-theme="dark"] :is(.page-button.active,.group-button.active){background:#28564e;border-color:#548b7c;color:#e4f0ec}
[data-theme="dark"] .page-button .mini-count{color:#a3b8b3}
[data-theme="dark"] .count-pill{background:#25483f;color:#b2dcca}
[data-theme="dark"] .selection-step{background:#1f3036;border-color:var(--night-border);color:#b3c7c1}
[data-theme="dark"] .side-actions{border-color:var(--night-border)}
[data-theme="dark"] :is(.text-button,.back-library,.case-view-button,.practice-utilities button,.practice-timing #currentButton,.last-solve-time,.previous-case-info .last-solve-time){color:var(--night-green)}
[data-theme="dark"] .case-view-button{border-color:var(--night-border)}
[data-theme="dark"] .case-view-button:hover{background:#24393e}
[data-theme="dark"] .launch-dock .mode-button{background:#223a3e;border-color:#3a5a56;color:#c0dcd1}
[data-theme="dark"] .launch-dock .mode-button.active{background:#28564e;border-color:#548b7c;color:#e4f0ec}
[data-theme="dark"] .launch-dock .mode-button:hover:not(:disabled){background:#346a5d;border-color:#74ac98;color:#edf5f1}
[data-theme="dark"] :is(.timer-button,.case-preview #previewSelect,.completion-state .next-button){background:#28594e;border-color:#518978;color:#e7f0e9}
[data-theme="dark"] .timer-button:hover:not(:disabled){background:#326c5e}
[data-theme="dark"] .timer-button.running{background:#804536;border-color:#b66c52;color:#ffede5}
[data-theme="dark"] .practice-navigation #previousButton{background:var(--night-inset);border-color:var(--night-border);color:#bfd2ca}
[data-theme="dark"] .practice-navigation #nextButton{background:#284b40;border-color:#466e5c;color:#d1e5d8}
[data-theme="dark"] .practice-navigation #nextButton:hover{background:#345d4d}
[data-theme="dark"] :is(.favorites-tools button,.favorite-button){background:#302d23;border-color:#736039;color:#d6bd7c;box-shadow:none}
[data-theme="dark"] :is(.favorites-tools button,.favorite-button):hover:not(:disabled),[data-theme="dark"] .favorite-button[aria-pressed="true"]{background:#453820;border-color:#b18b40;color:#e9c875}
[data-theme="dark"] .formula-kicker.primary{color:#93d2bd}
[data-theme="dark"] .formula-kicker.secondary{color:#a4bddf}
[data-theme="dark"] .practice-utilities #clearPracticeButton{color:#d8aaa0}
[data-theme="dark"] .keyboard-tip kbd{background:var(--night-inset);border-color:#4b6065;color:#bdd0c7}
[data-theme="dark"] .completion-icon{background:#29493a;color:#a9d7b9}
[data-theme="dark"] .case-preview::backdrop{background:#050b10b8}
@media(max-width:680px){.theme-toggle{min-height:32px;font-size:.66rem;padding:6px 8px}}
@media(max-width:420px){.top-meta .home-link{display:inline;font-size:0}.top-meta .home-link::before{content:'← 首页';font-size:.65rem}}
