@charset "UTF-8";
:root{--bg:#f6f8fc;--surface:#fff;--ink:#1c2943;--muted:#6e7d94;--line:#e1e7f1;--accent:#315fc7;--tint:#eaf0fd;--soft:#f0f4fa;--shadow:0 12px 36px #203d7410;--success:#287b68;color-scheme:light;font-family:Inter,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-synthesis:none}
:root[data-theme=dark]{--bg:#101827;--surface:#172238;--ink:#e5ecfc;--muted:#a5b4ce;--line:#2d3c56;--accent:#a1bdff;--tint:#253c64;--soft:#1f2e47;--shadow:0 12px 36px #0002;--success:#85c8b4;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #88a7ed;outline-offset:4px}[hidden]{display:none!important}img{display:block;max-width:100%}.skip{position:fixed;top:-70px;left:16px;z-index:100;padding:10px 18px;background:var(--accent);color:var(--surface);border-radius:6px}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:44px;height:86px;background:var(--surface);border-bottom:1px solid var(--line);padding:0 max(30px,calc((100vw - 1470px)/2))}.brand{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:750;letter-spacing:1.7px;line-height:1.2;flex-shrink:0}.brand small{display:block;font-size:10px;font-weight:450;letter-spacing:1.3px;color:var(--muted);margin-top:7px}.brand-mark{font-family:Georgia,serif;font-style:italic;letter-spacing:0;font-size:36px;display:grid;place-items:center;width:38px;height:38px;line-height:1;padding-bottom:7px;border-radius:11px;color:#fff;background:#315fc7;position:relative}.brand-mark>span{position:absolute;right:5px;top:5px;height:5px;width:5px;border-radius:50%;background:#bfd0ff}.topnav{display:flex;gap:28px;align-items:center;height:100%;font-size:14px;white-space:nowrap}.topnav>a{display:flex;align-items:center;height:100%;position:relative}.topnav>a.active{color:var(--accent);font-weight:650}.topnav>a.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--accent);border-radius:3px 3px 0 0}.header-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.search-button{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 12px;color:var(--muted);font-size:12px;white-space:nowrap}.search-button>span:first-child{font-size:22px;line-height:1}.search-button kbd{border:1px solid var(--line);border-radius:4px;padding:0 5px;margin-left:10px;font-size:11px}.icon-btn{background:transparent;border-radius:8px;width:34px;height:34px;display:grid;place-content:center;flex-shrink:0;font-size:23px;line-height:1}.icon-btn:hover{background:var(--soft)}.menu-toggle{display:none}.layout{max-width:1470px;margin:auto;display:grid;grid-template-columns:191px minmax(0,1fr);gap:42px;padding:36px 30px 0}.sidebar{position:sticky;top:120px;align-self:start}.sidebar-inner{max-height:calc(100dvh - 145px);overflow-y:auto;scrollbar-width:thin;padding-bottom:12px}.overview-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:7px;font-weight:600;color:var(--accent);background:var(--tint);font-size:13px}.overview-link>span{font-size:20px}.sidebar-label{font-size:11px;color:var(--muted);margin:26px 12px 12px;letter-spacing:1px}#lessonNav{display:grid;gap:4px}#lessonNav a{display:grid;grid-template-columns:23px 1fr 10px;gap:7px;align-items:start;padding:9px 10px;font-size:12px;line-height:1.7;border-radius:7px;color:var(--muted)}#lessonNav a>span:first-child{font-family:Consolas,monospace;font-size:11px;line-height:1.9}#lessonNav a:hover{background:var(--soft);color:var(--ink)}#lessonNav a.active{background:var(--tint);color:var(--accent);font-weight:600}#lessonNav a .nav-done{color:var(--success);font-size:11px}.progress-box{margin-top:26px;border-top:1px solid var(--line);padding:20px 10px 0;font-size:11px;color:var(--muted)}.progress-box>div:first-child{display:flex;justify-content:space-between}.progress-box strong{font-weight:500;font-family:Consolas,monospace}.progress-track{height:4px;background:var(--line);border-radius:5px;overflow:hidden;margin:10px 0 13px}.progress-track span{display:block;height:100%;width:0;background:var(--accent);transition:width .3s}.progress-box>a{display:flex;justify-content:space-between;color:var(--accent);font-size:11px}.local-note{font-size:10px;color:var(--muted);padding:0 10px;margin-top:15px}main{min-width:0;outline:none}.hero{display:grid;grid-template-columns:1fr 1.04fr;gap:32px;align-items:center;margin-bottom:40px}.page-eyebrow{font-size:11px;font-weight:600;color:var(--accent);letter-spacing:1px;display:flex;align-items:center;gap:8px}.small-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}h1{font-size:clamp(32px,3.2vw,48px);font-weight:650;line-height:1.28;letter-spacing:-1.5px;margin:18px 0}.hero h1{font-size:clamp(38px,3.7vw,55px);line-height:1.22;margin:18px 0}.hero h1 span{color:var(--accent)}.hero-copy{font-size:15px;color:var(--muted);max-width:375px;line-height:1.9;margin:0 0 26px}.button-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.primary,.secondary,.filter{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:7px;padding:10px 17px;font-size:13px;font-weight:500;border:1px solid transparent;line-height:1.6;background:var(--accent);color:var(--surface)}.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.primary:hover,.secondary:hover{filter:brightness(.97)}.hero-stats{display:flex;gap:23px;font-size:11px;color:var(--muted);margin-top:27px}.hero-stats strong{font-size:16px;font-weight:600;color:var(--ink);margin-right:5px}.hero-art{position:relative;border-radius:17px;overflow:hidden;background:#e9f0ff;border:1px solid #d9e3f5;cursor:zoom-in;aspect-ratio:3/2}.hero-art img{width:100%;height:100%;object-fit:cover}.image-credit{position:absolute;right:10px;bottom:10px;font-size:9px;background:#fffdf7e8;color:#526383;padding:3px 7px;border-radius:4px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding:22px 0 18px}.section-head h2{font-size:20px;margin:0;font-weight:650}.section-head>span,.section-head>a{font-size:11px;color:var(--muted)}.section-head>a{color:var(--accent)}.route-stages{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface);margin-bottom:20px}.route-stages>div{padding:14px 18px;display:flex;align-items:center;gap:10px;font-size:12px;border-right:1px solid var(--line)}.route-stages>div:last-child{border-right:0}.route-stages b{display:grid;place-content:center;width:26px;height:26px;border-radius:7px;background:var(--tint);font:12px Consolas,monospace;color:var(--accent)}.route-stages small{display:block;color:var(--muted);font-size:10px}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lesson-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:21px;display:flex;gap:17px;transition:transform .2s,border-color .2s,box-shadow .2s;min-width:0}.lesson-card:hover{transform:translateY(-3px);border-color:#a9bee5;box-shadow:var(--shadow)}.lesson-no{width:39px;height:39px;display:grid;place-content:center;flex-shrink:0;border-radius:9px;background:var(--tint);color:var(--accent);font:15px Consolas,monospace}.lesson-card h3{font-size:16px;font-weight:600;margin:0 0 6px;line-height:1.6}.lesson-card p{font-size:12px;color:var(--muted);margin:0;line-height:1.8}.card-meta{display:flex;gap:10px;font-size:10px;color:var(--muted);margin-top:13px;align-items:center}.card-meta .arrow{margin-left:auto;font-size:17px;color:var(--accent)}.done-tag{color:var(--success)}.home-scenes{margin-top:36px}.scene-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.scene-card{display:block;border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden;transition:transform .2s}.scene-card:hover{transform:translateY(-3px)}.scene-thumb{height:155px;overflow:hidden;background:var(--tint);position:relative}.scene-thumb img{width:100%;height:100%;object-fit:cover}.scene-thumb>span{position:absolute;left:12px;top:12px;padding:3px 7px;background:#fffdf7ee;color:#315fc7;border-radius:5px;font-size:10px}.scene-info{padding:17px 18px}.scene-info h3{font-size:17px;margin:0 0 8px;font-weight:600}.scene-info p{font-size:12px;color:var(--muted);margin:0;line-height:1.8}.page-head{margin-bottom:28px}.page-head h1{font-size:36px;margin:12px 0}.page-head p{font-size:14px;color:var(--muted);margin:0;max-width:710px;line-height:1.9}.page-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:25px 0}.filter-list{display:flex;gap:7px;flex-wrap:wrap}.filter{background:var(--surface);color:var(--muted);border:1px solid var(--line);padding:6px 12px;font-size:12px;font-weight:400}.filter.selected{background:var(--tint);border-color:#b4c7ed;color:var(--accent)}.inline-search{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:7px 11px;min-width:200px}.inline-search input{background:none;outline:none;border:0;width:100%;font-size:12px;min-width:0}.count-text{font-size:11px;color:var(--muted)}.term-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.term-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid var(--line);border-radius:10px;padding:21px;background:var(--surface);min-width:0;transition:transform .2s,border-color .2s}.term-card:hover{transform:translateY(-3px);border-color:#a8bce1}.term-card .term-cat{font-size:10px;color:var(--accent);background:var(--tint);padding:2px 7px;border-radius:4px;margin-bottom:16px}.term-card h3{font-size:19px;margin:0 0 3px;font-weight:600}.term-card .english{font-size:10px;color:var(--muted);min-height:17px}.term-card p{font-size:13px;line-height:1.9;color:var(--muted);margin:13px 0 19px}.term-card .term-bottom{margin-top:auto;display:flex;justify-content:space-between;width:100%;font-size:11px;color:var(--accent);border-top:1px solid var(--line);padding-top:13px}.empty-state{padding:55px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px;grid-column:1/-1}.breadcrumb{font-size:11px;color:var(--muted);display:flex;gap:9px;margin-bottom:22px}.breadcrumb>a{color:var(--accent)}.article-head{border-bottom:1px solid var(--line);padding-bottom:28px;margin-bottom:28px}.article-head h1{font-size:35px;line-height:1.4;letter-spacing:-.8px;margin:13px 0}.article-head>p{font-size:15px;line-height:1.9;color:var(--muted);margin:0 0 19px;max-width:800px}.article-meta{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:11px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 162px;gap:35px}.article-body{min-width:0}.article-body>figure{margin:0 0 30px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#edf3ff}.article-figure-button{padding:0;background:none;width:100%;display:block;cursor:zoom-in}.article-body>figure img{width:100%;height:auto}.article-body figcaption{font-size:11px;color:var(--muted);padding:10px 15px;background:var(--surface)}.article-body section{margin:0 0 34px;scroll-margin-top:110px}.article-body h2{font-size:24px;line-height:1.5;font-weight:650;margin:30px 0 17px;letter-spacing:-.5px}.article-body h3{font-size:18px;margin:23px 0 12px}.article-body p,.article-body li{font-size:16px;line-height:1.95;margin:0 0 16px}.article-body ul,.article-body ol{padding-left:24px}.article-body li{margin:8px 0}.article-body pre,.code-preview{font:12px/1.8 Consolas,"Microsoft YaHei",monospace;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:18px;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere}.callout{background:var(--tint);border-left:3px solid var(--accent);padding:17px 19px;margin:22px 0;border-radius:0 7px 7px 0}.callout strong{font-size:12px;color:var(--accent);display:block;margin-bottom:7px}.callout p{font-size:14px!important;line-height:1.9!important;margin:0!important}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin:20px 0}table{width:100%;border-collapse:collapse;background:var(--surface);font-size:13px}th,td{padding:12px 15px;border-bottom:1px solid var(--line);text-align:left;line-height:1.85;vertical-align:top}th{background:var(--soft);font-weight:600}tr:last-child td{border-bottom:0}.toc{position:sticky;top:120px;align-self:start;font-size:11px;color:var(--muted);border-left:1px solid var(--line);padding-left:17px}.toc strong{display:block;color:var(--ink);font-size:12px;margin-bottom:14px;font-weight:600}.toc a{display:block;padding:7px 0;line-height:1.8}.toc a:hover{color:var(--accent)}.term-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}.term-chip{padding:4px 8px;border-radius:5px;border:1px solid var(--line);background:var(--surface);font-size:11px;color:var(--accent)}.source-list{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}.source-list h3{font-size:14px;margin:0 0 12px}.source-list a{display:block;font-size:12px;color:var(--accent);padding:5px 0;overflow-wrap:anywhere}.source-list small{font-size:11px;color:var(--muted)}.lesson-end{border-top:1px solid var(--line);padding:25px 0;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.lesson-end .next-lesson{margin-left:auto;font-size:12px;color:var(--accent)}.quiz{border:1px solid var(--line);border-radius:11px;padding:24px;background:var(--surface);margin-top:30px}.quiz .quiz-label{font-size:11px;color:var(--accent)}.quiz h3{font-size:17px;margin:12px 0 17px;line-height:1.8}.quiz-options{display:grid;gap:8px}.quiz-options button{background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:11px 13px;font-size:13px;text-align:left;line-height:1.8}.quiz-options button.selected{background:var(--tint);border-color:#9bb5e8}.quiz-feedback{font-size:13px;line-height:1.9;margin-top:17px;border-top:1px solid var(--line);padding-top:15px}.quiz-feedback.correct{color:var(--success)}.demo{border:1px solid #bdceef;border-radius:12px;padding:24px;background:var(--surface);margin:28px 0}.demo-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.demo-head h3{font-size:18px;margin:0}.demo-badge{color:var(--accent);background:var(--tint);font-size:10px;padding:3px 7px;border-radius:4px;white-space:nowrap}.demo>p{font-size:12px;line-height:1.8;color:var(--muted);margin:11px 0 19px}.demo-controls{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px;align-items:center}.demo-controls button{font-size:12px;padding:8px 13px}.loop-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:22px 0}.loop-step{padding:15px 6px;background:var(--soft);border:1px solid var(--line);border-radius:7px;text-align:center;font-size:11px;color:var(--muted)}.loop-step b{font:15px Consolas,monospace;display:block;margin-bottom:6px}.loop-step.active{background:var(--tint);border-color:#88a9e8;color:var(--accent)}.loop-log{min-height:100px;border:1px solid var(--line);border-radius:7px;background:var(--bg);padding:16px;font-size:13px;line-height:1.9}.demo-output{padding:15px;border:1px solid var(--line);border-radius:7px;background:var(--bg);font-size:13px;line-height:1.9;margin-top:15px}.demo-output strong{color:var(--accent);font-size:12px}.context-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.context-cards label{display:flex;align-items:flex-start;gap:9px;background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:12px;font-size:12px;line-height:1.7}.context-cards input{accent-color:#315fc7;margin-top:4px}.context-cards small{display:block;font-size:10px;color:var(--muted)}.range-line{display:grid;grid-template-columns:1fr auto;gap:12px;font-size:12px;margin:19px 0 12px}.range-line input{grid-column:1/-1;width:100%;accent-color:#315fc7}.evolution-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.evolution-tabs button{background:var(--soft);font-size:11px;border-radius:6px;padding:7px 10px;border:1px solid var(--line)}.evolution-tabs button.selected{color:var(--accent);background:var(--tint);border-color:#a0b9e6}.evolution-content{padding:20px;border-radius:8px;background:var(--bg);border:1px solid var(--line);font-size:14px;line-height:1.9}.evolution-content strong{display:block;font-size:19px;color:var(--accent);margin-bottom:8px}.evolution-content small{display:block;color:var(--muted);font-size:11px;margin-top:12px}.bar-row{display:grid;grid-template-columns:65px 1fr 55px;gap:10px;align-items:center;font-size:11px;margin:14px 0}.bar-track{height:18px;border-radius:4px;background:var(--soft);overflow:hidden}.bar-fill{height:100%;background:#4c78d3;border-radius:4px;transition:width .4s}.bar-row:nth-child(2) .bar-fill{background:#a2baf0}.demo select,.demo textarea,.demo input[type=text]{background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:8px;font-size:12px;width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:12px;display:grid;gap:7px}.form-grid .full{grid-column:1/-1}.demo textarea{min-height:90px;resize:vertical}.scenario-steps{counter-reset:steps;display:grid;gap:12px;margin:25px 0}.scenario-step{display:grid;grid-template-columns:35px 1fr;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:19px}.scenario-step:before{counter-increment:steps;content:counter(steps,decimal-leading-zero);width:32px;height:32px;border-radius:7px;background:var(--tint);color:var(--accent);font:12px Consolas,monospace;display:grid;place-content:center}.scenario-step h3{font-size:16px;margin:2px 0 7px}.scenario-step p{font-size:14px;line-height:1.9;color:var(--muted);margin:0}.scenario-checks{padding:20px 24px;background:var(--tint);border-radius:9px;margin:24px 0}.scenario-checks h3{font-size:15px;margin:0 0 11px}.scenario-checks ul{padding-left:20px;margin:0;font-size:13px;line-height:2}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.product-card{border:1px solid var(--line);border-radius:11px;padding:23px;background:var(--surface)}.product-title{display:flex;gap:13px;align-items:center}.product-avatar{display:grid;place-content:center;width:42px;height:42px;border-radius:10px;background:var(--tint);color:var(--accent);font-size:18px;font-weight:650}.product-title h3{font-size:19px;margin:0;font-weight:600}.product-title small{font-size:10px;color:var(--muted)}.product-card p{font-size:13px;line-height:1.9;color:var(--muted);margin:16px 0}.product-facts{display:grid;grid-template-columns:64px 1fr;font-size:11px;gap:6px 10px;line-height:1.9}.product-facts dt{color:var(--muted)}.product-facts dd{margin:0}.product-link{display:flex;justify-content:space-between;color:var(--accent);font-size:12px;border-top:1px solid var(--line);margin-top:17px;padding-top:13px}.small-notice{font-size:12px;color:var(--muted);line-height:1.9;padding:16px 19px;border:1px solid var(--line);border-radius:8px;margin-top:22px;background:var(--surface)}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.record-panel{border:1px solid var(--line);background:var(--surface);padding:23px;border-radius:10px}.record-panel h2{font-size:17px;margin:0 0 17px}.record-panel a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.record-panel a:last-child{border:0}.record-panel p{font-size:13px;color:var(--muted)}.bookmark-btn{font-size:12px;background:var(--surface);color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:7px 11px}.bookmark-btn[aria-pressed=true]{background:var(--tint);color:var(--accent)}footer{border-top:1px solid var(--line);margin-top:48px;padding:24px 0 30px;display:flex;gap:16px;align-items:center;color:var(--muted);font-size:10px}.footer-brand{font-size:11px;font-weight:700;letter-spacing:1px;color:var(--ink)}.footer-right{margin-left:auto}.footer-right a{margin-left:14px;text-decoration:underline;text-underline-offset:3px}dialog{border:1px solid var(--line);border-radius:15px;background:var(--surface);color:var(--ink);padding:0;box-shadow:0 25px 90px #0004;max-height:calc(100dvh - 40px);width:min(660px,calc(100% - 30px))}dialog::backdrop{background:#15233c99;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.dialog-top h2{font-size:15px;color:var(--ink);margin:0;font-weight:600}.search-field{display:flex;align-items:center;gap:12px;padding:16px 23px;border-bottom:1px solid var(--line)}.search-field>span{font-size:25px;color:var(--muted)}.search-field input{width:100%;border:0;outline:0;background:none;font-size:14px}.search-results{padding:12px;overflow-y:auto;max-height:430px}.search-result{display:flex;justify-content:space-between;align-items:center;gap:15px;width:100%;text-align:left;padding:12px;border-radius:7px;font-size:14px;background:none}.search-result:hover{background:var(--soft)}.search-result small{font-size:10px;color:var(--muted);display:block;margin-top:3px}.search-result>span:last-child{color:var(--accent)}.search-empty{padding:24px;font-size:13px;color:var(--muted)}#termBody{padding:27px 30px 32px}#termBody h2{font-size:28px;margin:10px 0 4px}#termBody .english{color:var(--muted);font-size:12px}#termBody p{font-size:15px;line-height:1.95}#termBody h3{font-size:14px;margin-top:22px}.related-terms{display:flex;flex-wrap:wrap;gap:7px}.image-dialog{width:min(1200px,calc(100% - 24px));overflow:visible;background:transparent;border:0;box-shadow:none}.image-dialog>.icon-btn{position:absolute;right:8px;top:8px;background:#fff;color:#243c69;z-index:2}.image-dialog img{max-height:calc(100dvh - 50px);width:100%;object-fit:contain;border-radius:10px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);background:var(--ink);color:var(--bg);border-radius:8px;padding:10px 18px;z-index:70;font-size:12px;opacity:0;pointer-events:none;transition:all .2s;max-width:calc(100% - 30px);text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1700px){.hero-art{max-height:350px}.hero{gap:50px}}
@media(max-width:1200px){.header{gap:28px;padding:0 24px}.topnav{gap:22px}.search-button>span:nth-child(2){display:none}.search-button kbd{margin-left:0}.layout{grid-template-columns:165px minmax(0,1fr);gap:27px;padding:30px 24px 0}.hero{gap:24px}.hero h1{font-size:43px}.hero-copy{font-size:14px}.hero-stats{gap:17px}.article-layout{grid-template-columns:minmax(0,1fr) 140px;gap:25px}.term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-card{padding:17px;gap:12px}.lesson-card h3{font-size:15px}.scene-thumb{height:130px}.scene-info{padding:15px}.scene-info h3{font-size:16px}}
@media(max-width:980px){.header{gap:24px}.brand{font-size:14px}.topnav{font-size:13px;gap:19px}.header-actions{gap:9px}.search-button kbd{display:none}.layout{grid-template-columns:154px minmax(0,1fr);gap:23px}.hero{grid-template-columns:1fr}.hero h1{font-size:43px;display:flex;gap:11px;flex-wrap:wrap}.hero-copy{max-width:100%;margin-bottom:20px}.hero-art{max-height:330px;aspect-ratio:3/2}.hero-stats{margin-top:18px}.hero{gap:25px}.article-layout{display:block}.toc{display:none}.lesson-grid{grid-template-columns:1fr}.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-stages>div{padding:12px 10px;gap:7px}.route-stages>div span{font-size:11px}.article-head h1{font-size:30px}.product-grid{grid-template-columns:1fr}}
@media(max-width:730px){.header{height:auto;min-height:72px;flex-wrap:wrap;gap:12px 10px;padding:14px 18px 0}.brand{font-size:14px}.brand small{font-size:9px;letter-spacing:.8px}.brand-mark{width:33px;height:33px;font-size:31px;border-radius:9px}.header-actions{margin-left:auto;gap:5px}.search-button{padding:5px 8px;background:none;border-color:transparent}.search-button>span:first-child{font-size:23px}.icon-btn{width:31px;height:31px;font-size:22px}.menu-toggle{display:grid;font-size:19px}.topnav{order:3;width:100%;height:39px;justify-content:space-between;gap:16px;font-size:12px}.topnav>a{padding-bottom:7px}.layout{display:block;padding:24px 18px 0}.sidebar{display:none;position:fixed;top:113px;bottom:0;left:0;z-index:25;background:var(--surface);border-right:1px solid var(--line);width:262px;padding:20px;box-shadow:20px 0 40px #10204020}.sidebar.open{display:block}.sidebar-inner{max-height:calc(100dvh - 150px)}#lessonNav a{font-size:13px;padding:9px}.hero{gap:24px;margin-bottom:30px}.hero h1{font-size:39px;letter-spacing:-1px;margin:14px 0}.hero-copy{font-size:14px;line-height:1.85;max-width:340px}.page-eyebrow{font-size:10px}.hero-art{aspect-ratio:3/2;border-radius:12px}.hero-stats{gap:23px;font-size:10px}.hero-stats strong{font-size:15px}.primary,.secondary{font-size:12px;padding:9px 14px}.section-head{padding:20px 0 15px}.section-head h2{font-size:19px}.section-head>span{font-size:10px}.route-stages{margin-bottom:15px}.route-stages>div{padding:11px 8px;gap:6px}.route-stages b{width:22px;height:22px;font-size:11px}.route-stages small{font-size:9px}.route-stages>div span{font-size:10px}.lesson-grid{gap:10px}.lesson-card{padding:18px 15px;gap:14px}.lesson-card h3{font-size:16px}.lesson-card p{font-size:12px}.scene-grid{gap:12px}.scene-thumb{height:120px}.scene-info{padding:13px}.scene-info h3{font-size:15px}.scene-info p{font-size:11px}.page-head h1{font-size:30px}.page-head p{font-size:13px}.page-toolbar{align-items:stretch;flex-direction:column;gap:13px}.inline-search{width:100%}.filter-list{gap:6px}.filter{font-size:11px;padding:6px 10px}.term-grid{gap:11px}.term-card{padding:17px}.term-card h3{font-size:17px}.term-card p{font-size:12px}.term-card .english{font-size:9px;overflow-wrap:anywhere}.article-head h1{font-size:29px;line-height:1.5;margin:12px 0}.article-head>p{font-size:14px}.article-head{padding-bottom:23px;margin-bottom:23px}.article-meta{font-size:10px;gap:10px}.article-body h2{font-size:22px;margin:26px 0 15px}.article-body p,.article-body li{font-size:15px;line-height:1.95}.article-body section{scroll-margin-top:130px}.article-body>figure{border-radius:9px;margin-bottom:23px}.article-body figcaption{font-size:10px}.callout{padding:14px 16px}.callout p{font-size:13px!important}.demo{padding:18px}.demo-head h3{font-size:16px}.demo-badge{font-size:9px}.loop-steps{gap:5px}.loop-step{font-size:10px;padding:13px 4px}.loop-log{font-size:12px;min-height:115px}.context-cards{grid-template-columns:1fr}.demo-output{font-size:12px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.quiz{padding:19px}.quiz h3{font-size:16px}.quiz-options button{font-size:12px}.lesson-end .next-lesson{width:100%;margin-top:9px}.scenario-step{padding:16px;gap:12px}.scenario-step p{font-size:13px}.record-grid{grid-template-columns:1fr}.product-card{padding:20px}footer{flex-wrap:wrap;gap:8px 15px;font-size:9px;margin-top:35px;padding-top:20px}.footer-right{margin-left:0;width:100%;margin-top:4px}.dialog-top{padding:13px 17px}#termBody{padding:22px}#termBody p{font-size:14px}#termBody h2{font-size:25px}.search-field{padding:15px 18px}.search-field input{font-size:13px}}
@media(max-width:420px){.scene-grid,.term-grid{grid-template-columns:1fr}.scene-thumb{height:190px}.scene-info h3{font-size:18px}.scene-info p{font-size:13px}.term-card h3{font-size:20px}.term-card p{font-size:14px}.term-card .english{font-size:11px}.hero h1{font-size:35px}.hero-stats{gap:18px}.route-stages>div{display:block}.route-stages b{margin-bottom:5px}.route-stages small{margin-top:2px}.table-wrap{font-size:12px}}
body.modal-open{overflow:hidden}.term-course{margin-top:25px}.source-page small{display:block;font-size:10px;color:var(--muted);overflow-wrap:anywhere}.source-page a{color:var(--accent)}.check-line{display:flex;gap:8px;align-items:center;font-size:11px;margin:16px 0 0}.check-line input{accent-color:#315fc7}.demo .demo-note{font-size:11px;margin-bottom:0}.demo input[type=range]{width:100%;accent-color:#315fc7}.demo output{font-size:11px;color:var(--muted)}button:disabled{cursor:default;opacity:.45}.bar-row b{font-size:11px;font-weight:500}.quiz-options b{font-weight:600;color:var(--accent)}.demo #promptResult:empty{display:none}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.product-card{scroll-margin-top:110px}@media(max-width:730px){.product-card{scroll-margin-top:130px}}
