@font-face{font-family:Barlow;src:url('assets/fonts/rubik-var.woff2') format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:DM;src:url('assets/fonts/atkinson-400.woff2') format('woff2');font-weight:100 600;font-display:swap}
@font-face{font-family:DM;src:url('assets/fonts/atkinson-700.woff2') format('woff2');font-weight:601 1000;font-display:swap}
@font-face{font-family:Plex;src:url('assets/fonts/atkinson-400.woff2') format('woff2');font-weight:100 1000;font-display:swap}
:root{color-scheme:dark;--bg:#fbfbfb;--panel:#f9f9f9;--panel2:#f7f7f7;--ink:#23231d;--muted:#48514e;--line:#dfe0e0;--acid:#7a6000;--pink:#990025;--cyan:#11887d;--amber:#995c00;--sidebar:218px;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 DM,Arial,sans-serif}button,input,select{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;color:inherit}button{border:0}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin:0}h1,h2,h3,.display{font-family:Barlow,Impact,'Arial Narrow',sans-serif;font-weight:800;line-height:.98;letter-spacing:-.025em}h1{font-size:64px}h2{font-size:36px}h3{font-size:27px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}::selection{background:var(--acid);color:var(--on-accent)}[hidden]{display:none!important}.mono{font-family:Plex,monospace;font-size:10px;letter-spacing:.08em}.muted{color:var(--muted)}.acid{color:var(--acid-text)}.pink{color:var(--pink)}.small{font-size:12px}.skip-link{position:fixed;top:-100px;left:10px;z-index:999;background:var(--acid);color:var(--on-accent);padding:12px}.skip-link:focus{top:10px}
.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 30px;gap:22px;position:sticky;top:0;z-index:10;background:rgba(251,251,251,0.961);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:10px;font:800 28px Barlow;letter-spacing:.015em;white-space:nowrap}.brand-mark{color:var(--acid-text);font:800 39px Barlow;letter-spacing:-7px;margin-right:8px;transform:skew(-12deg)}.brand-dot{font:12px DM;vertical-align:top;display:inline-block;margin:3px 0 0 3px}.top-strap{color:var(--muted);font-size:10px}.top-strap span{padding:0 13px;color:var(--line)}.top-actions{display:flex;align-items:center;gap:10px}.mode-toggle{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--panel);padding:9px 12px;border-radius:6px;font:10px Plex;letter-spacing:.025em}.mode-toggle b{font-weight:400;color:var(--acid-text);margin-left:5px}.mode-led{width:6px;height:6px;background:var(--acid);border-radius:50%;box-shadow:0 0 10px rgba(255,214,10,0.063)}.mode-toggle[aria-pressed=false] b{color:var(--muted)}.mode-toggle[aria-pressed=false] .mode-led{background:var(--muted);box-shadow:none}.icon-btn{display:grid;place-items:center;background:var(--panel);width:38px;height:38px;border:1px solid var(--line);border-radius:6px}.icon{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.app-layout{display:flex;min-height:calc(100vh - 78px)}.sidebar{width:var(--sidebar);flex:none;border-right:1px solid var(--line);padding:30px 18px 22px;display:flex;flex-direction:column;position:sticky;top:78px;height:calc(100vh - 78px)}.sidebar-label{font-size:8px;color:var(--muted);padding:0 13px;margin-bottom:17px}.nav-item{display:flex;align-items:center;gap:13px;font-weight:700;font-size:13px;padding:13px;border-radius:7px;margin:4px 0;color:var(--muted);transition:background .2s,color .2s}.nav-item:hover{background:var(--panel);color:var(--ink)}.nav-item.active{background:var(--acid);color:#111b0e}.nav-item.active .nav-count{background:#e6be1f;color:#152412}.nav-count{margin-left:auto;font:10px Plex;background:var(--panel2);padding:2px 5px;border-radius:4px;color:var(--muted)}.sidebar-bottom{margin-top:auto}.small-license{border:1px solid var(--line);border-radius:9px;position:relative;padding:16px;background:linear-gradient(135deg,#f5f6f5,#f8f8f8);overflow:hidden}.small-license .mono{font-size:8px;color:var(--cyan)}.small-license strong{display:block;font:800 24px/1.05 Barlow;margin-top:13px;position:relative;z-index:1}.license-symbol{position:absolute;right:10px;bottom:-25px;font:800 110px Barlow;color:rgba(74,99,80,0.314);transform:rotate(-10deg)}.source-link{padding:16px 4px 8px;background:none;font-size:10px;color:var(--muted);width:100%;text-align:left}.source-link span{float:right}.sidebar-note{font-size:9px;color:#48514d;line-height:1.6;padding:4px}.mobile-nav{display:none}#main{padding:32px 38px 42px;min-width:0;flex:1;max-width:1740px}#main:focus{outline:0}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px;gap:12px}.eyebrow{display:flex;gap:9px;align-items:center;font:10px Plex;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-bottom:10px}.eyebrow:before{content:'';display:block;width:5px;height:5px;background:var(--acid)}.page-head h1{font-size:42px}.page-head .mono{color:var(--muted)}.day-pill{border:1px solid var(--line);padding:6px 10px;border-radius:30px;font:10px Plex;white-space:nowrap;color:var(--muted)}
.hero{position:relative;min-height:382px;border:1px solid #d0d1d0;border-radius:var(--radius);overflow:hidden;background:#f6f7f7;isolation:isolate}.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(251,251,251,0.99),rgba(251,251,251,0.84) 35%,rgba(251,251,251,0.15) 69%,rgba(251,251,251,0.05)),linear-gradient(0deg,rgba(248,249,249,0.667),transparent 40%)}.hero-content{padding:32px 34px;max-width:525px}.hero-label{display:inline-flex;align-items:center;gap:9px;padding:5px 8px;font:9px Plex;background:rgba(255,214,10,0.071);border:1px solid rgba(255,214,10,0.188);border-radius:3px;color:var(--acid-text);margin-bottom:18px}.hero h2{font-size:76px;line-height:.92;letter-spacing:-.02em;max-width:440px}.hero h2 span{color:var(--acid-text);display:block}.hero-description{font-size:13px;max-width:340px;color:#303332;margin-top:17px;line-height:1.6}.hero-actions{margin-top:24px;display:flex;align-items:center;gap:18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:700;font-size:12px;padding:13px 20px;min-height:45px;border-radius:5px;transition:transform .15s,background .15s;border:1px solid transparent}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--acid);color:#17200f}.btn-primary:hover{background:#ffe98a;transform:translateY(-2px)}.btn-secondary{background:var(--panel2);border-color:var(--line);color:var(--ink)}.btn-secondary:hover{background:#f3f3f3}.btn-ghost{padding:9px 0;background:transparent;color:var(--ink);min-height:40px}.btn .icon{width:17px;height:17px}.btn:disabled{opacity:.4;cursor:default;transform:none}.hero-foot{font:8px Plex;color:#465353;margin-top:15px;letter-spacing:.02em}.hero-coordinate{position:absolute;right:18px;top:17px;font:9px Plex;color:#2e6b69;text-align:right;line-height:1.8}.scene-sticker{position:absolute;right:26px;bottom:28px;transform:rotate(6deg);padding:10px 18px;border:2px solid var(--pink);background:rgba(245,246,246,0.753);color:var(--pink);font:800 29px/.95 Barlow;letter-spacing:.01em}.scene-sticker .mono{display:block;font-size:7px;letter-spacing:.12em;margin-top:6px}.hero-scene-tag{position:absolute;bottom:14px;left:50%;font:8px Plex;color:#292d2c;background:rgba(249,250,250,0.733);padding:4px 7px;border-radius:3px}
.stat-strip{display:grid;grid-template-columns:1.1fr 1.1fr 1.1fr 1.2fr;margin-top:16px;border:1px solid var(--line);border-radius:9px;background:var(--panel);overflow:hidden}.stat{padding:16px 20px;border-right:1px solid var(--line);position:relative}.stat:last-child{border:0}.stat-label{font:8px Plex;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.stat-value{font:800 28px Barlow;margin-top:4px;display:flex;gap:6px;align-items:baseline}.stat-value small{font:10px DM;color:var(--muted)}.stat-icon{position:absolute;right:16px;bottom:18px;color:#465352}.stat:last-child .stat-value{font-size:19px;letter-spacing:0;padding-top:6px}.progress-line{height:3px;background:var(--line);margin-top:8px;border-radius:3px;overflow:hidden}.progress-line span{display:block;height:100%;background:var(--acid);border-radius:3px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin:28px 0 14px;gap:12px}.section-head h2{font-size:29px}.section-head .eyebrow{font-size:8px;margin-bottom:8px}.text-link{background:none;color:var(--acid-text);font:10px Plex;padding:5px 0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mission-card{display:block;position:relative;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden;text-align:left;transition:transform .22s,border-color .22s;min-height:210px}.mission-card:hover{transform:translateY(-4px);border-color:var(--cyan)}.mission-card:before{content:'';position:absolute;right:-8px;top:-18px;width:155px;height:155px;background:radial-gradient(circle,var(--card-color,#ffd60a) 0%,transparent 70%);opacity:.05;pointer-events:none}.card-top{display:flex;justify-content:space-between;align-items:center;font:8px Plex;letter-spacing:.08em;color:var(--muted)}.card-tag{border:1px solid var(--line);font:8px Plex;padding:4px 7px;border-radius:4px;color:var(--card-color,var(--acid-text));background:rgba(251,251,251,0.439)}.card-art{height:75px;display:flex;align-items:center;position:relative}.card-art .icon{height:53px;width:53px;color:var(--card-color,var(--acid-text));stroke-width:1.25}.card-art strong{font:800 72px Barlow;color:var(--card-color,var(--acid-text));line-height:1}.card-art .stop-sign{font:800 23px Barlow;background:#e95157;color:white;clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);height:58px;width:58px;display:grid;place-items:center;filter:drop-shadow(0 3px 10px #eb535340)}.card-art .dashed-path{position:absolute;width:120px;height:40px;border-top:2px dashed var(--line);right:0;top:37px;transform:skewY(-12deg)}.mission-card h3{font-size:27px;margin:3px 0 7px}.mission-card p{font-size:11px;color:var(--muted);max-width:210px}.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;font:8px Plex;color:var(--muted)}.card-arrow{font-size:18px;color:var(--card-color,var(--acid-text))}.route-strip{display:flex;gap:16px;align-items:center;border:1px solid var(--line);border-radius:10px;background:linear-gradient(90deg,#f5f5f5,var(--panel));padding:19px 22px;margin-top:17px}.route-strip .route-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid #c6c7c4;border-radius:50%;color:var(--acid-text);flex:none}.route-strip h3{font-size:23px}.route-strip p{font-size:11px;color:var(--muted);margin-top:4px}.route-strip .btn{margin-left:auto;white-space:nowrap}.fine-print{font-size:10px;color:var(--muted);border-top:1px solid var(--line);margin-top:28px;padding-top:15px;line-height:1.7}.fine-print a{text-decoration:underline;text-underline-offset:3px}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 20px}.chip{border:1px solid var(--line);padding:7px 12px;border-radius:5px;background:var(--panel);font-size:11px;color:var(--muted)}.chip.active{background:var(--acid);color:var(--on-accent);border-color:var(--acid)}
.screen-head{display:flex;gap:15px;align-items:center;margin-bottom:24px}.screen-head h1{font-size:42px}.back-btn{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--line);background:var(--panel);border-radius:50%;flex:none}.mission-info{margin-left:auto;text-align:right;font:9px Plex;color:var(--muted)}.step-track{display:flex;gap:5px;margin-bottom:18px}.step-track span{height:4px;background:var(--line);border-radius:3px;flex:1}.step-track .done{background:var(--acid)}.step-track .current{background:var(--cyan)}.question-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:22px;align-items:start}.scene-panel{position:sticky;top:105px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#f3f4f4;min-height:360px}.scene-panel canvas{width:100%;height:355px;display:block}.scene-panel .scene-caption{padding:13px 17px;font:9px Plex;color:var(--muted);background:var(--panel);border-top:1px solid var(--line);line-height:1.6}.scene-panel .scene-view-btn{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:7px;font:9px Plex;background:rgba(248,249,249,0.859);border:1px solid #bec0bf;border-radius:5px;padding:9px 11px}.scene-heading{position:absolute;top:16px;left:17px;font:9px Plex;color:#408514;max-width:60%;text-shadow:0 1px 6px rgba(0,0,0,0.25)}.question-panel .eyebrow{color:var(--cyan)}.question-panel h2{font-size:36px;line-height:1.04}.question-context{font-size:13px;line-height:1.7;color:#323534;margin-top:14px;padding:14px 16px;background:var(--panel);border-left:2px solid var(--cyan);border-radius:0 5px 5px 0}.answer-note{font:9px Plex;color:var(--muted);margin:19px 0 9px;line-height:1.7}.statement{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:7px;padding:12px 13px;margin-bottom:9px;background:var(--panel);min-height:66px}.statement-index{width:18px;flex:none;font:9px Plex;color:var(--muted)}.statement-text{font-size:12px;line-height:1.5;flex:1}.yes-no{display:flex;gap:4px;flex:none}.choice-btn{border:1px solid #d1d2d2;background:var(--bg);border-radius:4px;min-width:42px;height:36px;font:10px Plex;color:var(--muted);transition:background .12s}.choice-btn.selected{color:#152112;background:var(--acid);border-color:var(--acid)}.choice-btn[disabled]{cursor:default}.statement.correct{border-color:#c0c3c0}.statement.incorrect{border-color:#bb6371}.verdict-dot{color:var(--acid-text);font-size:17px;width:16px;text-align:center}.statement.incorrect .verdict-dot{color:var(--pink)}.question-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:17px}.question-actions .small{font:9px Plex;color:var(--muted)}.feedback{margin-top:18px;border:1px solid #c5c9c5;background:#f6f6f6;border-radius:8px;padding:19px;animation:enter .24s ease-out}.feedback.wrong{background:#f6f6f6;border-color:#c4c1c2}.feedback h3{font-size:29px;color:var(--acid-text)}.feedback.wrong h3{color:var(--pink)}.feedback p{font-size:12px;color:#282c28;line-height:1.7;margin:10px 0}.source-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.source-badges a{font:8px Plex;color:var(--cyan);padding:4px 6px;border:1px solid #c7c9c8;border-radius:3px;text-decoration:underline;text-underline-offset:2px}.gag{background:rgba(250,250,250,0.659);border-radius:5px;border:1px dashed rgba(187,189,183,0.4);margin-top:14px;padding:13px 15px;display:flex;gap:10px;align-items:center;transform:rotate(-.6deg)}.gag .stamp{font:800 16px Barlow;color:var(--acid-text);border:2px solid var(--acid);padding:4px 6px;line-height:1;white-space:nowrap;transform:rotate(-6deg)}.gag p{font:700 13px DM;margin:0;color:var(--ink)}.feedback.wrong .gag .stamp{border-color:var(--pink);color:var(--pink)}.recall-banner{padding:12px 15px;margin-bottom:17px;border:1px solid #cdd0d1;border-radius:7px;background:#f6f7f7;font-size:12px;color:var(--cyan)}.result-hero{text-align:center;background:radial-gradient(circle at 50% 20%,#f1f2f1,transparent 62%),var(--panel);padding:42px 24px;border:1px solid var(--line);border-radius:14px}.result-mark{display:inline-flex;width:86px;height:86px;justify-content:center;align-items:center;border:2px solid var(--acid);border-radius:50%;color:var(--acid-text);margin-bottom:20px;font:800 51px Barlow;transform:rotate(-9deg)}.result-hero h1{font-size:62px}.result-hero p{max-width:500px;margin:14px auto 0;color:var(--muted);font-size:13px}.result-stats{display:flex;justify-content:center;gap:38px;margin:25px 0}.result-stats strong{display:block;font:800 37px Barlow;color:var(--acid-text)}.result-stats span{font:9px Plex;color:var(--muted)}.result-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.result-list{margin-top:22px;display:grid;gap:10px}.result-row{display:flex;align-items:center;gap:13px;border:1px solid var(--line);background:var(--panel);border-radius:7px;padding:17px}.result-row h3{font-size:23px}.result-row p{font-size:11px;color:var(--muted);margin-top:6px}.result-row .btn{margin-left:auto}.result-indicator{width:35px;height:35px;display:grid;place-items:center;border-radius:50%;background:#f3f4f3;color:var(--acid-text);flex:none}.result-indicator.wrong{background:#f3f1f2;color:var(--pink)}
.search-box{position:relative;margin-bottom:21px}.search-box .icon{position:absolute;left:15px;top:14px;color:var(--muted)}.search-box input{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--ink);padding:13px 16px 13px 45px;font-size:13px}.chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.chapter-card{display:flex;gap:20px;align-items:center;border:1px solid var(--line);background:var(--panel);padding:23px;border-radius:10px;text-align:left;transition:border-color .2s,transform .2s;min-height:130px}.chapter-card:hover{border-color:var(--acid);transform:translateY(-2px)}.chapter-number{font:800 56px Barlow;color:var(--card-color,var(--acid-text));width:55px;flex:none}.chapter-card h3{font-size:27px}.chapter-card p{font-size:11px;color:var(--muted);margin:7px 0}.chapter-card .mono{font-size:8px;color:var(--card-color,var(--acid-text))}.chapter-card .card-arrow{margin-left:auto}.article-head{padding:30px 32px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(120deg,#f3f4f3,#f7f8f8);margin-bottom:22px}.article-head h1{font-size:55px;margin:14px 0}.article-head p{color:var(--muted);font-size:13px;max-width:670px}.article-section{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:23px 27px;margin-bottom:14px;scroll-margin-top:100px}.article-section .section-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;font:8px Plex;color:var(--muted)}.article-section h2{font-size:28px}.facts{padding:0;list-style:none;margin:15px 0}.facts li{position:relative;padding-left:21px;margin:12px 0;font-size:13px;line-height:1.75;color:#2b2e2c}.facts li:before{content:'↳';position:absolute;left:0;color:var(--acid-text)}.article-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.topic-status{font:8px Plex;color:var(--muted)}.empty-state{padding:35px;border:1px dashed var(--line);border-radius:10px;text-align:center}.empty-state h2{margin-bottom:12px}.empty-state p{color:var(--muted);font-size:13px}.empty-state .btn{margin-top:20px}.exam-intro{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:34px}.exam-art{position:relative;min-height:275px;background:repeating-linear-gradient(130deg,transparent,transparent 19px,rgba(255,255,255,0.016) 20px,rgba(255,255,255,0.016) 21px),radial-gradient(circle at 70% 40%,#f2f2f2,#f8f8f8);border-radius:9px;display:flex;align-items:center;justify-content:center;overflow:hidden}.exam-art .display{font-size:145px;color:var(--acid-text);transform:rotate(-7deg);line-height:.9}.exam-art .display small{display:block;font:10px Plex;color:var(--muted);letter-spacing:.05em;padding-top:10px}.exam-content h2{font-size:51px;margin:16px 0}.exam-content p{font-size:12px;line-height:1.7;color:var(--muted)}.exam-specs{display:flex;gap:20px;margin:25px 0}.exam-specs strong{display:block;font:800 27px Barlow}.exam-specs span{font:8px Plex;color:var(--muted)}.exam-timer{font:15px Plex;border:1px solid var(--line);background:var(--panel);padding:9px 12px;border-radius:5px}.exam-timer.urgent{color:var(--pink);border-color:var(--pink)}.exam-jump{display:flex;gap:5px;flex-wrap:wrap;margin-top:25px}.jump-btn{width:30px;height:30px;border:1px solid var(--line);border-radius:4px;background:var(--panel);font:9px Plex}.jump-btn.answered{background:#f3f4f3;color:var(--acid-text);border-color:#cbcdca}.jump-btn.current{outline:2px solid var(--cyan)}.progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.progress-card{border:1px solid var(--line);border-radius:9px;background:var(--panel);padding:22px}.progress-card h3{font-size:27px}.progress-card p{font-size:11px;color:var(--muted);margin:8px 0}.progress-card .progress-line{margin:16px 0 10px}.progress-card .mono{color:var(--muted);font-size:9px}.learning-note{border:1px solid var(--line);border-radius:9px;margin-bottom:20px;padding:20px 23px;background:#f6f6f6}.learning-note h2{font-size:28px;margin-bottom:9px}.learning-note p{font-size:12px;color:var(--muted);max-width:700px;line-height:1.7}.drive-shell{border:1px solid var(--line);border-radius:12px;overflow:hidden;height:680px}.drive-shell iframe{width:100%;height:100%;border:0}
dialog{background:var(--panel);color:var(--ink);border:1px solid #bfc1c0;border-radius:14px;max-width:640px;width:calc(100% - 32px);padding:0;max-height:85dvh}dialog::backdrop{background:rgba(253,253,253,0.788);backdrop-filter:blur(6px)}.modal-header{padding:24px 26px 17px;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);align-items:center}.modal-header h2{font-size:32px}.modal-body{padding:23px 26px}.modal-body p{font-size:12px;color:var(--muted);line-height:1.75;margin-bottom:16px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid var(--line)}.setting-row strong{font-size:13px}.setting-row p{font-size:11px;margin:5px 0 0;max-width:370px}.setting-row input{width:20px;height:20px;accent-color:var(--acid-text);cursor:pointer}.source-item{padding:14px 0;border-bottom:1px solid var(--line)}.source-item a{font-size:12px;color:var(--cyan);text-decoration:underline}.source-item .mono{font-size:8px;color:var(--muted);display:block;margin-top:6px}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,30px);background:var(--acid);color:#131b11;z-index:100;max-width:calc(100% - 32px);border-radius:7px;padding:12px 20px;font:700 12px DM;box-shadow:0 8px 40px rgba(0,0,0,0.084);opacity:0;pointer-events:none;transition:opacity .22s,transform .22s}.toast.visible{opacity:1;transform:translate(-50%,0)}.audio-btn{display:flex;align-items:center;gap:6px;background:transparent;color:var(--cyan);font:9px Plex;padding:8px 0}.receipt{margin-top:12px;padding:18px;font:11px/1.75 Plex;color:var(--ink);border:1px dashed #869977;background:#f9f9f9;border-radius:5px}.receipt-header{font-size:13px;text-align:center;margin-bottom:8px;letter-spacing:.15em}.receipt hr{border:0;border-top:1px dashed #839877}.receipt .line{display:flex;justify-content:space-between;gap:15px}.badge-wall{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.badge{border:1px solid var(--line);border-radius:7px;padding:14px 17px;background:var(--panel);font-size:11px;color:var(--muted)}.badge.unlocked{border-color:#c4c6c1;color:var(--acid-text);background:#f6f6f6}.badge .icon{display:block;margin:0 auto 9px;width:30px;height:30px}.search-results{display:grid;gap:9px}.search-result{padding:17px 20px;background:var(--panel);border:1px solid var(--line);border-radius:6px;text-align:left}.search-result strong{font:800 25px Barlow;display:block}.search-result span{font-size:10px;color:var(--muted)}.calm .scene-sticker,.calm .gag,.calm .receipt{display:none}.calm .hero h2 span{color:var(--cyan)}.no-motion *,.no-motion *:before,.no-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.webgl-fallback{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 40%,#eff0f1,transparent 60%),repeating-linear-gradient(125deg,#f6f7f7 0 60px,#f2f2f2 61px 63px);z-index:-2}body.exam-active .mode-toggle{opacity:.4;pointer-events:none}body.exam-active .question-panel .eyebrow{color:var(--muted)}
@keyframes enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1650px){#main{padding:36px 60px}.hero{min-height:430px}.hero-content{padding:40px}.hero h2{font-size:87px}}
@media(max-width:1200px){:root{--sidebar:194px}.top-strap{display:none}.topbar{padding:0 23px}#main{padding:28px 26px}.hero h2{font-size:66px}.hero-content{max-width:420px;padding:28px}.hero{min-height:369px}.stat{padding:15px}.question-layout{gap:17px}.statement{padding:10px}.statement-text{font-size:11px}.yes-no .choice-btn{min-width:37px}.card-grid{gap:11px}.mission-card{padding:17px}.scene-panel canvas{height:330px}}
@media(max-width:950px){:root{--sidebar:76px}.sidebar{padding:23px 11px}.sidebar-label,.sidebar-bottom,.nav-label,.nav-count{display:none}.nav-item{justify-content:center;padding:15px}.nav-item .icon{width:23px;height:23px}.hero h2{font-size:66px}.scene-sticker{font-size:25px;right:17px;bottom:31px}.hero-content{padding:26px}.question-layout{grid-template-columns:1fr}.scene-panel{position:relative;top:auto;min-height:270px}.scene-panel canvas{height:270px}.question-panel h2{font-size:34px}.statement-text{font-size:13px}.yes-no .choice-btn{min-width:50px}.chapter-card{padding:19px;gap:14px}.chapter-card h3{font-size:24px}.chapter-number{font-size:45px;width:42px}.exam-intro{padding:23px;gap:20px}.exam-content h2{font-size:41px}.exam-art .display{font-size:120px}}
@media(max-width:700px){.topbar{height:65px;padding:0 18px;gap:12px}.brand{font-size:25px;gap:6px}.brand-mark{font-size:33px;letter-spacing:-6px}.brand-dot{font-size:10px}.mode-toggle{padding:8px;font-size:8px;gap:6px}.mode-toggle b{margin-left:0}.icon-btn{width:33px;height:33px}.top-actions{gap:6px}.sidebar{display:none}#main{padding:23px 18px 103px}.app-layout{min-height:calc(100vh - 65px)}.page-head{margin-bottom:18px}.page-head h1{font-size:34px}.page-head .eyebrow{font-size:8px;margin-bottom:8px}.day-pill{font-size:8px;padding:5px 8px}.hero{min-height:494px;border-radius:11px}.hero:after{background:linear-gradient(0deg,rgba(250,250,251,0.933),rgba(250,250,251,0.451) 46%,rgba(250,250,251,0) 65%),linear-gradient(90deg,rgba(250,250,251,0.502),rgba(250,250,251,0))}.hero-content{padding:25px 23px;position:relative;top:146px;max-width:100%}.hero-label{font-size:8px;margin-bottom:14px}.hero h2{font-size:clamp(43px,12.8vw,53px);max-width:340px}.hero-description{font-size:12px;max-width:290px;margin-top:14px}.hero-actions{margin-top:18px;gap:16px}.hero-actions .btn{padding:12px 16px;font-size:11px}.hero-actions .btn-ghost{font-size:11px}.hero-foot{font-size:7px;margin-top:12px}.hero-coordinate{top:15px;right:15px;font-size:8px}.scene-sticker{top:30px;left:19px;right:auto;bottom:auto;font-size:22px;transform:rotate(-5deg);padding:8px 13px;background:rgba(248,248,248,0.851)}.scene-sticker .mono{font-size:6px}.hero-scene-tag{display:none}.stat-strip{grid-template-columns:1fr 1fr;margin-top:13px}.stat{padding:14px 15px}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.stat-label{font-size:7px}.stat-value{font-size:26px}.stat:last-child .stat-value{font-size:18px}.stat-icon{right:15px;bottom:16px}.stat-icon .icon{width:18px;height:18px}.section-head{margin:26px 0 13px}.section-head h2{font-size:28px}.section-head .text-link{font-size:8px}.card-grid{grid-template-columns:1fr}.mission-card{min-height:164px;padding:17px 20px}.card-art{position:absolute;right:26px;top:37px;height:70px;width:65px;justify-content:center}.card-art .dashed-path{display:none}.mission-card h3{font-size:28px;margin-top:21px;max-width:calc(100% - 77px)}.mission-card p{max-width:calc(100% - 75px)}.card-top{font-size:8px}.card-tag{margin-right:0}.card-bottom{margin-top:15px}.route-strip{padding:18px 17px;gap:12px;flex-wrap:wrap}.route-strip .route-icon{width:38px;height:38px}.route-strip h3{font-size:25px}.route-strip p{font-size:10px}.route-strip .btn{width:100%;margin-left:0;margin-top:4px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;padding:6px 8px calc(7px + env(safe-area-inset-bottom));background:rgba(250,250,250,0.969);backdrop-filter:blur(15px);border-top:1px solid var(--line);z-index:20;justify-content:space-around}.mobile-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 2px;font:8px DM;color:var(--muted);border-radius:6px}.mobile-nav a .icon{width:21px;height:21px}.mobile-nav a.active{color:var(--acid-text);background:rgba(255,214,10,0.047)}.screen-head{margin-bottom:20px;gap:11px}.screen-head h1{font-size:33px}.mission-info{font-size:8px}.back-btn{width:34px;height:34px}.question-layout{gap:20px}.scene-panel{min-height:246px}.scene-panel canvas{height:245px}.scene-heading{font-size:8px;top:14px}.scene-panel .scene-view-btn{font-size:8px;padding:8px}.scene-panel .scene-caption{font-size:8px;padding:11px 13px}.question-panel h2{font-size:32px}.question-context{font-size:12px;padding:12px 14px;margin-top:12px}.statement{padding:11px 9px;gap:6px}.statement-index{width:13px;font-size:8px}.statement-text{font-size:11px}.yes-no{gap:3px}.yes-no .choice-btn{min-width:37px;width:37px;height:37px;font-size:9px}.question-actions{margin-top:15px;gap:8px}.question-actions .btn{font-size:11px;padding:12px 16px}.feedback{padding:16px}.feedback p{font-size:12px}.gag{padding:11px}.gag p{font-size:11px}.gag .stamp{font-size:14px}.chapter-grid{grid-template-columns:1fr;gap:11px}.chapter-card{padding:19px;min-height:116px}.chapter-card h3{font-size:28px}.chapter-number{font-size:50px;width:50px}.chapter-card p{font-size:11px}.article-head{padding:23px}.article-head h1{font-size:44px}.article-section{padding:20px}.facts li{font-size:12px;line-height:1.8}.article-section h2{font-size:29px}.article-actions{align-items:flex-start;flex-direction:column}.exam-intro{grid-template-columns:1fr;padding:20px;gap:20px}.exam-art{min-height:200px}.exam-art .display{font-size:126px}.exam-content h2{font-size:44px}.exam-specs{gap:26px;margin:21px 0}.exam-timer{font-size:12px;padding:7px 9px}.progress-grid{grid-template-columns:1fr}.result-hero{padding:34px 18px}.result-hero h1{font-size:50px}.result-stats{gap:27px;margin:22px 0}.result-stats strong{font-size:32px}.result-row{padding:15px;gap:10px;flex-wrap:wrap}.result-row .btn{margin-left:45px;font-size:10px;padding:8px 12px;min-height:35px}.result-row h3{font-size:24px}.result-row p{max-width:255px}.fine-print{font-size:9px}.toast{bottom:88px;padding:11px 17px;font-size:11px}.drive-shell{height:70dvh;min-height:530px}.modal-header,.modal-body{padding:20px}.setting-row p{font-size:10px}.modal-header h2{font-size:30px}}
@media(max-width:360px){.brand{font-size:22px}.topbar{padding:0 12px}#main{padding-left:13px;padding-right:13px}.hero h2{font-size:51px}.hero-content{padding-left:18px;padding-right:18px}.mode-toggle span:not(.mode-led){font-size:7px}.statement-text{font-size:10px}.yes-no .choice-btn{width:33px;min-width:33px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(max-width:700px){.mobile-nav .nav-label{display:block}}
.question-diagram{background:#f9f9fa;line-height:0;overflow:hidden}.question-diagram svg{display:block;width:100%;height:auto;aspect-ratio:640/360}.scene-panel:has(.question-diagram){min-height:0}.question-diagram[hidden]+canvas{min-height:330px}
@media(max-width:700px){.question-diagram[hidden]+canvas{min-height:245px}.source-badges a{font-size:10px}.scene-panel .scene-caption{font-size:9px}.hero-foot{font-size:8px}}
/* Learning text stays large enough to read; small type is reserved for decoration. */
.question-context,.statement-text,.feedback p,.facts li{font-size:16px;line-height:1.65}
.answer-note{font-size:12px;letter-spacing:.025em}.choice-btn{min-width:48px;height:44px;font-size:12px}
.source-badges a{font-size:12px;padding:6px 8px}.question-actions .small{font-size:12px}
.scene-caption,.scene-panel .scene-caption{font-size:11px}.card-top,.card-tag,.card-bottom{font-size:11px}
.mission-card p,.route-strip p,.chapter-card p{font-size:13px}.top-actions .mode-toggle{font-size:11px}
.article-head p,.learning-note p,.exam-content p{font-size:15px}.article-section .section-meta,.topic-status{font-size:11px}
.feedback .gag p{font-size:14px}.hero-description{font-size:15px}.btn{font-size:14px}.nav-item{font-size:14px}
.top-actions .mode-toggle,.top-actions .icon-btn{min-height:44px}.top-actions .icon-btn{min-width:44px}
@media(max-width:700px){.question-context,.statement-text,.feedback p,.facts li{font-size:16px}.statement{padding:12px;flex-wrap:wrap;align-items:flex-start;position:relative}.statement-index{position:absolute;left:11px;top:14px;font-size:10px}.statement-text{padding-left:22px;min-width:calc(100% - 25px)}.yes-no{margin:5px 0 0 22px}.yes-no .choice-btn{min-width:68px;width:68px;height:44px;font-size:12px}.verdict-dot{margin:12px 0 0 5px}.question-panel h2{font-size:35px}.question-actions .small{font-size:11px}.question-actions .btn{font-size:13px}.mode-toggle span:not(.mode-led){font-size:9px}.scene-panel .scene-caption{font-size:11px}.source-badges a{font-size:12px}.mobile-nav a{font-size:10px}.hero-actions .btn,.hero-actions .btn-ghost{font-size:13px}.hero-description{font-size:15px}.hero-foot{font-size:10px}.card-top,.card-tag,.card-bottom{font-size:10px}.eyebrow{font-size:11px}.article-head p,.learning-note p,.exam-content p{font-size:15px}.hero{min-height:530px}.hero-content{top:137px}.hero-actions{gap:11px}.hero-actions .btn{padding:12px 13px}}
