@charset "UTF-8";
:root{--paper:#f7f7f1;--white:#fff;--ink:#263d33;--body:#46544b;--muted:#717c71;--line:#dedfd4;--green:#263d33;--lime:#dce99a;--soft:#edf0e4;--orange:#bf5930;--radius:18px;--sidebar:240px;font-family:Arial,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;font-size:15px;line-height:1.6}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;letter-spacing:-.04em;line-height:1.16}p{color:var(--body)}h1{font-size:58px}h2{font-size:32px}h3{font-size:21px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:4px}::selection{background:var(--lime)}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.muted{color:var(--muted)}.small{font-size:12px;line-height:1.55}.eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.15em;font-weight:700;line-height:1.6;color:#68745e}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.initial{max-width:600px;margin:10vh auto;padding:32px}.initial p{margin:16px 0}.skip-link{position:fixed;top:-100px;left:20px;background:var(--green);color:white;padding:12px;z-index:100}.skip-link:focus{top:12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#f0f1e9;border-right:1px solid var(--line);padding:30px 20px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;margin:0 12px 39px;font-weight:700;font-size:20px;line-height:1.08;letter-spacing:-.05em}.brand img{width:41px;height:41px}.brand em{font-style:normal;font-weight:400}.workspace-label{font-size:9px;letter-spacing:.17em;font-weight:700;color:var(--muted);display:block;margin:0 12px 14px}.sidebar nav{display:grid;gap:5px}.sidebar nav>a{display:flex;align-items:center;gap:12px;font-size:12px;padding:12px;border-radius:8px;position:relative}.sidebar nav>a[aria-current]{background:var(--green);color:#f5f6ed}.sidebar nav>a:not([aria-current]):hover{background:#e4e7dc}.sidebar nav .icon{width:17px;height:17px}.nav-dot{width:5px;height:5px;background:var(--lime);border-radius:50%;margin-left:auto}.sidebar-course{border-top:1px solid var(--line);margin-top:27px;padding-top:24px}.module-link{width:100%;display:flex;align-items:center;gap:10px;background:none;border:0;font-size:10px;line-height:1.5;text-align:left;padding:10px 12px;color:var(--muted);min-height:36px}.module-link:hover{color:var(--ink)}.module-link>span{font-size:9px;color:#86917d;font-variant-numeric:tabular-nums}.module-link.current{color:var(--ink);font-weight:700}.module-link>i{width:5px;height:5px;background:var(--orange);border-radius:50%;margin-left:auto}.all-modules{margin:12px}.all-modules>span{margin-left:7px;color:var(--muted);font-size:9px}.sidebar-bottom{margin-top:auto;padding:24px 12px 0}.small-line{display:flex;justify-content:space-between;gap:5px;font-size:10px}.small-line strong{font-weight:400;color:var(--muted)}.meter{height:3px;background:#dfe3d5;margin:10px 0 15px;border-radius:5px;overflow:hidden}.meter>span{display:block;height:100%;background:var(--green);width:100%;transform:scaleX(0);transform-origin:left;transition:transform .2s}.meter.progress-1>span{transform:scaleX(0.166667)}.meter.progress-2>span{transform:scaleX(0.333333)}.meter.progress-3>span{transform:scaleX(0.500000)}.meter.progress-4>span{transform:scaleX(0.666667)}.meter.progress-5>span{transform:scaleX(0.833333)}.meter.progress-6>span{transform:scaleX(1.000000)}.sidebar-bottom>.text-button{font-size:10px}.sidebar-bottom>.text-button .icon{width:14px}.user-chip{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);margin-top:20px;padding-top:19px;font-size:12px;line-height:1.4}.avatar{display:grid;place-items:center;width:32px;height:32px;background:#e0e6ce;border:1px solid #d5dcc1;border-radius:50%;font-size:12px;color:var(--ink);flex-shrink:0}.user-chip small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.user-spark{margin-left:auto;font-size:23px;color:#809576}.shell{margin-left:var(--sidebar)}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 46px;border-bottom:1px solid var(--line);gap:16px}.breadcrumb{font-size:11px;color:var(--muted)}.topbar-right{display:flex;gap:28px;align-items:center}.save-status{font-size:9px;color:var(--muted);display:flex;align-items:center;gap:7px}.save-status i{width:5px;height:5px;background:#839a60;border-radius:50%}.help-link{border:0;background:none;display:flex;align-items:center;gap:9px;font-size:11px;padding:8px 0}.help-link span{width:19px;height:19px;border:1px solid var(--line);border-radius:50%;text-align:center;font-size:11px}.mobile-menu{display:none!important}.main{max-width:1460px;margin:0 auto;padding:50px 46px 0}.button{border:1px solid transparent;border-radius:7px;min-height:46px;padding:12px 19px;display:inline-flex;align-items:center;justify-content:center;gap:22px;font-size:12px;font-weight:500;text-align:center;line-height:1.5;transition:background .15s,transform .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{background:var(--green);color:#fff}.button.primary:hover:not(:disabled){background:#385143}.button.secondary{border-color:#d4dace;background:transparent;color:var(--ink)}.button.secondary:hover:not(:disabled){background:var(--soft)}.button .icon{width:17px;height:17px}.text-button,.text-link{display:inline-flex;align-items:center;gap:8px;font-size:11px;background:none;border:0;padding:0;line-height:1.6}.text-link{font-weight:700}.text-button:hover,.text-link:hover{text-decoration:underline;text-underline-offset:4px}.text-link .icon{width:17px}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;background:none;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.quiet-badge{font-size:10px;background:#eaeddf;border:1px solid #dce1ce;border-radius:4px;padding:4px 9px;white-space:nowrap}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:50px;align-items:center;min-height:430px}.hero h1{margin:22px 0 22px;font-size:clamp(40px,4.6vw,67px);letter-spacing:-.055em;line-height:1.03}.hero h1>span{color:#788569}.hero-copy>p{font-size:13px;line-height:1.8;max-width:420px}.hero-copy>.button{margin-top:28px;min-height:48px;padding-left:21px;padding-right:21px;gap:42px}.hero-footnote{font-size:9px;color:var(--muted);margin-top:17px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hero-footnote>.icon{width:13px;height:13px}.hero-footnote>span{margin-left:6px;padding-left:10px;border-left:1px solid var(--line)}.hero-diagram{padding:26px 33px;background:#e9edde;min-height:410px;border:1px solid #dde2d2;border-radius:18px;position:relative;overflow:hidden}.hero-diagram:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#a4b192 1px,transparent 1px);background-size:18px 18px;opacity:.2;pointer-events:none}.diagram-top{position:relative;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:9px;color:#829072;margin-bottom:28px}.tiny-pill{padding:4px 7px;border:1px solid #cbd5b9;border-radius:4px;font-size:8px;letter-spacing:.05em;background:#e7eccf}.hero-node{position:relative;display:flex;align-items:center;gap:12px;padding:12px 15px;background:#f8f9f2;border:1px solid #d4dcca;border-radius:9px;min-height:67px;z-index:1}.node-number{font-size:10px;width:26px;height:26px;border-radius:50%;border:1px solid #d4dcc8;display:grid;place-items:center;color:#79876c}.hero-node small{display:block;font-size:8px;letter-spacing:.1em;color:#748167;margin-bottom:3px}.hero-node strong{font-size:12px;font-weight:500;line-height:1.4;display:block}.hero-node>.icon,.node-status{margin-left:auto;width:17px;color:#738267}.node-status{width:20px;height:20px;background:#dfe8c9;border-radius:50%;font-size:11px;text-align:center}.n1{margin-right:36px}.n2{margin-left:20px;margin-right:16px}.n3{margin-left:40px}.connector{height:15px;border-left:1px dashed #9aaa85;margin-left:50%}.diagram-result{position:relative;display:flex;align-items:center;gap:12px;background:var(--green);border-radius:9px;color:white;padding:13px 17px;margin-top:22px;margin-left:18px;margin-right:18px;z-index:2;transform:rotate(-3deg);box-shadow:0 6px 12px #263d3312}.coin-mark{display:grid;place-items:center;border-radius:50%;width:32px;height:32px;background:var(--lime);color:var(--green);font-size:20px}.diagram-result small{display:block;font-size:7px;letter-spacing:.1em;color:#c9d5c0}.diagram-result strong{font-size:20px;font-weight:400}.result-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);margin-left:auto}.diagram-caption{position:relative;text-align:center;font-size:9px;color:#6c7d60;margin-top:18px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.section-top h2{margin-top:9px;font-size:27px}.today-section{padding:48px 0 36px;margin-top:21px;border-bottom:1px solid var(--line)}.lesson-preview{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid #d9dfcf;border-radius:12px;padding:23px 24px;transition:border-color .15s}.lesson-preview:hover{border-color:#8c9f70}.lesson-preview-icon{width:56px;height:61px;border:1px solid #d8e1c6;border-radius:9px;background:#edf2dd;display:grid;place-items:center;flex-shrink:0}.lesson-preview-icon .icon{width:25px;height:25px}.mini-label{font-size:8px;letter-spacing:.14em;color:#849171;font-weight:700}.lesson-preview h3{font-size:20px;margin:7px 0 7px}.lesson-preview p{font-size:11px;color:var(--muted)}.preview-progress{margin-left:auto;white-space:nowrap;text-align:right}.preview-progress strong{font-size:27px;font-weight:400;letter-spacing:-.04em;line-height:1}.preview-progress strong>span{font-size:17px;color:#99a18e}.preview-progress small{display:block;font-size:8px;color:var(--muted);margin-top:6px}.circle-arrow{width:37px;height:37px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;margin-left:7px;flex-shrink:0}.circle-arrow .icon{width:17px}.learning-method{padding:36px 0}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.method-grid article{border-top:1px solid var(--line);padding-top:17px}.method-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#9caa8c;margin-bottom:20px}.method-top .icon{color:#839372;width:20px}.method-grid h3{font-size:22px;margin-bottom:10px}.method-grid p{font-size:12px;color:var(--muted);line-height:1.7;max-width:240px}.projects-teaser{border-top:1px solid var(--line);padding:34px 0;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:22px;align-items:center}.projects-teaser h2{font-size:28px;margin:10px 0 15px}.projects-teaser p{font-size:11px;color:var(--muted);line-height:1.8;margin-bottom:20px}.mini-project{padding:20px;border-radius:12px;min-height:195px;border:1px solid #dae0ce;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden}.mini-project.rpg{background:#e6eadb}.mini-project.football{background:#ecebdd}.mini-project>span{font-size:8px;letter-spacing:.1em;color:#748165}.mini-project>.icon,.ball-icon{width:38px;height:38px;margin:20px 0 15px;color:#637b55}.ball-icon{font-size:41px;line-height:1;color:#927845}.mini-project>strong{font-size:19px;font-weight:400;letter-spacing:-.04em}.mini-project>small{font-size:9px;color:#7e856d;margin-top:5px}.page-footer{border-top:1px solid var(--line);padding:22px 0 25px;display:flex;justify-content:space-between;color:#8d9684;font-size:9px}
.lesson-top{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;color:var(--muted);margin-bottom:27px}.lesson-top>span{display:flex;gap:6px;align-items:center}.lesson-top .icon{width:13px;height:13px}.back-link:hover{text-decoration:underline}.lesson-heading h1{font-size:43px;max-width:720px;margin:15px 0}.lesson-heading>p{max-width:650px;font-size:13px;color:var(--muted);line-height:1.8}.step-nav{display:grid;grid-template-columns:repeat(6,1fr);gap:0;margin:34px 0 36px;border-bottom:1px solid var(--line)}.step-button{border:0;background:none;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 10px 15px 0;border-bottom:2px solid transparent;text-align:left;color:var(--muted);min-width:0}.step-button.active{border-bottom-color:var(--green);color:var(--ink)}.step-button>span{font-size:9px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:1px solid #d5dccc}.step-button>strong{font-size:10px;line-height:1.4;font-weight:400}.step-button.done>span{background:#e5eccf;border-color:#c9d5b7}.step-button .icon{width:12px;height:12px}.step-button.active>span{background:var(--green);color:white;border-color:var(--green)}.lesson-body{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:38px;padding-bottom:35px}.lesson-content>h2{font-size:29px;max-width:600px;margin:10px 0 19px;outline:0}.lesson-content>p{font-size:13px;line-height:1.85;margin-bottom:15px}.task-callout{display:flex;align-items:flex-start;gap:12px;border:1px solid #dce3d2;background:#eef1e5;padding:16px 18px;margin:23px 0}.task-callout>.icon{width:17px;margin-top:2px;color:#778c56}.task-callout>p{font-size:12px;line-height:1.7}.lesson-aside{padding:0 0 0 21px;border-left:1px solid var(--line);align-self:start}.lesson-aside>.eyebrow{font-size:8px}.lesson-aside p{font-size:11px;line-height:1.8;margin-top:10px;color:var(--muted)}.aside-rule{height:1px;background:var(--line);margin:25px 0}.lesson-aside h3{font-size:18px}.lesson-aside .text-link{font-size:10px;margin-top:15px;display:flex;align-items:flex-start;gap:5px}.aside-note{margin-top:26px;font-size:10px;line-height:1.8;color:#728461}.aside-note>.icon{display:block;margin-bottom:8px;width:18px}.exercise{background:white;border:1px solid #dbe1d1;border-radius:12px;margin:25px 0;overflow:hidden}.exercise-header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:14px 20px;border-bottom:1px solid #e8ebdf;flex-wrap:wrap}.exercise-header>span:first-child{font-size:8px;letter-spacing:.11em;display:flex;gap:8px;align-items:center;font-weight:700}.exercise-header .icon{width:14px;height:14px;color:#798e65}.exercise-header>span:last-child{font-size:9px;color:var(--muted)}.model-label{padding:3px 7px;background:#f2f3eb;border-radius:3px}.interface-layout{padding:24px;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:25px}.segmented{display:flex;padding:3px;background:#edf0e5;border-radius:6px;margin-bottom:18px}.segmented button{width:50%;padding:7px 8px;border:0;background:transparent;border-radius:4px;font-size:10px}.segmented button[aria-pressed=true]{background:#fff;box-shadow:0 1px 3px #263d3311}.chat-preview{border-radius:10px;background:#e8eeea;padding:13px;min-height:259px;border:1px solid #d9e0d6}.chat-title{display:flex;gap:8px;align-items:center;font-size:11px;line-height:1.2}.chat-title .avatar{width:27px;height:27px;font-size:10px}.chat-title small{display:block;font-size:8px;color:#84907b;margin-top:3px}.chat-title>span:last-child{margin-left:auto;color:#94a18b}.chat-bubble{background:white;border-radius:8px 8px 8px 1px;padding:14px;margin-top:15px;font-size:10px;line-height:1.7}.chat-bubble>strong{font-size:11px}.chat-bubble>p{margin:8px 0 10px;font-size:10px}.fake-button{border:1px solid #c4d2b3;border-radius:5px;background:#dae5ce;text-align:center;font-size:10px;padding:10px 8px;margin-top:5px;color:#3e5a33}.game-preview{border:1px solid #d6dfc7;border-radius:10px;padding:14px;background:#f1f3e7;text-align:center;min-height:259px}.game-caption{display:flex;justify-content:space-between;gap:10px;font-size:7px;color:#8a9876;letter-spacing:.1em}.hero-shield{width:53px;height:53px;display:grid;place-items:center;background:#e0e7cf;border:1px solid #d2daba;border-radius:50%;margin:13px auto 9px;color:#6f8354}.hero-shield>.icon{width:30px;height:30px}.game-preview>h3{font-size:20px}.game-preview>p{font-size:9px;margin:4px 0 10px;color:#869471}.game-balance{display:flex;justify-content:space-between;align-items:center;font-size:9px;padding:8px 0;border-top:1px solid #dbe3cd}.game-balance strong{font-size:16px;font-weight:400}.game-balance i{font-style:normal;color:#a4ad5e}.interface-note{padding-top:10px}.number-tag{font-size:10px;color:#809268;letter-spacing:.06em}.interface-note h3{font-size:21px;margin:13px 0}.interface-note>p{font-size:11px;line-height:1.8;color:var(--muted)}.note-line{font-size:11px;line-height:1.75;color:#687f50;display:flex;align-items:flex-start;gap:10px;padding:15px 0}.note-line>.icon{width:17px;height:17px;margin-top:2px}.exercise-bottom{padding:12px 20px;background:#f7f9f1;border-top:1px solid #e3e8d8;font-size:10px;display:flex;align-items:center;gap:8px;color:#70825b}.exercise-bottom>.icon{width:14px;height:14px}.quiz{border:0;padding:23px;margin:0;min-width:0}.quiz legend{padding:23px 0 14px;font-size:17px;line-height:1.5;font-weight:500;width:100%}.option{display:flex;gap:12px;align-items:center;padding:14px 16px;border:1px solid #dfe4d6;border-radius:7px;margin-bottom:10px;cursor:pointer;font-size:12px;line-height:1.6;position:relative;min-height:50px}.option:hover{background:#f7f9f1}.option input{position:absolute;opacity:0;width:1px;height:1px}.option:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:3px}.radio-dot{width:16px;height:16px;border-radius:50%;border:1px solid #b5c0a7;flex-shrink:0}.option input:checked+.radio-dot{border:5px solid var(--green)}.option.correct{border-color:#8eac70;background:#f1f6e7}.option.incorrect{border-color:#d5b394;background:#fcf5ed}.option>b{margin-left:auto;color:#80945d}.feedback{padding:15px 23px 20px;border-top:1px solid var(--line)}.feedback strong{font-size:13px;font-weight:700}.feedback p{font-size:12px;line-height:1.75;margin-top:5px}.feedback.success{background:#f3f7ea}.feedback.retry{background:#fbf5ed}.trace-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:18px 20px}.switch-label{display:flex;align-items:center;gap:7px;font-size:10px;cursor:pointer;position:relative}.switch-label input{position:absolute;opacity:0;width:1px;height:1px}.switch-label:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:4px}.switch{width:28px;height:16px;border-radius:12px;background:#bac2b1;position:relative;display:inline-block;transition:background .2s}.switch:after{content:"";width:12px;height:12px;background:#fff;border-radius:50%;position:absolute;left:2px;top:2px;transition:transform .2s}.switch-label input:checked+.switch{background:var(--green)}.switch-label input:checked+.switch:after{transform:translateX(12px)}.trace-controls>.text-button{font-size:9px}.trace-pipeline{display:flex;gap:8px;align-items:center;padding:5px 20px 20px}.trace-node{padding:15px 8px;border:1px solid #dce3d2;background:#f5f7ee;border-radius:7px;flex:1;text-align:center;transition:background .15s}.trace-node>.icon{display:block;margin:0 auto 10px;color:#7c9264}.trace-node strong{display:block;font-size:11px;font-weight:500}.trace-node small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.trace-node.running{background:#dce99a;border-color:#9bad68}.trace-arrow{color:#9dab8b;font-size:16px}.balance-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 20px;border-top:1px solid var(--line);background:#fbfcf6;flex-wrap:wrap}.balance-row>div>span{font-size:9px;color:var(--muted);display:block}.balance-row>div>strong{font-size:28px;font-weight:400;line-height:1.6}.balance-row>div>strong.claim-status{font-size:11px}.balance-row strong>i{font-size:17px;font-style:normal;margin-left:6px;color:#afae65}.balance-row>.button{font-size:10px;min-height:42px;gap:14px;padding:10px 12px}.trace-output{margin:16px 20px;padding:14px 15px;background:#273c32;border-radius:6px;min-height:75px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.trace-output p{color:#d5e0ca;font-size:10px;line-height:1.9}.practice-checks{padding:0 20px 17px;display:grid;gap:6px}.practice-checks>span{font-size:10px;display:flex;align-items:center;gap:7px;color:#86917c}.practice-checks>span.checked{color:#5a7741}.practice-checks i{width:13px;height:13px;border:1px solid #d0d9c3;border-radius:50%}.practice-checks .icon{width:13px;height:13px}.model-disclaimer{font-size:9px!important;line-height:1.7!important;color:var(--muted);padding:12px 20px;border-top:1px solid #e7ebde;background:#f8faf3}.brief-fields{padding:22px}.brief-fields>label:not(.check-label){display:block;font-size:12px;margin-bottom:18px}.brief-fields>label>span:not(.check-label span){display:block;margin-bottom:8px}.brief-fields label b{font-size:9px;font-weight:400;color:#94a37e;margin-right:9px}.brief-fields textarea,.copy-fallback{width:100%;border:1px solid #d7decd;border-radius:6px;background:#fbfcf7;padding:12px;font-size:12px;color:var(--ink);line-height:1.7;resize:vertical;min-height:85px;display:block}.brief-fields textarea::placeholder{color:#939d86;font-size:11px}.hint{font-size:11px;border:1px solid #e1e7d6;border-radius:7px;padding:12px 15px;margin:16px 0;background:#f5f8ed}.hint summary{cursor:pointer;font-weight:500}.hint p{margin-top:10px;line-height:1.8}.check-label{display:flex!important;align-items:flex-start;gap:9px;font-size:11px;line-height:1.7;cursor:pointer;margin:10px 0}.check-label>input{margin-top:4px;accent-color:var(--green);flex-shrink:0}.check-label>span{margin-bottom:0!important;display:block}.brief-actions{display:flex;align-items:center;gap:20px;margin:22px 0 13px;flex-wrap:wrap}.brief-actions .button{font-size:10px;gap:15px;min-height:42px}.brief-actions .text-button{font-size:10px}.review-title{font-size:11px;font-weight:700;margin-top:21px;margin-bottom:10px}.deeper{border-bottom:1px solid var(--line);padding:0 0 18px;margin-top:24px}.deeper summary{display:flex;align-items:center;gap:9px;font-size:12px;cursor:pointer;list-style:none}.deeper summary::-webkit-details-marker{display:none}.deeper .icon{width:15px;height:15px;color:#8b9a75}.deeper[open] .icon{transform:rotate(45deg)}.deeper>p{font-size:12px;line-height:1.85;margin-top:15px;max-width:700px}.lesson-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-top:27px}.lesson-actions>div{text-align:right}.lesson-actions .small{margin-bottom:8px;font-size:9px}.lesson-actions .button{font-size:11px;min-height:43px}
.page-title{padding:7px 0 32px;max-width:730px}.page-title h1{font-size:45px;margin:16px 0}.page-title p{font-size:14px;line-height:1.8;color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-card{background:#fff;border:1px solid #dce1d2;border-radius:13px;overflow:hidden}.project-art{height:160px;padding:22px;position:relative;overflow:hidden}.project-art.rpg{background:#e5ecda}.project-art.football{background:#edead6}.project-art>span{font-size:9px;letter-spacing:.1em;position:relative;z-index:1}.project-art>.icon{position:absolute;width:75px;height:75px;right:42px;top:44px;stroke-width:1;color:#75905a;z-index:1}.project-art.football>.icon{color:#9a8d50}.project-card-body{padding:25px}.project-card h2{margin:17px 0 12px;font-size:29px}.project-card p{font-size:12px;line-height:1.8;min-height:64px;color:var(--muted)}.project-tags{font-size:9px;color:#7f8c6c;margin:18px 0 24px}.project-card .button{width:100%;justify-content:space-between}.project-card p.small{min-height:0;font-size:9px;margin-top:11px}.setup-guide{margin:38px 0;border-top:1px solid var(--line);padding-top:32px;max-width:800px}.setup-guide h2{margin:11px 0 18px;font-size:28px}.setup-guide>p{font-size:13px;line-height:1.9}.setup-steps{padding-left:22px;margin:25px 0}.setup-steps li{padding:0 0 22px 7px;font-size:13px}.setup-steps li::marker{color:#96a37e;font-size:11px}.setup-steps strong{font-size:14px;font-weight:500}.setup-steps p{font-size:12px;margin-top:8px;line-height:1.9}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;padding:17px 19px;border-radius:7px;background:#e9eddf;color:var(--green);line-height:1.9;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.92em}p>code{background:#e9eddf;padding:2px 5px;border-radius:3px}kbd{border:1px solid var(--line);background:white;border-radius:3px;padding:2px 5px;font-size:11px}.section-note{border-top:1px solid var(--line);padding:25px 0 40px;max-width:800px}.section-note h3{font-size:20px}.section-note p{font-size:12px;line-height:1.8;margin-top:12px;color:var(--muted)}.search-box{max-width:580px;display:flex;align-items:center;gap:12px;background:white;border:1px solid #d5ddc8;border-radius:8px;padding:13px 16px;margin:5px 0 27px}.search-box .icon{color:#9aa787;width:18px}.search-box input{width:100%;border:0;background:none;color:var(--ink);font-size:12px;outline:0}.search-box:focus-within{outline:2px solid #869a68;outline-offset:3px}.glossary-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;padding-bottom:40px}.glossary-grid article{border-top:1px solid var(--line);padding:24px 0}.glossary-grid h2{font-size:24px}.glossary-grid p{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}.empty-state{padding:30px 0;font-size:13px}
dialog{border:1px solid #d5dcc9;border-radius:16px;background:var(--paper);color:var(--ink);max-width:640px;width:calc(100% - 32px);max-height:85vh;padding:27px;box-shadow:0 30px 100px #14251922}dialog::backdrop{background:#1c302c66;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:23px}.dialog-top h2{font-size:27px}dialog>p,.dialog-prose p{font-size:13px;line-height:1.8;margin:14px 0}dialog ol,dialog ul{font-size:12px;line-height:1.9;padding-left:20px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.dialog-actions>.button{font-size:11px;min-height:43px}.file-label{cursor:pointer}.file-label input{width:1px;height:1px;position:absolute;opacity:0}.file-label:has(input:focus-visible){outline:3px solid var(--orange);outline-offset:4px}#import-status{color:var(--orange);font-size:12px}.programme-list article{display:flex;gap:18px;border-top:1px solid var(--line);padding:23px 0}.programme-list .number-tag{padding-top:4px}.programme-list h3{font-size:21px}.programme-list p{font-size:12px;margin-top:9px}.programme-list ul{font-size:11px;color:var(--muted);padding-left:17px}.programme-list .text-link{font-size:11px}.completion-mark{width:55px;height:55px;border-radius:50%;background:var(--lime);display:grid;place-items:center}.completion-mark .icon{width:25px}.tomorrow{padding:15px 18px;border:1px solid #dce4ce;background:#eff4e3;border-radius:8px;margin-top:18px;font-size:12px}.tomorrow>p{font-size:12px;margin-top:8px;line-height:1.8}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--green);color:white;border-radius:8px;padding:12px 18px;font-size:12px;max-width:90vw;z-index:100;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1550px){.main{padding-top:70px}.hero{gap:75px;min-height:460px}.hero-diagram{max-width:490px;width:100%;margin-left:auto}.hero-copy>p{font-size:15px}.hero h1{font-size:74px}.hero-footnote{font-size:10px}}
@media(max-width:1200px){:root{--sidebar:218px}.sidebar{padding-left:15px;padding-right:15px}.main{padding:35px 30px 0}.topbar{padding:0 30px}.hero{gap:27px}.hero-diagram{padding:22px}.hero h1{font-size:48px}.hero-copy>p{font-size:12px}.lesson-body{grid-template-columns:minmax(0,1fr)}.lesson-aside{display:grid;grid-template-columns:1fr 1fr;gap:5px 25px;border:1px solid var(--line);border-radius:8px;padding:20px}.lesson-aside>.eyebrow{grid-column:1}.lesson-aside>p:first-of-type{grid-column:1}.lesson-aside h3{grid-column:2;grid-row:1}.lesson-aside>p:last-of-type{grid-column:2;grid-row:2}.lesson-aside .aside-rule,.lesson-aside .aside-note{display:none}.lesson-aside .text-link{grid-column:2}.hero-footnote>span{display:none}.interface-layout{grid-template-columns:1fr 1fr}.projects-teaser{gap:16px}.projects-teaser h2{font-size:25px}.lesson-preview{gap:15px;padding:19px}.lesson-preview h3{font-size:18px}.lesson-preview p{font-size:10px}.topbar-right{gap:16px}.save-status{font-size:8px}.method-grid h3{font-size:20px}}
@media(max-width:950px){:root{--sidebar:195px}.brand{font-size:19px;margin-left:8px;margin-right:0}.brand img{width:35px;height:35px}.sidebar nav>a{font-size:11px;gap:10px;padding:10px}.module-link{font-size:9px;gap:8px;padding-left:10px;padding-right:5px}.workspace-label{font-size:8px;letter-spacing:.1em}.all-modules>span{display:none}.hero h1{font-size:40px}.hero{gap:21px;min-height:355px}.hero-diagram{padding:20px 15px;min-height:365px}.hero-node{gap:8px;padding:10px;min-height:60px}.hero-node strong{font-size:10px}.n1{margin-right:20px}.n2{margin-left:10px;margin-right:10px}.n3{margin-left:20px}.hero-node .node-number{width:23px;height:23px;font-size:8px}.hero-node>.icon{width:14px}.hero-node small{font-size:7px}.diagram-top{margin-bottom:22px}.tiny-pill{font-size:6px}.diagram-top>span:last-child{display:none}.diagram-result{margin-left:5px;margin-right:5px;padding:10px 12px}.diagram-result strong{font-size:18px}.diagram-caption{font-size:8px}.hero-copy>.button{gap:22px;font-size:11px}.hero-footnote{font-size:8px}.save-status{display:none}.projects-teaser{grid-template-columns:1fr 1fr}.projects-teaser>div:first-child{grid-column:1/-1}.projects-teaser h2 br{display:none}.mini-project{min-height:180px}.preview-progress{display:none}.lesson-preview .circle-arrow{margin-left:auto}.lesson-preview>div:nth-child(2){min-width:0}.hero-copy>p br{display:none}.lesson-heading h1{font-size:35px}.page-title h1{font-size:37px}.step-button>strong{font-size:9px}.interface-layout{grid-template-columns:1fr 160px;padding:20px;gap:20px}.interface-note h3{font-size:19px}}
@media(max-width:760px){:root{--sidebar:240px}.sidebar{transform:translateX(-100%);transition:transform .2s;box-shadow:12px 0 30px #263d331a;padding:24px 20px 18px}.sidebar.open{transform:translateX(0)}.sidebar nav>a{font-size:13px;padding:12px}.module-link{font-size:11px;padding:11px}.workspace-label{font-size:9px}.brand{font-size:22px;margin-bottom:30px}.shell{margin-left:0}.mobile-menu{display:inline-grid!important}.topbar{height:66px;padding:0 20px;gap:13px}.breadcrumb{margin-right:auto;font-size:10px}.help-link{font-size:0;gap:0}.help-link span{font-size:12px;width:24px;height:24px}.topbar-right{gap:0}.main{padding:32px 24px 0}.hero{gap:25px;min-height:0;grid-template-columns:1fr 1fr;align-items:center}.hero h1{font-size:43px}.hero-copy>.eyebrow{font-size:8px}.hero-copy>p{font-size:11px}.hero-copy>.button{padding:11px 14px;font-size:10px;min-height:44px;gap:17px}.hero-diagram{min-height:355px}.hero-footnote{font-size:8px}.hero-footnote>.icon{display:none}.today-section{padding-top:37px;margin-top:8px}.section-top h2{font-size:25px}.lesson-preview h3{font-size:18px}.method-grid{gap:18px}.method-grid p{font-size:11px}.method-grid h3{font-size:20px}.projects-teaser{grid-template-columns:1.2fr 1fr 1fr;gap:16px}.projects-teaser>div:first-child{grid-column:auto}.projects-teaser h2{font-size:23px}.projects-teaser p{font-size:10px}.mini-project{padding:16px;min-height:185px}.mini-project strong{font-size:17px}.mini-project small{font-size:8px}.lesson-top{font-size:9px;align-items:flex-start}.lesson-top>span{font-size:8px}.lesson-heading h1{font-size:37px}.lesson-heading>p{font-size:12px}.step-nav{margin-top:25px;margin-bottom:27px;gap:5px}.step-button strong{font-size:9px}.step-button{padding-right:4px}.lesson-content>h2{font-size:29px}.lesson-content>p{font-size:13px}.interface-layout{grid-template-columns:1fr 1fr;gap:24px;padding:23px}.interface-note h3{font-size:22px}.project-grid{gap:18px}.project-card-body{padding:21px}.project-card h2{font-size:25px}.page-title h1{font-size:40px}.project-card p{font-size:11px}.project-card .button{font-size:11px;padding:12px 15px}}
@media(max-width:550px){.main{padding:26px 20px 0}.hero{grid-template-columns:1fr;gap:29px}.hero h1{font-size:49px;max-width:380px;margin:19px 0}.hero h1>span br{display:none}.hero-copy>p{font-size:13px;max-width:370px}.hero-copy>.button{min-height:48px;padding:13px 20px;font-size:12px;gap:35px;margin-top:23px}.hero-footnote{font-size:9px;margin-top:13px}.hero-copy>.eyebrow{font-size:9px}.hero-diagram{min-height:0;padding:23px 30px 19px;max-width:none}.diagram-top{margin-bottom:20px}.tiny-pill{font-size:7px}.diagram-top>span:last-child{display:block;font-size:8px}.hero-node{min-height:53px;padding:9px 13px;gap:12px}.hero-node strong{font-size:11px}.hero-node small{font-size:7px}.hero-node .node-number{width:25px;height:25px;font-size:9px}.n1{margin-right:45px}.n2{margin-left:20px;margin-right:25px}.n3{margin-left:45px}.connector{height:12px}.diagram-result{margin-top:16px;margin-left:20px;margin-right:20px;padding:9px 15px}.diagram-result strong{font-size:20px}.diagram-result small{font-size:7px}.diagram-caption{margin-top:14px;font-size:9px}.today-section{padding-top:33px;padding-bottom:29px;margin-top:0}.section-top{gap:10px;align-items:flex-start;margin-bottom:17px}.section-top h2{font-size:24px}.section-top .eyebrow{font-size:8px}.section-top .quiet-badge{font-size:8px;margin-top:4px}.lesson-preview{padding:17px;gap:12px;align-items:flex-start}.lesson-preview-icon{width:41px;height:46px}.lesson-preview-icon>.icon{width:21px;height:21px}.lesson-preview h3{font-size:18px;line-height:1.25;margin:6px 0 9px}.lesson-preview p{font-size:10px;line-height:1.75}.lesson-preview .mini-label{font-size:7px}.lesson-preview .circle-arrow{width:28px;height:28px;align-self:center;margin-left:0}.circle-arrow>.icon{width:14px}.learning-method{padding:28px 0}.method-grid{grid-template-columns:1fr;gap:0}.method-grid article{display:grid;grid-template-columns:36px 1fr;gap:6px 15px;padding:17px 0}.method-top{grid-row:1/3;display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:3px 0 0}.method-grid h3{font-size:23px;grid-column:2;margin-bottom:0}.method-grid p{font-size:12px;grid-column:2;max-width:none}.method-top .icon{width:18px}.projects-teaser{grid-template-columns:1fr 1fr;padding:26px 0;gap:17px}.projects-teaser>div:first-child{grid-column:1/-1}.projects-teaser h2{font-size:28px}.projects-teaser p{font-size:12px}.mini-project{min-height:179px}.mini-project strong{font-size:20px}.mini-project small{font-size:8px}.page-footer{align-items:flex-start;gap:20px;font-size:8px}.page-footer>span:last-child{max-width:145px;text-align:right}.lesson-top{margin-bottom:23px;gap:10px}.lesson-top>span{max-width:135px;line-height:1.5;text-align:right}.lesson-top .icon{display:none}.lesson-heading h1{font-size:34px;line-height:1.12}.lesson-heading>p{font-size:12px;line-height:1.75}.step-nav{grid-template-columns:repeat(3,1fr);gap:0 12px;margin:22px 0 26px}.step-button{padding:10px 0;flex-direction:row;align-items:center;gap:6px}.step-button strong{font-size:9px}.step-button>span{width:21px;height:21px;flex-shrink:0}.lesson-content>.eyebrow{font-size:8px}.lesson-content>h2{font-size:27px;line-height:1.2;margin:10px 0 17px}.lesson-content>p{font-size:13px;line-height:1.8}.task-callout{padding:13px 14px;gap:8px}.task-callout p{font-size:11px}.interface-layout{grid-template-columns:1fr;gap:18px;padding:20px}.interface-note{padding-top:0}.interface-note .number-tag{display:none}.interface-note h3{font-size:22px;margin:4px 0 9px}.interface-note>.p{font-size:12px}.interface-note .note-line{font-size:11px;padding:10px 0}.chat-preview,.game-preview{min-height:0;max-width:340px;margin:auto;padding:16px}.chat-title{font-size:12px}.chat-bubble{font-size:11px;padding:15px;margin-top:16px}.chat-bubble>strong{font-size:13px}.chat-bubble>p{font-size:12px}.fake-button{font-size:12px;padding:11px}.game-preview>h3{font-size:26px}.game-preview>p{font-size:11px}.game-balance{font-size:11px}.game-balance strong{font-size:20px}.game-caption{font-size:8px}.hero-shield{width:65px;height:65px;margin:14px auto}.exercise-header{padding:13px 16px;gap:8px}.exercise-header>span:first-child{font-size:7px;gap:5px}.exercise-header>span:last-child{font-size:8px}.exercise-header .icon{width:12px;height:12px}.exercise-bottom{font-size:9px;padding:11px 16px}.quiz{padding:18px}.quiz legend{font-size:16px;padding-top:18px}.option{font-size:11px;padding:13px;gap:10px}.feedback{padding:14px 18px}.feedback p{font-size:11px}.trace-controls{padding:16px;gap:12px;align-items:flex-start}.switch-label{font-size:9px;gap:6px}.trace-controls>.text-button{font-size:8px;max-width:80px;text-align:right}.trace-pipeline{padding:0 13px 17px;gap:5px}.trace-node{padding:13px 5px}.trace-node>.icon{width:18px;height:18px}.trace-node strong{font-size:10px}.trace-node small{font-size:7px;line-height:1.5}.trace-arrow{font-size:12px}.balance-row{padding:15px 17px;gap:10px}.balance-row>.button{width:100%;font-size:11px;margin-top:4px}.trace-output{margin:15px 16px;padding:12px}.trace-output p{font-size:9px}.practice-checks{padding:0 16px 15px}.practice-checks>span{font-size:9px}.model-disclaimer{font-size:9px!important;padding:11px 16px}.brief-fields{padding:18px}.brief-fields>label:not(.check-label){font-size:11px}.brief-fields textarea{font-size:12px}.brief-actions{gap:14px;align-items:flex-start;flex-direction:column}.check-label{font-size:10px}.brief-fields p.small{font-size:10px}.deeper>p{font-size:12px}.lesson-actions{gap:12px}.lesson-actions .button{font-size:10px;padding:11px 13px;gap:10px}.lesson-actions .small{max-width:190px;font-size:8px}.lesson-aside{grid-template-columns:1fr;gap:0;padding:19px}.lesson-aside h3,.lesson-aside>p:last-of-type,.lesson-aside .text-link{grid-column:1;grid-row:auto}.lesson-aside h3{margin-top:17px}.lesson-aside p{font-size:11px}.lesson-aside .text-link{margin-top:12px}.lesson-body{gap:28px}.page-title h1{font-size:35px}.page-title p{font-size:13px}.project-grid{grid-template-columns:1fr;gap:22px}.project-art{height:150px}.project-card h2{font-size:29px}.project-card p{min-height:0;font-size:12px}.project-card p.small{font-size:10px}.project-card .button{font-size:12px}.setup-guide h2{font-size:27px}.setup-guide>p{font-size:12px}.setup-steps p{font-size:11px}.setup-guide .note-line{font-size:10px}.setup-steps pre{font-size:10px;padding:14px;line-height:2}.section-note p{font-size:11px}.glossary-grid{grid-template-columns:1fr}.glossary-grid h2{font-size:25px}.glossary-grid p{font-size:12px}.glossary-grid article{padding:22px 0}dialog{padding:23px;max-height:90vh}.dialog-top h2{font-size:25px}.dialog-prose p,dialog>p{font-size:12px}.programme-list h3{font-size:20px}.programme-list article{gap:13px}.prompt-preview{font-size:10px}.copy-fallback{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.button:hover:not(:disabled){transform:none}}

.sidebar{overflow-y:auto}.sidebar-bottom{flex-shrink:0}@media(max-width:760px){.sidebar nav a,.module-link,.all-modules{min-height:44px}}

.switch{pointer-events:none}.switch-label input:focus-visible+.switch{outline:3px solid #b96d3c;outline-offset:3px}
/* Course practice pages use the existing spacing and type system. */
.curriculum-list { display: grid; gap: 36px; }
.module-section { border-top: 1px solid var(--line, #deddd5); padding-top: 24px; }
.curriculum-row { display: grid; grid-template-columns: 54px 1fr auto; align-items: center; gap: 16px; padding: 18px 8px; border-bottom: 1px solid #e3e2da; text-decoration: none; color: inherit; }
.curriculum-row:hover { background: #efeee7; }
.curriculum-row > span, .curriculum-row small { color: #5b615c; }
.study-content { max-width: 850px; display: grid; gap: 36px; }
.study-content h2 { margin-bottom: 16px; }
.study-content h3 { margin: 24px 0 12px; }
.study-content p, .study-tasks { line-height: 1.7; }
.study-tasks { padding-left: 24px; }
.study-tasks li { margin: 14px 0; padding-left: 4px; overflow-wrap: anywhere; }
.study-content textarea { display: block; width: 100%; resize: vertical; min-height: 130px; padding: 16px; border: 1px solid #b8c0b7; border-radius: 10px; background: #fffefb; color: inherit; font: inherit; line-height: 1.6; margin: 12px 0 18px; }
.study-content select { display: block; width: 100%; padding: 14px; margin-top: 10px; font: inherit; color: inherit; border: 1px solid #b8c0b7; border-radius: 8px; background: #fffefb; }
.study-check { display: flex; align-items: flex-start; gap: 12px; line-height: 1.6; }
.study-check input { margin-top: 6px; width: 18px; height: 18px; flex-shrink: 0; }
.worked-example { white-space: pre-wrap; overflow-wrap: anywhere; padding: 18px; line-height: 1.7; font: 14px/1.7 ui-monospace, monospace; background: #f1f0e9; border-radius: 8px; }
.study-footer { border-top: 1px solid #deddd5; padding-top: 24px; display: grid; gap: 20px; }
.study-content .task-callout { margin-top: 20px; }
.study-content .task-callout p { margin-bottom: 0; }
.study-content .dialog-actions { flex-wrap: wrap; }
.study-content .tomorrow { padding: 22px; }
@media(max-width:600px) { .curriculum-row {grid-template-columns: 42px 1fr; gap: 12px;} .curriculum-row small {grid-column:2;} .study-content .button {width:100%; white-space:normal; text-align:center;} .module-section .section-top {align-items:flex-start;gap:12px;} .module-section h2 {font-size:22px;} }
