:root{--canvas:#f7f9fc;--panel:#fff;--ink:#203247;--subtle:#60768b;--line:#dfe7ee;--soft:#edf2f8;--accent:#69aa42}
.skip-link{position:fixed;top:-100px;left:15px;padding:14px;background:var(--panel);color:var(--ink);z-index:20;border:2px solid var(--accent);border-radius:10px}.skip-link:focus{top:15px}
.theme-toggle{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);font-size:24px;line-height:1;cursor:pointer}
.top{flex-wrap:wrap}.pills{align-items:center}.appearance-controls{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.appearance-controls select,.module-tools select,.module-tools input{min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--ink);font:inherit;max-width:100%}.appearance-controls select{font-size:15px}.continue-card{display:flex;gap:24px;justify-content:space-between;align-items:center;padding:25px;margin:24px 0;border:1px solid #c6dbb7;border-radius:18px;background:#eef6e7}.continue-card h2{margin:7px 0;font-size:21px}.continue-card p{margin:0}.continue-actions{display:flex;flex-shrink:0;flex-direction:column;gap:12px}.continue-actions .btn{min-height:48px}.module-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:25px 0 10px}.module-tools label{flex:1 1 230px}.module-tools input{width:100%;font-size:16px}.module-tools select{font-size:14px}.module-tools .btn{min-height:48px;font-size:11px}.module-status{font-size:11px;line-height:1.5;background:var(--soft);border-radius:8px;padding:7px 9px;max-width:100px;text-align:center;color:var(--subtle)}.module-status.complete{background:#e9f5df;color:#44762c}.course-module{scroll-margin-top:22px}.course-module[hidden]{display:none}.course-module summary:focus-visible{outline-offset:1px;border-radius:16px}.saving-note{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--subtle);margin:12px 0}.saving-dot{width:7px;height:7px;border-radius:50%;background:#7ca65d}.course-module[open]>summary{border-bottom:1px solid var(--line);margin-bottom:20px}.note:focus,.numeric:focus,.course-form input:focus,.module-tools input:focus,.rubric-row select:focus{outline:2px solid #86ad69;outline-offset:2px}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 0 #4c872d}.lesson-top{align-items:center}
[data-theme=dark]{--canvas:#111a23;--panel:#192630;--ink:#e4edf3;--subtle:#afc1cf;--line:#334651;--soft:#22343f;--accent:#92c86d;color:var(--ink);background:var(--canvas)}
[data-theme=dark] body,[data-theme=dark] .workspace,[data-theme=dark] .lesson,[data-theme=dark] .lesson-top,[data-theme=dark] .bottom{background:var(--canvas);color:var(--ink)}
[data-theme=dark] aside,[data-theme=dark] .box,[data-theme=dark] .course-module,[data-theme=dark] .course-metrics,[data-theme=dark] .final-project,[data-theme=dark] .order-row,[data-theme=dark] .option{background:var(--panel);border-color:var(--line);color:var(--ink)}
[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] .course-module summary strong,[data-theme=dark] .course-metrics b{color:var(--ink)}
[data-theme=dark] p,[data-theme=dark] .tiny,[data-theme=dark] .intro,[data-theme=dark] .side-note,[data-theme=dark] .node-sub,[data-theme=dark] .module-content li,[data-theme=dark] .course-form label,[data-theme=dark] .field-label,[data-theme=dark] .final-check,[data-theme=dark] .course-module summary small,[data-theme=dark] .course-metrics span,[data-theme=dark] .top strong{color:var(--subtle)}
[data-theme=dark] .top,[data-theme=dark] aside,[data-theme=dark] .bottom,[data-theme=dark] .lesson-top,[data-theme=dark] .history,[data-theme=dark] .rubric-row,[data-theme=dark] .course-metrics>div{border-color:var(--line)}
[data-theme=dark] input:not([type=checkbox]),[data-theme=dark] textarea,[data-theme=dark] select{background:#101d27;color:var(--ink);border-color:#405561}
[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#90a4b3;opacity:1}
[data-theme=dark] .btn.secondary{background:var(--panel);color:#c4d8e5;border-color:var(--line);box-shadow:0 3px 0 #0b131a}
[data-theme=dark] .btn{background:#8ac35f;color:#11210c;box-shadow:0 4px 0 #52793a}
[data-theme=dark] .btn.secondary:active{box-shadow:0 1px 0 #0b131a}
[data-theme=dark] .option{box-shadow:0 3px 0 #0b141c}
[data-theme=dark] .option.selected{background:#263c54;border-color:#7c9fd3;box-shadow:0 3px 0 #4c6689;color:#e1edff}
[data-theme=dark] .key{border-color:#53707f;color:#bdcfdb}
[data-theme=dark] .scenario,[data-theme=dark] .badge,[data-theme=dark] .order-row button,[data-theme=dark] .dot{background:var(--soft);color:#c0d3e1;border-color:#5a788d}
[data-theme=dark] .track,[data-theme=dark] .road:before{background:#2b3d48}
[data-theme=dark] .track span{background:#92c86d}
[data-theme=dark] .menu button{color:#b3c5d3}
[data-theme=dark] .menu button.on{background:#293d29;color:#b6de96;border-color:#4d693b}
[data-theme=dark] .outcome,[data-theme=dark] .criteria,[data-theme=dark] .continue-card{background:#23392b;border-color:#48633e}
[data-theme=dark] .outcome p,[data-theme=dark] .outcome b,[data-theme=dark] .continue-card .intro{color:#c1dfa8}
[data-theme=dark] .feedback{background:#223a2a;border-color:#4a7350;color:#d3e9c9}
[data-theme=dark] .feedback p{color:#c3dfba}
[data-theme=dark] .feedback.wrong{background:#422b26;border-color:#855447}
[data-theme=dark] .feedback.wrong p{color:#f0c4ae}
[data-theme=dark] .feedback.wrong h2{color:#f4cbbb}
[data-theme=dark] .chapter{background:#375d32;box-shadow:0 5px 0 #203f24}
[data-theme=dark] .chapter p,[data-theme=dark] .chapter .intro{color:#d2e8bf}
[data-theme=dark] .node.lock{background:#344651;color:#a9bbc7;box-shadow:0 7px 0 #24353e}
[data-theme=dark] .node.current{outline-color:#2b452d}
[data-theme=dark] .node-label{color:#dbe7ee}
[data-theme=dark] .mascot,[data-theme=dark] .module-index{background:#2c452f;color:#c1e59c}
[data-theme=dark] .module-status.complete,[data-theme=dark] .dot.yes{background:#34512e;color:#cfedb2}
[data-theme=dark] .course-hero{background:#193c36;border:1px solid #355b4c}
[data-theme=dark] .course-hero p{color:#c2d8ce}
[data-theme=dark] .course-hero .intro{color:#b6d991}
[data-theme=dark] .flame{color:#ffb773}[data-theme=dark] .xp{color:#e8c77b}[data-theme=dark] .level{color:#a8b8f2}
[data-theme=dark] .summary-stats strong{color:#a5d885}
[data-theme=dark] .import input::file-selector-button{background:#253b49;color:#d6e4ef;border-color:#486170}
[data-theme=dark] .toast{background:#d9e7f0;color:#173145}
@media(max-width:760px){.top{gap:10px}.top strong{font-size:10px}.pills{gap:9px}.theme-toggle{width:40px;height:40px;font-size:23px}.continue-card{padding:20px 17px;flex-direction:column;align-items:stretch;gap:18px}.continue-card h2{font-size:20px}.continue-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.continue-actions .btn{font-size:11px;padding:13px 9px}.module-tools{gap:10px}.module-tools label{flex-basis:100%}.module-tools select{flex:1;min-width:0;font-size:14px}.module-tools .btn{padding:12px;font-size:10px}.module-status{max-width:70px;font-size:9px;padding:6px}.course-module>summary{gap:9px}.course-module summary strong{font-size:14px}.course-module{scroll-margin-top:15px}.lesson-top .theme-toggle{flex-shrink:0}.appearance-controls{align-items:stretch}.appearance-controls select{width:100%;font-size:16px}}
@media(max-width:390px){.top strong{font-size:0}.pills{gap:8px;font-size:11px}.theme-toggle{width:38px;height:40px}.continue-actions{grid-template-columns:1fr}.course-module>summary{gap:8px}.module-status{max-width:58px;font-size:9px}.module-index{width:31px}.lesson-top{gap:8px}}
