@font-face{font-family:Schibsted;src:url(/fonts/schibsted.woff2) format("woff2");font-display:swap;font-weight:400 800}:root{--bg:#101817;--surface:#192321;--surface-raised:#24312e;--ink:#f1f5f2;--muted:#b3c1ba;--accent:#93f1f7;--mint:#b8e8cf;--cyan:#a4dce5;--sand:#ede3a3;--orange:#f6ba92;--deep:#172b25;--radius:0;--gutter:clamp(20px,5vw,80px);font-family:Schibsted,Microsoft YaHei,PingFang SC,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;border:0;background:none}button,a{touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.45}p{font-size:16px;line-height:1.85;margin:0 0 20px;text-wrap:pretty}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(40px,6vw,88px);line-height:1.17}h2{font-size:clamp(28px,3.5vw,48px);line-height:1.28}h3{font-size:24px;line-height:1.4}h4{font-size:18px;line-height:1.5}::selection{background:var(--mint);color:var(--deep)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}main:focus{outline:0}svg{flex-shrink:0}button,a{transition:background-color .2s,color .2s,transform .2s}button:active:not(:disabled),.primary:active{transform:translateY(2px)}a:hover{color:var(--accent)}button:hover:not(:disabled){background-color:var(--surface-raised)}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--accent);color:var(--bg);padding:14px}.skip-link:focus{top:12px}.site-header{height:90px;display:flex;align-items:center;gap:36px;padding:0 var(--gutter);position:relative;z-index:20;background:var(--bg)}.brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:800;letter-spacing:-.06em}.brand-mark{width:26px;height:28px;display:grid;grid-template-columns:1fr 1fr;gap:3px;transform:rotate(-6deg)}.brand-mark i{background:var(--mint)}.brand-mark i:nth-child(2){transform:translateY(-4px)}.brand-mark i:nth-child(3){background:var(--cyan)}.brand-sub{font-size:13px;letter-spacing:0;font-weight:400;color:var(--muted);margin-left:8px}.main-nav{display:flex;gap:30px;margin-left:auto;align-items:center}.main-nav a{font-size:15px;color:var(--muted);padding:12px 0}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--ink)}.header-actions{display:flex;gap:8px}.search-trigger{display:flex;align-items:center;gap:9px;color:var(--muted);padding:9px 12px;background:var(--surface);font-size:14px}.search-trigger kbd{font:inherit;background:var(--surface-raised);padding:3px 5px;font-size:12px}.mobile-toggle{display:none;padding:10px}.hero{padding:65px var(--gutter) 0;max-width:1600px;margin:auto}.hero h1{text-align:center;font-weight:600;letter-spacing:-.065em}.hero-sub{text-align:center;color:var(--muted);font-size:18px;margin:25px 0 0}.folder-stack{position:relative;padding-top:116px;margin-top:48px}.folder-back{position:absolute;display:block;height:110px;left:0;right:0;padding:0 28px;clip-path:polygon(0 24px,0 0,24% 0,26% 24px,100% 24px,100% 100%,0 100%);color:var(--deep);font-size:14px;font-weight:600}.folder-back:hover{color:var(--deep);transform:translateY(-5px)}.folder-back span{position:absolute;top:3px}.folder-orange{top:0;background:var(--orange)}.folder-yellow{top:29px;background:var(--sand);clip-path:polygon(0 24px,26% 24px,26% 0,48% 0,50% 24px,100% 24px,100% 100%,0 100%)}.folder-yellow span{left:29%}.folder-cyan{top:58px;background:var(--cyan);clip-path:polygon(0 24px,52% 24px,52% 0,73% 0,75% 24px,100% 24px,100% 100%,0 100%)}.folder-cyan span{left:55%}.folder-green{top:87px;background:#7ebfa7;clip-path:polygon(0 24px,76% 24px,76% 0,98% 0,100% 24px,100% 100%,0 100%)}.folder-green span{left:79%}.front-folder{background:var(--mint);color:var(--deep);position:relative;min-height:365px;padding:48px;display:grid;grid-template-columns:1.1fr 1fr;gap:50px}.folder-copy h2{font-size:clamp(29px,3.3vw,46px);font-weight:600;line-height:1.3;letter-spacing:-.045em}.folder-copy p{margin:22px 0;color:var(--deep);font-size:16px;line-height:1.8}.primary,.secondary{display:inline-flex;gap:10px;align-items:center;justify-content:center;font-size:15px;font-weight:600;padding:15px 21px;min-height:48px}.primary{background:var(--accent);color:var(--deep)}.primary:hover:not(:disabled){background:var(--mint);color:var(--deep);transform:translateY(-2px)}.dark-button{background:var(--deep);color:var(--ink)}.dark-button:hover{background:#2b493e;color:var(--ink)}.secondary{background:var(--surface-raised);color:var(--ink)}.text-button,.text-link{display:inline-flex;align-items:center;gap:8px;padding:7px 0;font-size:15px}.text-link:hover{transform:translate(3px)}.folder-note{display:block;margin-top:15px;font-size:13px}.system-figure{display:flex;flex-direction:column;justify-content:center;padding-top:5px;perspective:1000px}.system-layer{padding:15px 20px;display:flex;gap:15px;justify-content:space-between;align-items:center;margin-top:8px;min-height:58px;transform:rotate(-4deg);font-size:14px}.system-layer b{font-weight:500;font-size:15px;display:flex;gap:10px;align-items:center}.system-layer i{width:4px;height:4px;background:currentColor;opacity:.45}.layer-request{background:var(--deep);color:var(--mint);width:82%;align-self:flex-end}.layer-process{background:#eef9f1;width:92%;align-self:flex-end}.layer-kernel{background:#80bfa4;color:var(--deep)}.layer-hardware{background:var(--deep);color:var(--mint);width:94%}.figure-caption{font-size:13px;margin-top:21px;text-align:center}.hero-bottom{padding:30px 0;display:flex;gap:36px;align-items:center;font-size:14px;color:var(--muted)}.hero-bottom strong{font-size:23px;font-weight:500;color:var(--ink);margin-right:6px}.hero-bottom a{margin-left:auto;display:flex;gap:8px;align-items:center;font-size:14px}.section-space{padding:130px var(--gutter) 0;max-width:1600px;margin:auto}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:end;margin-bottom:48px}.section-intro p{color:var(--muted);max-width:440px;margin:0}.section-intro .text-link{margin-top:18px}.path-groups{display:flex;flex-direction:column;gap:15px}.path-group{padding:34px 38px;display:grid;grid-template-columns:1fr 1fr;gap:12%;color:var(--deep)}.path-group h3{font-size:29px}.path-group p{font-size:15px;margin:12px 0 0}.mint{background:var(--mint)}.cyan{background:var(--cyan)}.sand{background:var(--sand)}.path-links{display:flex;flex-wrap:wrap;align-content:center;gap:8px 28px}.path-links a{display:flex;gap:12px;align-items:center;justify-content:space-between;min-height:42px;width:calc(50% - 14px);font-size:16px}.path-links a:hover{color:var(--deep);transform:translate(4px)}.question-section{padding-bottom:0}.focus-list details{background:var(--surface);margin-bottom:12px;padding:0 30px}.focus-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:20px;font-weight:500;padding:26px 0;line-height:1.5}.focus-list summary::-webkit-details-marker{display:none}.focus-list summary span{font-size:27px;font-weight:400}.focus-list details[open] summary span{transform:rotate(45deg)}.focus-answer{max-width:850px;padding-bottom:25px}.focus-answer p{margin-bottom:15px}.finish-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-bottom:130px;align-items:end}.finish-section h2{font-size:clamp(40px,5vw,70px)}.finish-section p{color:var(--muted);max-width:400px}.finish-section .primary{margin-top:10px}footer{background:#0b1210;padding:45px var(--gutter) 25px}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:center}.footer-top .brand{font-size:62px}.footer-top p{font-size:14px;color:var(--muted);margin:0 auto}.footer-top>a:last-child{font-size:15px;display:flex;gap:8px;align-items:center}.footer-bottom{margin-top:40px;display:flex;gap:24px;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px;flex-wrap:wrap}.footer-bottom .text-button{font-size:13px}.page-wrap{max-width:1440px;padding:65px var(--gutter) 110px;margin:auto}.page-heading{margin-bottom:48px}.page-heading h1{font-size:clamp(36px,5vw,64px)}.page-heading p{font-size:18px;margin:20px 0 0;color:var(--muted)}.course-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.segmented{display:inline-flex;background:var(--surface);padding:5px;gap:3px}.segmented button{padding:10px 16px;font-size:15px;min-height:42px;color:var(--muted)}.segmented button.selected{background:var(--mint);color:var(--deep)}.inline-search{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--surface)}input{min-width:0}.inline-search input{border:0;background:none;color:var(--ink);width:180px;outline:0;font-size:15px}.course-overview{display:flex;gap:20px;align-items:center;color:var(--muted);font-size:14px;margin:30px 0 45px}.progress-track{height:5px;background:var(--surface-raised);position:relative;overflow:hidden}.progress-track i{height:100%;display:block;background:var(--mint);transition:width .3s}.course-overview .progress-track{flex:1}.course-list{display:flex;flex-direction:column;gap:12px}.course-row{text-align:left;background:var(--surface);width:100%;display:flex;align-items:center;gap:28px;padding:30px}.course-row:hover{transform:translate(4px)}.module-symbol{width:68px;height:80px;display:flex;align-items:center;justify-content:center;color:var(--deep);flex-shrink:0;clip-path:polygon(0 0,65% 0,100% 22%,100% 100%,0 100%)}.tone-0{background:var(--mint)}.tone-1{background:var(--cyan)}.tone-2{background:var(--sand)}.tone-3{background:var(--orange)}.course-row-title{flex:1}.course-row h2{font-size:24px;letter-spacing:-.035em}.course-row p{color:var(--muted);font-size:15px;margin:10px 0}.topic-preview{display:flex;gap:12px 20px;flex-wrap:wrap;color:var(--muted);font-size:13px;max-width:750px}.course-row-meta{display:flex;flex-direction:column;gap:14px;align-items:flex-end;color:var(--muted);font-size:13px;min-width:90px}.course-row-meta span{display:flex;gap:6px;align-items:center}.scope-note{margin-top:45px;background:var(--surface);padding:30px}.scope-note h3{font-size:21px;margin-bottom:14px}.scope-note p{color:var(--muted);margin:0}.reader-layout{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:1520px;margin:auto;gap:65px;padding:32px var(--gutter) 100px}.reader-sidebar{position:sticky;top:25px;align-self:start;max-height:calc(100vh - 45px);overflow:auto;padding-bottom:20px}.reader-sidebar .back-link{display:flex;gap:5px;align-items:center;margin:5px 0 30px;font-size:14px;color:var(--muted)}.reader-sidebar>p{font-size:13px;color:var(--muted);margin:0 0 15px;padding:0 12px}.reader-sidebar>a:not(.back-link){font-size:14px;padding:11px 12px;display:flex;justify-content:space-between;gap:6px;margin-bottom:3px;color:var(--muted)}.reader-sidebar>a.active{background:var(--surface-raised);color:var(--mint)}.reader-sidebar>a:hover{background:var(--surface)}.sidebar-progress{margin:28px 12px 0;font-size:13px;color:var(--muted)}.sidebar-progress .progress-track{margin-top:13px}.lesson{min-width:0;max-width:850px;padding-top:12px}.lesson-meta{display:flex;gap:18px;font-size:14px;color:var(--mint);margin-bottom:20px}.lesson-heading h1{font-size:clamp(32px,3.8vw,52px)}.lesson-heading>p{font-size:18px;margin-top:23px;color:var(--muted)}.lesson-goal{padding:24px 28px;background:var(--surface);margin:35px 0 30px}.lesson-goal b{color:var(--mint);font-size:15px}.lesson-goal p{margin:12px 0 0}.lesson-toc{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:40px}.lesson-toc button{background:var(--surface);padding:9px 12px;font-size:13px;color:var(--muted);text-align:left}.lesson-topic{scroll-margin-top:30px;margin-top:50px}.lesson-topic h2,.lesson-tools h2,.lesson-notes h2,.lesson-warning h2{font-size:26px;margin-bottom:20px;letter-spacing:-.025em}.lesson-topic>p{font-size:17px;line-height:1.95}.scenario{background:var(--surface);padding:20px 24px;margin-top:23px}.scenario>span{font-size:13px;color:var(--mint)}.scenario p{margin:10px 0 0}.lesson-warning{background:var(--sand);color:var(--deep);padding:28px;margin:50px 0}.lesson-warning h2{font-size:22px;margin-bottom:12px}.lesson-warning p{margin:0}.lesson-tools>p,.lesson-notes>p{color:var(--muted)}.code-block{position:relative;background:#0a100e;margin:20px 0;overflow:hidden}.code-block>button{position:absolute;right:10px;top:10px;background:var(--surface-raised);font-size:12px;padding:7px 10px;display:flex;gap:6px;align-items:center}.code-block pre{margin:0;padding:54px 24px 24px;overflow:auto;max-height:620px;line-height:1.75;-moz-tab-size:2;tab-size:2}.code-block code{font-family:Consolas,Cascadia Code,monospace;font-size:14px;color:#c7edd7;white-space:pre}.lesson-notes{margin-top:50px}.lesson-notes textarea{width:100%;min-height:190px;padding:20px;border:0;background:var(--surface);color:var(--ink);font-size:16px;line-height:1.8;resize:vertical}.lesson-notes>small{font-size:13px;color:var(--muted);display:block;margin-top:12px}.related-labs{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:35px}.related-labs a{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--mint)}.lesson-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:45px}.next-lesson{display:flex;width:100%;justify-content:space-between;background:var(--surface);padding:22px;font-size:16px}.mobile-directory{display:none}.lab-intro{display:flex;gap:17px;align-items:flex-start;background:var(--surface);padding:22px 26px;margin-bottom:35px}.lab-intro p{margin:0;color:var(--muted)}.lab-intro svg{color:var(--mint);margin-top:4px}.lab-page .section-space{padding:100px 0 0}.simulation{background:var(--surface);overflow:hidden}.sim-tabs{display:flex;background:#23322c;padding:8px;gap:5px}.sim-tabs button{padding:13px 24px;font-size:16px;flex:1}.sim-tabs button[aria-selected=true]{background:var(--mint);color:var(--deep)}.sim-body{padding:35px}.sim-body>p{color:var(--muted)}.memory-pages{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;margin:28px 0}.memory-pages button{background:var(--surface-raised);min-height:128px;padding:20px 8px;display:flex;flex-direction:column;align-items:center;gap:13px;position:relative}.memory-pages button b{font-weight:500;font-size:22px}.memory-pages button span{font-size:12px;color:var(--muted)}.memory-pages button.resident{background:var(--mint);color:var(--deep)}.memory-pages button.resident span{color:var(--deep)}.memory-pages button small{background:var(--deep);color:var(--mint);font-size:11px;position:absolute;bottom:6px;padding:2px 5px}.memory-pages button:hover{transform:translateY(-4px)}.sim-readout{display:flex;gap:35px;flex-wrap:wrap;margin:25px 0;font-size:14px;color:var(--muted)}.sim-readout b{color:var(--ink);font-weight:500;margin-left:7px}.sim-message{padding:20px 24px;background:var(--surface-raised);min-height:70px;color:var(--ink)!important}.button-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.fine{font-size:13px!important;line-height:1.85;color:var(--muted);margin:22px 0 0!important}.sim-controls{display:flex;gap:35px;align-items:center;flex-wrap:wrap}.sim-controls label,.quiz-filters>label{display:flex;align-items:center;gap:15px;font-size:15px}.sim-controls select,.quiz-filters select{background:var(--surface-raised);border:0;color:var(--ink);padding:12px 16px;max-width:100%}input[type=range]{accent-color:var(--mint);width:140px}.job-list{display:flex;gap:10px;margin:25px 0}.job{padding:20px;flex:1;display:flex;flex-direction:column;gap:10px;color:var(--deep)}.job span{font-size:13px}.job-A{background:var(--mint)}.job-B{background:var(--cyan)}.job-C{background:var(--sand)}.timeline{display:flex;gap:4px;padding-bottom:23px;margin:30px 0 35px}.time-unit{position:relative;flex:1;height:60px;color:var(--deep);display:flex;align-items:center;justify-content:center;opacity:.35;transition:opacity .25s,transform .25s}.time-unit.executed{opacity:1;transform:translateY(-6px)}.time-unit small{position:absolute;bottom:-26px;color:var(--ink);font-size:13px}.race-visual{display:flex;align-items:center;justify-content:space-around;gap:20px;margin:35px 0}.thread{background:var(--surface-raised);padding:25px;display:flex;flex-direction:column;gap:15px}.thread b{font-size:24px}.thread span{font-size:14px;color:var(--muted)}.shared-count{display:flex;flex-direction:column;text-align:center;gap:8px;color:var(--mint);font-size:14px}.shared-count strong{font-size:66px;font-weight:500}.race-steps{display:flex;flex-wrap:wrap;gap:8px}.race-steps p{background:var(--surface-raised);padding:10px 16px;font-size:13px;color:var(--muted);margin:0}.race-steps p.done{background:var(--mint);color:var(--deep)}.lab-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:45px}.lab-nav{display:flex;flex-direction:column;align-self:start;position:sticky;top:25px;gap:8px}.lab-nav button{display:flex;flex-direction:column;text-align:left;gap:12px;padding:22px 20px;background:var(--surface);position:relative;min-height:108px}.lab-nav button span{font-size:13px;color:var(--muted)}.lab-nav button b{font-weight:500;font-size:17px;padding-right:25px}.lab-nav button svg{position:absolute;right:16px;bottom:25px}.lab-nav button.active{background:var(--mint);color:var(--deep)}.lab-nav button.active span{color:var(--deep)}.lab-detail{min-width:0}.lab-detail h3{font-size:30px;margin-bottom:20px}.lab-detail h4{margin:28px 0 12px}.lab-detail li{font-size:16px;line-height:1.9;margin:8px 0}.lab-detail ol,.lab-detail ul{padding-left:23px}.code-heading{display:flex;justify-content:space-between;align-items:end;gap:15px}.code-heading h4{margin-bottom:0}.expected{background:var(--surface);padding:22px 25px;margin-top:28px}.expected h4{margin:0 0 15px}.expected p{margin:0}.quiz-page{max-width:1150px}.quiz-stats{display:flex;background:var(--surface);padding:25px 30px;gap:70px;margin-bottom:35px;color:var(--muted)}.quiz-stats span{font-size:14px;display:flex;align-items:center;gap:20px}.quiz-stats b{color:var(--mint);font-size:28px;font-weight:500}.quiz-filters{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;flex-wrap:wrap}.checkbox{display:flex;align-items:center;gap:10px}.checkbox input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:21px;height:21px;background:var(--surface-raised);cursor:pointer;position:relative;margin:0}.checkbox input:checked{background:var(--mint)}.checkbox input:checked:after{content:"✓";color:var(--deep);position:absolute;left:4px;top:0}.quiz-card{background:var(--surface);padding:40px}.quiz-top{display:flex;justify-content:space-between;font-size:14px;color:var(--muted);margin-bottom:30px}.quiz-card h2{font-size:27px;margin-bottom:30px;line-height:1.5}.quiz-options{display:flex;flex-direction:column;gap:12px}.quiz-options button{display:flex;gap:15px;text-align:left;align-items:center;padding:20px;background:var(--surface-raised);font-size:16px;line-height:1.6}.quiz-options button>span{font-size:14px;background:var(--surface);padding:3px 9px}.quiz-options button>svg{margin-left:auto}.quiz-options button.chosen{background:#3b5148}.quiz-options button.correct>span{background:#83b79d}.quiz-explanation{margin-top:25px;padding:25px;background:var(--surface-raised)}.quiz-explanation b{font-size:18px;color:var(--mint)}.quiz-explanation p{margin:14px 0 0}.quiz-explanation.wrong b{color:var(--sand)}.quiz-navigation{display:flex;justify-content:space-between;gap:15px;margin-top:30px}.empty-state{padding:70px 25px;text-align:center;color:var(--muted)}.empty-state h2{font-size:26px;margin:22px 0}.empty-state .secondary{margin-top:15px}.empty-state svg{margin:auto}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000b;z-index:80;padding:10vh 20px 30px;display:flex;align-items:flex-start;justify-content:center}.search-dialog{background:var(--surface);width:760px;max-width:100%;max-height:78vh;overflow:hidden;box-shadow:0 30px 100px #0009}.search-input{display:flex;align-items:center;gap:15px;background:var(--surface-raised);padding:20px}.search-input input{flex:1;width:100%;background:none;border:0;color:var(--ink);font-size:17px;outline:0}.search-input>button{padding:6px}.search-results{overflow:auto;max-height:65vh}.search-results>button{display:flex;justify-content:space-between;width:100%;text-align:left;padding:20px 25px;align-items:center;gap:15px;font-size:17px}.search-results>button small{display:block;margin-top:8px;font-size:13px;color:var(--muted)}.search-suggestions{padding:25px}.search-suggestions p{color:var(--muted)}.search-suggestions button{padding:10px 18px;background:var(--surface-raised);margin:0 10px 10px 0;font-size:15px}.storage-error{position:fixed;bottom:20px;right:20px;z-index:70;max-width:calc(100vw - 40px);background:var(--sand);color:var(--deep);padding:15px 20px;font-size:14px}.sources{max-width:1000px;padding-top:60px}.sources h2{margin-bottom:25px;font-size:32px}.sources>div{display:grid;grid-template-columns:1fr 1fr;gap:15px}.sources a{display:flex;align-items:center;gap:8px;font-size:15px;padding:8px 0}@media(min-width:1600px){.front-folder{min-height:410px;padding:55px 65px}.hero{padding-top:80px}}@media(max-width:1150px){.brand-sub{display:none}.main-nav{gap:22px}.hero{padding-top:45px}.front-folder{padding:35px;gap:30px}.system-layer{padding:14px;font-size:12px}.system-layer b{font-size:13px;gap:6px}.hero-bottom{gap:22px}.hero-bottom strong{font-size:21px}.reader-layout{gap:35px;grid-template-columns:220px minmax(0,1fr)}.course-row{gap:20px;padding:25px}.topic-preview span:nth-child(n+4){display:none}.memory-pages{grid-template-columns:repeat(4,1fr)}.memory-pages button{min-height:108px}.lab-layout{grid-template-columns:240px minmax(0,1fr);gap:30px}.quiz-stats{gap:40px}.path-links a{width:100%}.sim-controls{gap:18px}}@media(max-width:800px){.site-header{height:78px;gap:15px}.main-nav{gap:20px}.main-nav a{font-size:14px}.search-trigger{padding:10px}.search-trigger span,.search-trigger kbd{display:none}.hero h1{font-size:56px}.hero-sub{font-size:16px}.folder-stack{margin-top:36px}.front-folder{padding:30px;gap:15px;min-height:340px;grid-template-columns:1fr 1fr}.folder-copy h2{font-size:29px}.folder-copy p{font-size:14px}.system-layer{transform:rotate(-3deg);flex-direction:column;gap:6px;align-items:flex-start;padding:10px 15px;min-height:61px}.layer-request{flex-direction:row;align-items:center}.system-layer b{font-size:13px}.figure-caption{font-size:11px}.folder-note{font-size:12px}.hero-bottom{gap:17px;flex-wrap:wrap}.hero-bottom span{font-size:12px}.hero-bottom a{font-size:13px}.section-space{padding-top:90px}.section-intro{gap:35px}.section-intro h2{font-size:32px}.section-intro p{font-size:15px}.path-group{padding:28px;gap:30px}.path-group h3{font-size:26px}.focus-list summary{font-size:18px}.finish-section{padding-bottom:90px}.footer-top{gap:20px}.footer-top .brand{font-size:45px}.footer-top p{font-size:13px}.course-toolbar{align-items:stretch;flex-direction:column}.course-toolbar .inline-search,.inline-search input{width:100%}.course-row-meta{min-width:80px}.course-row h2{font-size:21px}.module-symbol{width:50px;height:64px}.reader-layout{display:block;padding-top:20px}.reader-sidebar{display:none}.reader-sidebar.mobile-visible{display:block;position:relative;max-height:none;margin-bottom:35px;background:var(--surface);padding:25px}.mobile-directory{display:inline-flex;margin-bottom:25px}.lesson{max-width:100%}.lesson-heading h1{font-size:38px}.lesson-topic h2{font-size:25px}.lesson-topic>p{font-size:16px}.lab-layout{grid-template-columns:1fr;gap:35px}.lab-nav{position:relative;top:0;display:flex;flex-direction:row;overflow:auto;gap:8px}.lab-nav button{min-width:210px}.sim-body{padding:25px}.sim-tabs button{padding:13px 10px}.sim-readout{gap:20px}.race-visual{gap:10px}.thread{padding:20px 15px}.thread span{font-size:12px}.thread b{font-size:20px}.quiz-stats{justify-content:space-between;gap:20px}.quiz-stats span{gap:10px}.quiz-stats b{font-size:24px}.quiz-filters label{flex-wrap:wrap}.quiz-card{padding:30px}.quiz-card h2{font-size:25px}.page-heading{margin-bottom:35px}}@media(max-width:580px){:root{--gutter:20px}.site-header{justify-content:space-between}.brand{font-size:27px}.brand-mark{width:23px;height:25px}.header-actions{gap:8px}.mobile-toggle{display:block}.main-nav{display:none;position:absolute;left:0;right:0;top:78px;background:var(--surface);padding:20px;flex-direction:column;align-items:stretch;gap:5px}.main-nav.open{display:flex}.main-nav a{padding:13px 15px;font-size:16px}.hero{padding-top:35px}.hero h1{font-size:39px;line-height:1.2;letter-spacing:-.06em;white-space:nowrap}.hero-sub{font-size:15px;line-height:1.8;max-width:300px;margin:20px auto 0}.folder-stack{padding-top:96px;margin-top:32px}.folder-back{font-size:11px;height:95px;padding-left:12px;clip-path:polygon(0 22px,0 0,25% 0,28% 22px,100% 22px,100% 100%,0 100%)}.folder-back span{top:4px}.folder-yellow{top:24px;clip-path:polygon(0 22px,25% 22px,25% 0,49% 0,52% 22px,100% 22px,100% 100%,0 100%)}.folder-yellow span{left:28%}.folder-cyan{top:48px;clip-path:polygon(0 22px,50% 22px,50% 0,74% 0,77% 22px,100% 22px,100% 100%,0 100%)}.folder-cyan span{left:53%}.folder-green{top:72px;clip-path:polygon(0 22px,75% 22px,75% 0,97% 0,100% 22px,100% 100%,0 100%)}.folder-green span{left:78%}.front-folder{display:block;padding:30px 25px 25px;min-height:0}.folder-copy h2{font-size:29px;line-height:1.35}.folder-copy p{font-size:15px;line-height:1.85;margin:19px 0}.folder-note{font-size:12px;margin-top:13px}.system-figure{margin:35px 0 0;padding:0 4px}.system-layer{flex-direction:row;align-items:center;gap:8px;padding:13px 15px;min-height:48px;transform:rotate(-3deg);font-size:12px}.system-layer b{font-size:12px;gap:7px}.figure-caption{font-size:12px;margin-top:20px}.hero-bottom{gap:18px 22px;padding:25px 0 0;justify-content:space-between}.hero-bottom span{font-size:12px}.hero-bottom span strong{font-size:23px}.hero-bottom a{width:100%;justify-content:flex-end;margin-top:6px;font-size:14px}.section-space{padding-top:80px}.section-intro{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.section-intro h2{font-size:32px}.section-intro p{font-size:16px;line-height:1.8}.path-group{grid-template-columns:1fr;gap:20px;padding:25px}.path-group h3{font-size:27px}.path-group p{font-size:14px}.path-links{gap:2px}.path-links a{font-size:16px;min-height:45px}.focus-list details{padding:0 22px}.focus-list summary{font-size:17px;line-height:1.65;padding:22px 0;gap:12px}.focus-answer p{font-size:15px}.finish-section{grid-template-columns:1fr;gap:30px;padding-bottom:80px}.finish-section h2{font-size:43px}.finish-section p{font-size:16px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:25px}.footer-top .brand{font-size:47px}.footer-top p{grid-column:1/-1;grid-row:2;margin:0;font-size:13px}.footer-top>a:last-child{font-size:14px;justify-content:flex-end}.footer-bottom{gap:12px;margin-top:30px;align-items:flex-start}.footer-bottom>span{width:100%;font-size:12px;line-height:1.8}.page-wrap{padding-top:35px;padding-bottom:70px}.page-heading h1{font-size:38px}.page-heading p{font-size:16px}.segmented{display:flex}.segmented button{flex:1;font-size:13px;padding:10px 7px}.course-overview{gap:12px;font-size:12px;margin:25px 0 30px}.course-row{padding:24px 20px;gap:15px;align-items:flex-start;flex-wrap:wrap}.course-row h2{font-size:22px;line-height:1.4}.course-row p{font-size:14px;line-height:1.8}.module-symbol{width:39px;height:47px}.module-symbol svg{width:19px}.course-row-title{width:calc(100% - 60px)}.course-row-meta{flex-direction:row;align-items:center;justify-content:flex-start;padding-left:54px;width:100%;gap:15px;font-size:12px}.course-row-meta svg:last-child{margin-left:auto}.topic-preview{gap:8px 12px;font-size:12px}.scope-note{padding:25px}.scope-note p{font-size:15px}.reader-layout{padding-left:20px;padding-right:20px}.lesson-heading h1{font-size:33px}.lesson-heading p{font-size:16px}.lesson-meta{font-size:13px}.lesson-goal{padding:22px}.lesson-goal p{font-size:15px}.lesson-topic h2{font-size:25px}.lesson-topic{margin-top:42px}.scenario{padding:20px}.scenario p{font-size:15px}.lesson-warning{padding:24px}.lesson-warning p{font-size:15px}.lesson-notes textarea{padding:17px;min-height:210px}.lesson-actions{gap:20px}.lesson-actions .primary{width:100%}.next-lesson{font-size:14px;padding:20px}.code-block pre{padding-left:18px;padding-right:18px}.code-block code{font-size:12px}.simulation .sim-tabs{gap:3px;padding:6px}.sim-tabs button{font-size:14px;padding:12px 8px}.sim-body{padding:22px 18px}.sim-body>p{font-size:15px}.memory-pages{gap:7px;margin:22px 0}.memory-pages button{min-height:100px;gap:10px;padding:15px 4px}.memory-pages button b{font-size:18px}.memory-pages button span{font-size:10px}.sim-readout{gap:12px 20px;font-size:12px}.sim-readout b{margin-left:3px}.sim-message{padding:17px;min-height:90px}.button-row{gap:12px}.button-row button{font-size:13px;min-height:44px;padding:12px 14px}.button-row .text-button{padding:7px 0}.fine{font-size:12px!important}.sim-controls label{font-size:13px;gap:8px;flex-wrap:wrap}.sim-controls select{padding:11px 9px;font-size:13px}.job-list{gap:6px}.job{padding:15px 10px;gap:7px}.job b{font-size:15px}.job span{font-size:11px;line-height:1.6}.time-unit{height:46px;font-size:15px}.sim-controls{gap:15px;align-items:flex-start}.sim-controls input{width:125px}.race-visual{margin:25px 0}.thread{padding:18px 12px;gap:8px;flex:1}.thread b{font-size:18px}.thread span{font-size:11px;line-height:1.6}.shared-count{font-size:12px;min-width:65px}.shared-count strong{font-size:48px}.race-steps p{font-size:12px;padding:9px 12px}.lab-intro{padding:20px;gap:12px}.lab-intro p{font-size:14px}.lab-detail h3{font-size:27px}.lab-detail p,.lab-detail li{font-size:15px}.lab-page .section-space{padding-top:70px}.lab-nav button{min-width:185px;padding:20px 17px}.lab-nav button b{font-size:15px}.code-heading{align-items:center}.code-heading h4{font-size:16px}.code-heading .text-button{font-size:12px;white-space:nowrap}.quiz-page .page-heading h1{font-size:34px}.quiz-stats{padding:20px;gap:10px}.quiz-stats span{flex-direction:column;gap:8px;font-size:12px;align-items:flex-start}.quiz-stats b{font-size:25px}.quiz-filters>label{font-size:14px;gap:10px}.quiz-filters select{width:100%;font-size:14px}.quiz-filters>label:first-child{width:100%;display:block}.quiz-filters select{margin-top:12px}.quiz-card{padding:26px 20px}.quiz-card h2{font-size:23px;line-height:1.55}.quiz-top{font-size:12px;margin-bottom:23px}.quiz-options button{padding:16px 13px;font-size:15px;gap:12px}.quiz-explanation{padding:20px}.quiz-explanation p{font-size:15px}.quiz-navigation button{font-size:14px;padding:13px 17px}.search-overlay{padding:20px 12px}.search-dialog{max-height:90vh}.search-input{padding:15px;gap:10px}.search-input input{font-size:14px}.search-results{max-height:76vh}.search-results>button{padding:18px 20px;font-size:16px}.search-suggestions{padding:22px}.sources>div{grid-template-columns:1fr}.sources h2{font-size:28px}}:root{--highlight:#b8e8cf;--accent-ink:#172b25;--footer:#0b1210;--tab-bg:#23322c;--chosen:#3b5148;--warning-ink:#ede3a3;--brand-icon:#b8e8cf}:root[data-theme=light]{--bg:#f5f7f3;--surface:#eaf0e9;--surface-raised:#dce7dd;--ink:#172b25;--muted:#52665c;--accent:#245e4b;--accent-ink:#f5faf7;--highlight:#245e4b;--footer:#e2ece3;--tab-bg:#dce7dd;--chosen:#c4ddc9;--warning-ink:#76621f;--brand-icon:#245e4b}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--surface);color:var(--ink)}.header-actions{align-items:center}.header-start{display:inline-flex;align-items:center;gap:8px;background:var(--highlight);color:var(--bg);font-size:14px;min-height:42px;padding:10px 14px;white-space:nowrap}.header-start:hover{color:var(--bg);transform:translateY(-2px)}.primary{color:var(--accent-ink)}.primary:hover:not(:disabled){color:var(--deep)}.dark-button,.dark-button:hover{color:#f1f5f2}.brand-mark i{background:var(--brand-icon)}.brand-mark i:nth-child(3){background:var(--accent)}.sim-tabs{background:var(--tab-bg)}footer{background:var(--footer)}.lesson-meta,.scenario>span,.lesson-goal b,.related-labs a,.shared-count,.quiz-stats b,.quiz-explanation b,.lab-intro svg{color:var(--highlight)}.reader-sidebar>a.active{color:var(--highlight)}.quiz-options button.chosen{background:var(--chosen)}.quiz-options button.correct{background:var(--mint);color:var(--deep)}.quiz-explanation.wrong b{color:var(--warning-ink)}.sidebar-progress .progress-track i,.course-overview .progress-track i{background:var(--highlight)}.skip-link{color:var(--accent-ink)}.sim-tabs button[aria-selected=true]{color:var(--deep)}@media(min-width:581px)and (max-width:1350px){.brand-sub{display:none}.site-header{gap:24px}.main-nav{gap:22px}.search-trigger kbd{display:none}}@media(max-width:800px){.header-start span{display:none}.header-start{padding:10px 12px}.site-header{gap:12px}.main-nav{gap:16px}}@media(max-width:580px){.header-actions{gap:6px}.theme-toggle{width:38px;height:40px}.header-start{min-height:40px;padding:10px}.search-trigger{padding:10px 8px}.mobile-toggle{padding:9px 6px}.hero h1{font-size:clamp(30px,10vw,39px)}}.visual-index-body{display:grid;grid-template-columns:1fr 1.15fr;gap:50px;align-items:stretch}.visual-index-links{display:flex;flex-direction:column;gap:7px}.visual-index-links>a{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 25px;font-size:25px;line-height:1.5}.visual-index-links>a small{display:block;color:var(--muted);font-size:14px;margin-top:8px}.visual-index-links>a.active{background:var(--surface-raised);color:var(--ink)}.preview-stage{position:relative;min-height:400px;background:var(--surface);overflow:hidden;align-self:center;aspect-ratio:1.44}.preview-stage img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .24s}.preview-stage img.selected{opacity:1}.visual-index-links>a:focus-visible{outline-offset:-3px}@media(max-width:800px){.visual-index-body{gap:25px;grid-template-columns:1fr 1fr}.visual-index-links>a{font-size:20px;padding:19px 15px}.visual-index-links>a small{font-size:13px}.preview-stage{min-height:280px}}@media(max-width:580px){.visual-index-body{grid-template-columns:1fr;gap:24px}.visual-index-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.visual-index-links>a{font-size:17px;padding:18px 15px;align-items:flex-start;gap:8px}.visual-index-links>a small{font-size:12px;line-height:1.7}.visual-index-links>a svg{width:16px;margin-top:4px}.preview-stage{grid-row:1;min-height:0;aspect-ratio:1.44}.visual-index-links>a.active{background:var(--surface-raised)}}.focus-list details{background:none;padding:0;margin-bottom:16px}.focus-list summary{padding:20px 0}.focus-answer{background:var(--surface);padding:25px 30px;color:var(--ink)}.focus-answer .text-link{color:var(--highlight)}.focus-answer p,.scope-note p{max-width:60ch}.finish-section{padding-top:160px}@media(max-width:580px){.focus-answer{padding:22px}.finish-section{padding-top:110px}}.visual-index-links>a{font-size:21px;padding:16px;gap:18px}.index-thumbnail{width:160px;height:120px;object-fit:cover;flex-shrink:0}.visual-index-links>a>span{flex:1}.visual-index-body{grid-template-columns:1.2fr 1fr;gap:35px}@media(max-width:1100px)and (min-width:581px){.visual-index-body{grid-template-columns:1fr}.visual-index-links{display:grid;grid-template-columns:1fr 1fr}.visual-index-links>a{font-size:18px;gap:14px;padding:12px}.visual-index-links .index-thumbnail{width:130px;height:150px}.preview-stage{display:none}}@media(max-width:580px){.visual-index-body{display:block}.visual-index-links{grid-template-columns:1fr 1fr;gap:14px}.visual-index-links>a{flex-direction:column;align-items:flex-start;font-size:17px;padding:0 0 15px;gap:0;position:relative}.visual-index-links>a>span{padding:15px 12px 0}.visual-index-links>a svg{position:absolute;bottom:15px;right:10px}.visual-index-links .index-thumbnail{width:100%;height:132px;object-fit:cover}.visual-index-links>a small{padding-right:5px}.preview-stage{display:none}}details:not([open])>.focus-answer{display:none}.folder-tabs{position:static}@media(max-width:800px){.finish-section{grid-template-columns:1fr;gap:30px}.folder-note,.figure-caption{font-size:13px}}@media(max-width:580px){.folder-back,.folder-note,.hero-bottom span,.figure-caption,.visual-index-links>a small,.footer-bottom>span,.fine{font-size:13px!important}.memory-pages button span,.memory-pages button small,.job span,.thread span{font-size:13px}.footer-bottom>span{line-height:1.8}.folder-back{font-weight:500}.folder-back span{top:3px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
