@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap');
:root{--paper:#f3f1e8;--ink:#283b35;--muted:#65766d;--line:#d6dacf;--yellow:#edc35d;--green:#365e4c;--mono:'IBM Plex Mono',monospace;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}main{max-width:1264px;margin:auto;padding:0 32px}button,select,input{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;background:transparent;border:1px solid var(--line);border-radius:5px;color:var(--ink);padding:10px 16px;font-size:12px;font-weight:700;transition:background .15s,transform .15s}button:hover{background:#e4e8dc}button:active{transform:translateY(1px)}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #be771c;outline-offset:4px}[hidden]{display:none!important}header{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.back{color:var(--ink);font-size:13px;font-weight:700;text-decoration:none}.edition,.eyebrow{font:500 10px var(--mono);letter-spacing:1.5px}.edition{color:var(--muted)}header button{border:0}.heading{display:flex;align-items:center;justify-content:space-between;padding:28px 0 25px}.eyebrow{margin:0 0 10px;color:var(--muted)}h1{font:800 clamp(58px,7vw,88px)/.85 'Barlow Condensed',Impact,sans-serif;letter-spacing:-1px;margin:0}h1 span{color:var(--green)}h1 i{font:normal 60px var(--sans);color:#c79537;margin-left:20px}.tagline{font-size:18px;line-height:1.4;color:var(--muted);padding-right:12px}.plant{border:1px solid #b8c5b6;border-radius:8px;overflow:hidden;background:#e1e8dc}.plant-bar{display:flex;justify-content:space-between;padding:13px 18px;font:500 10px var(--mono);letter-spacing:1px;border-bottom:1px solid #c6d0c0}.plant-bar b{font-weight:400;color:#778576}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#588666;margin-right:8px}#plant-status{color:#526d5b;font-size:9px}#landscape-fit{overflow:hidden;position:relative}#landscape{width:1200px;height:320px;transform-origin:top left;position:relative}canvas{display:block}#toast{position:absolute;left:0;right:0;top:22px;text-align:center;color:var(--ink);font:600 20px var(--mono);text-shadow:0 2px 0 #edf1df;opacity:0;transition:opacity .2s}#toast.show{opacity:1}.stage-track{display:grid;grid-template-columns:repeat(4,1fr);background:#edf0e5;border-top:1px solid #c6d0c0}.stage{padding:14px 20px;border-right:1px solid #c6d0c0;display:flex;align-items:center;gap:12px;font:500 10px var(--mono);color:#7a877a}.stage:last-child{border:0}.stage b{font-size:18px;opacity:.5}.stage.active{background:var(--ink);color:#f3d584}.stage.done{background:#d7e4d4;color:#365e4c}.stage small{display:block;margin-top:4px;font-size:9px;opacity:.7}.dashboard{display:grid;grid-template-columns:repeat(6,1fr);margin:20px 0;border-bottom:1px solid var(--line);padding-bottom:19px}.dashboard>div{padding-left:24px;border-right:1px solid var(--line)}.dashboard>div:first-child{padding-left:0}.dashboard>div:last-child{border:0}.dashboard span{font:500 9px var(--mono);color:var(--muted);letter-spacing:1px;display:block;margin-bottom:6px}.dashboard b{font:600 29px var(--mono)}.dashboard small{font-size:14px;color:var(--muted)}.score-box b{color:#98661d}.workbench{background:#faf9f3;border:1px solid var(--line);border-radius:8px;padding:24px 28px;min-height:241px;position:relative}.setup-heading{display:flex;justify-content:space-between;align-items:center}h2{font:700 32px 'Barlow Condensed',Impact,sans-serif;margin:0 0 6px}.setup-heading p:not(.eyebrow),#upgrade>p,#paused>p,#coach{font-size:13px;color:var(--muted);margin:5px 0 17px;line-height:1.5}.stamp{border:2px solid #8f9b75;border-radius:50%;width:70px;height:70px;display:grid;place-content:center;text-align:center;transform:rotate(12deg);color:#7a8665;font:700 12px var(--mono)}.setup-controls{display:grid;grid-template-columns:1fr 1.25fr .85fr;gap:22px;align-items:end}.setup-controls label,legend{font:500 9px var(--mono);letter-spacing:1px;color:var(--muted)}select{display:block;background:var(--paper);padding:13px;border:1px solid #bcc7b6;border-radius:4px;width:100%;color:var(--ink);font-size:14px;margin-top:8px}fieldset{border:0;margin:0;padding:0;display:flex;gap:6px}legend{margin-bottom:8px}fieldset button{flex:1;padding:8px;font-size:12px;font-weight:600}fieldset small{display:block;font-size:10px;font-weight:400;margin-top:2px;color:var(--muted)}fieldset button[aria-pressed=true]{background:#e3eadb;border-color:#7f987b}.primary{background:var(--yellow);border-color:#d6ae50;font-size:14px;padding:15px 21px}.primary:hover{background:#f2ce76}.primary span{float:right;margin-left:20px}.hint,.best-line{font-size:11px;color:var(--muted);line-height:1.5;margin:14px 0 0}.best-line{font-family:var(--mono);font-size:10px;margin-top:8px}.order-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.order-heading .eyebrow{margin:0}.order-heading>span:nth-child(2){font:500 9px var(--mono);color:#70836a}kbd{font:10px var(--mono);margin-left:7px;color:var(--muted)}#target{font:500 clamp(24px,4.3vw,52px)/1.35 var(--mono);letter-spacing:3px;text-align:center;min-height:90px;padding:20px 0 12px;white-space:pre-wrap;overflow-wrap:anywhere}#target span{color:#98a39a;border-bottom:3px solid transparent}#target .typed{color:#46775d}#target .current{color:var(--ink);background:#f4df9b;border-bottom-color:#a87b22;border-radius:3px}#target .wrong{background:#f4b9ac;color:#9c3823}.target-track{height:3px;background:#e2e6da;margin:8px 0 15px}.target-track i{display:block;width:0;height:100%;background:#6d9473;transition:width .1s}.typing-row{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}#typing{width:150px;border:1px solid #bcc7b6;border-radius:4px;padding:8px 10px;background:#f1f3e9;color:var(--ink);font:12px var(--mono)}#typing:focus{outline:2px solid #769471;outline-offset:2px}#feedback{min-width:180px;text-align:right}.keyboard-panel{padding:20px 20px 12px}.keyboard-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.keyboard-heading .eyebrow{margin:0}.keyboard-heading span:nth-child(2){font-size:11px;color:var(--muted)}.keyboard-heading button{border:0;padding:6px}#keyboard{margin:15px auto 10px;max-width:680px}.key-row{display:flex;justify-content:center;gap:5px;margin:5px 0}.key{width:43px;height:34px;display:grid;place-items:center;border:1px solid #cbd2c4;border-bottom:3px solid #bec8b7;border-radius:4px;background:#e8ece1;font:500 12px var(--mono);color:#68775f;position:relative}.key[data-key=f]:after,.key[data-key=j]:after{content:'';position:absolute;bottom:4px;width:9px;height:2px;background:#9ba993}.key.space{width:245px;font-size:9px}.key.lit{background:var(--yellow);border-color:#b89540;color:#263e32;box-shadow:0 0 0 3px #edc35d33;transform:translateY(-2px)}.finger-legend{display:flex;justify-content:center;gap:20px;font:9px var(--mono);color:#829174}.finger-legend span:nth-child(2){color:#809dac}.finger-legend span:nth-child(3){color:#b49672}.finger-legend span:nth-child(4){color:#8a85a2}.finger-legend span:nth-child(5){color:#9b9963}.key[data-finger=pinky]{background:#e4ecdf}.key[data-finger=ring]{background:#e2eaed}.key[data-finger=middle]{background:#eee7dc}.key[data-finger=index]{background:#e8e4ed}.key.lit[data-finger]{background:var(--yellow)}footer{border-top:1px solid var(--line);margin-top:12px;padding:20px 0 30px;display:flex;justify-content:space-between;gap:20px;font:9px var(--mono);color:var(--muted);letter-spacing:1px}details{max-width:620px;text-align:right}summary{cursor:pointer}details p{text-align:left;font:12px/1.65 var(--sans);letter-spacing:0}.upgrade-options{display:flex;gap:16px}.upgrade-options button{flex:1;text-align:left;padding:18px;border-color:#b4c2a9;background:#eef2e5}.upgrade-options b{font-size:17px;display:block;margin-bottom:8px}.upgrade-options span{font-size:12px;font-weight:400;color:var(--muted)}.pause-actions,.result-actions{display:flex;gap:10px;margin-top:22px}#result-stats{display:flex;gap:30px;margin:12px 0}#result-stats b{font:600 26px var(--mono);display:block}#result-stats small{font:9px var(--mono);color:var(--muted)}.shake{animation:shake .18s ease}@keyframes shake{33%{transform:translateX(-4px)}66%{transform:translateX(4px)}}@media(max-width:700px){main{padding:0 14px}header{height:51px}.edition{display:none}.heading{padding:24px 0 20px}h1{font-size:56px}h1 i{display:none}.tagline{font-size:12px}.heading .eyebrow{font-size:8px;letter-spacing:.5px}.plant-bar{padding:10px;font-size:8px}.plant-bar b,#plant-status{display:none}.stage{padding:10px 7px;gap:5px;font-size:8px}.stage b{font-size:14px}.stage small{font-size:7px}.dashboard{grid-template-columns:repeat(3,1fr);gap:15px;margin:15px 0;padding-bottom:15px}.dashboard>div{padding-left:15px}.dashboard>div:nth-child(4){padding-left:0}.dashboard>div:nth-child(3){border:0}.dashboard b{font-size:22px}.dashboard span{font-size:8px}.workbench{padding:18px 15px;min-height:240px}.setup-controls{grid-template-columns:1fr;gap:16px}.setup-controls .primary{width:100%}.stamp{width:56px;height:56px;font-size:10px;flex-shrink:0}h2{font-size:27px}.setup-heading p:not(.eyebrow){max-width:220px}.eyebrow{font-size:8px}.order-heading>span:nth-child(2){display:none}#target{letter-spacing:1px;min-height:90px;padding-top:28px}.typing-row{flex-wrap:wrap;gap:10px}.typing-row label{flex:1}#feedback{width:100%;text-align:left;font-size:10px}.keyboard-panel{padding:18px 0 6px}.keyboard-heading span:nth-child(2){display:none}.key{height:30px;flex:1;max-width:38px;font-size:10px}.key-row{gap:3px}.key.space{max-width:180px}.finger-legend{gap:12px;font-size:8px}footer{font-size:8px;letter-spacing:0}footer>span{max-width:130px}.upgrade-options{flex-direction:column;gap:8px}.upgrade-options button{padding:12px}.result-actions{flex-wrap:wrap}#result-stats{gap:16px;flex-wrap:wrap}#result-stats b{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* During a shift the scene and hands share one compact work surface. */
.session-active .heading{display:none}
@media(min-width:850px){.session-active main{max-width:1100px;display:grid;grid-template-columns:minmax(0,1fr) 285px;column-gap:18px}.session-active header,.session-active .plant,.session-active .dashboard,.session-active footer{grid-column:1/-1}.session-active header{height:42px;border:0}.session-active .plant-bar{padding:9px 14px}.session-active .stage{padding:10px 16px}.session-active .dashboard{margin:13px 0;padding-bottom:12px}.session-active .dashboard b{font-size:24px}.session-active .workbench{padding:18px 20px;min-height:214px}.session-active #target{font-size:32px;letter-spacing:1px;min-height:85px}.session-active .keyboard-panel{padding:8px 0}.session-active .keyboard-heading span:nth-child(2){display:none}.session-active .key{width:25px;height:28px;font-size:10px}.session-active .key-row{gap:3px}.session-active .key.space{width:150px}.session-active .finger-legend{gap:7px;font-size:7px}.session-active .typing-row{flex-wrap:wrap;gap:9px}.session-active #feedback{font-size:10px;min-width:0}.session-active #typing{width:125px}.session-active .order-heading>span:nth-child(2){font-size:8px}.session-active footer{margin-top:15px;padding:12px 0}.session-active #result-stats{gap:18px}.session-active #result-stats b{font-size:22px}.session-active .result-actions{margin-top:12px}.session-active .upgrade-options button{padding:12px}.session-active .upgrade-options span{font-size:11px}}
@media(max-width:849px){.session-active header{height:43px}.session-active .plant{margin-top:5px}}
/* Second shift: progression, clearer instruction, and a plant that earns its upgrades. */
.career-bar{display:flex;align-items:center;gap:24px;margin:0 0 20px;padding:14px 18px;border:1px solid #cbd3c0;background:#e9eedf;border-radius:7px}.career-bar>div:first-child{display:flex;align-items:center;gap:12px}.rank-seal{width:37px;height:37px;background:#3f6148;color:#f3d280;display:grid;place-items:center;border-radius:50%;font-size:24px}.career-bar small{font:8px var(--mono);letter-spacing:1px;display:block;color:var(--muted)}.career-bar b{font-size:16px;display:block;margin-top:3px}#career-progress{font:10px var(--mono);margin-left:auto}.career-track{width:160px;height:5px;background:#cad6bd;border-radius:5px;overflow:hidden}.career-track i{height:100%;display:block;background:#7d9b64;transition:width .5s}.session-active .career-bar{display:none}#scene-label{position:absolute;top:19px;left:22px;display:flex;flex-direction:column;gap:5px;pointer-events:none;color:#3a5949}#scene-eyebrow{font:500 9px var(--mono);letter-spacing:1.5px}#scene-title{font:700 26px 'Barlow Condensed',sans-serif;letter-spacing:.3px}#scene-description{font:10px var(--mono);color:#5d7560}#toast{top:29px;left:490px;right:30px;font-size:16px;text-align:right;transform:translateY(5px);transition:opacity .2s,transform .2s}#toast.show{transform:translateY(0)}.stage{position:relative}.stage-meter{position:absolute;bottom:0;left:0;height:3px;background:#d0b35f;transition:width .15s}.stage.done .stage-meter{background:#749877}#lesson-map{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:17px 0 24px}#lesson-map button{text-align:left;padding:13px;background:#f2f3e9;border-color:#d6dbcb;position:relative;overflow:hidden}#lesson-map button[aria-pressed=true]{background:#e7eddc;border-color:#6e8b63;box-shadow:inset 0 3px 0 #739360}#lesson-map small{display:block;font:8px var(--mono);letter-spacing:.5px;color:#728168}#lesson-map b{display:block;font-size:13px;margin:8px 0}.lesson-stars{font-size:17px;letter-spacing:3px;color:#ae8630}.setup-controls{grid-template-columns:1fr 1.8fr 1fr}.onboarding{display:flex;gap:24px;border-top:1px solid #e1e4d8;margin-top:21px;padding-top:16px;font-size:11px;color:#697b61}.onboarding b{font:10px var(--mono);display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid #c5d0b8;border-radius:50%;margin-right:6px}.order-context{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;font-size:10px;color:#76836b}#order-dots{display:flex;gap:5px;flex-shrink:0}#order-dots i{width:7px;height:7px;border-radius:50%;background:#d4dcc9}#order-dots .filled{background:#739669}#order-dots .current{background:#ddba55;box-shadow:0 0 0 2px #ddba552a}.next-order{text-align:center;color:#95a08c;font:8px var(--mono);letter-spacing:1px;margin:0 0 12px}.next-order span{font-size:12px;letter-spacing:0;margin-left:12px;color:#86947b}.session-active #target{padding:16px 0 8px;min-height:70px}.current{position:relative}.current:after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:3px;background:#ac842b;animation:caret 1s steps(2) infinite}@keyframes caret{50%{opacity:.25}}.flow-panel{margin-top:16px;padding-top:12px;border-top:1px solid #d7dece}.flow-panel>span{font:7px var(--mono);display:flex;justify-content:space-between;color:#6f8263}.flow-panel b{font-size:7px;color:#597847}.flow-panel>div{height:4px;background:#d4ddca;border-radius:3px;margin:7px 0}.flow-panel i{display:block;height:100%;background:linear-gradient(90deg,#729168,#d2b04c);width:0;transition:width .15s}.flow-panel small{font:8px/1.5 var(--sans);color:#809076}#hands{display:flex;justify-content:center;gap:22px;height:70px;margin-top:7px}.hand{display:flex;align-items:flex-end;gap:3px;position:relative;padding-bottom:17px}.hand i{display:block;background:#dddccb;border:1px solid #c1c6ad;width:13px;height:29px;border-radius:9px 9px 4px 4px;transition:background .1s,transform .1s}.hand i:nth-child(3){height:42px}.hand.left i:nth-child(2),.hand.right i:nth-child(4){height:38px}.hand.left i:nth-child(4),.hand.right i:nth-child(2){height:35px}.hand.left i:last-of-type,.hand.right i:first-of-type{height:20px;width:15px;transform:rotate(-15deg);background:#e3dbbc}.hand i.lit{background:#eac464;border-color:#a88838;box-shadow:0 0 0 2px #eac46435;transform:translateY(-3px)}.hand span{position:absolute;bottom:0;left:0;right:0;text-align:center;font:7px var(--mono);color:#859177;letter-spacing:1px}.session-active .finger-legend{display:none}.session-active .keyboard-panel{padding-top:4px}.session-active .flow-panel{margin-top:9px;padding-top:8px}.session-active #keyboard{margin:10px auto 0}.session-active #hands{height:64px}.session-active .workbench{min-height:290px}.session-results .workbench{grid-column:1/-1}.session-results .keyboard-panel{display:none}.session-results .workbench{padding:22px 28px}#medal-result{display:flex;gap:30px;margin:15px 0 18px}#medal-result>span{font:10px var(--mono);color:#87917d;display:flex;align-items:center;gap:8px}#medal-result b{font-size:27px;color:#bbc1ad}#medal-result .earned{color:#5d7350}#medal-result .earned b{color:#b48b2f}#stage-report{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:18px 0}#stage-report>div{border:1px solid #dee3d3;border-radius:5px;padding:12px;background:#f0f2e8}#stage-report small{font:8px var(--mono);color:#7d8d71;display:block}#stage-report b{display:block;font:500 20px var(--mono);margin:6px 0;color:#728968}#stage-report span{font-size:9px;color:#819176}#stage-report .completed{border-bottom:3px solid #8da97a}#key-report{display:flex;gap:8px;flex-wrap:wrap}#key-report>span{padding:8px 10px;background:#f0e8d9;border:1px solid #dfcdb1;border-radius:4px;font:10px var(--mono);color:#846c48}#checkpoint-stats{font:10px var(--mono);padding:11px 0;color:#6c885b}#upgrade-copy{max-width:590px}.urgent{color:#b5573c!important}
@media(min-width:850px) and (max-height:850px){.session-active main{max-width:1020px;grid-template-columns:minmax(0,1fr) 265px}.session-active header{height:36px}.session-active .dashboard{margin:10px 0;padding-bottom:10px}.session-active .stage{padding:8px 16px}.session-active .workbench{padding:16px;min-height:276px}.session-active .order-context{font-size:9px}.session-active #target{font-size:29px}.session-active .typing-row #feedback{width:100%;text-align:left}.session-active .key{width:23px;height:26px}.session-active #hands{height:60px}.session-active footer{margin-top:10px}.session-active .order-heading button{padding:7px 10px}}
@media(max-width:849px){.career-bar{gap:10px;padding:10px}.career-track{display:none}.career-bar b{font-size:14px}#career-progress{font-size:8px}.career-bar small{font-size:7px}#lesson-map{grid-template-columns:repeat(3,1fr);gap:6px}#lesson-map button{padding:10px}#lesson-map b{font-size:11px}.lesson-stars{font-size:14px}#lesson-map button:last-child{grid-column:2/4}.setup-controls{grid-template-columns:1fr}.onboarding{gap:9px;flex-direction:column;font-size:10px}.order-context{font-size:9px;line-height:1.5}.session-active .workbench{min-height:260px}.session-active #target{font-size:26px;letter-spacing:0;padding-top:20px}.next-order span{font-size:10px}#hands{height:61px}.flow-panel{max-width:360px;margin:12px auto 0}.session-results .workbench{padding:18px 15px}#medal-result{gap:12px;justify-content:space-between}#medal-result>span{font-size:8px;flex-direction:column;gap:4px;max-width:90px;text-align:center}#medal-result b{font-size:26px}#stage-report{grid-template-columns:repeat(2,1fr)}.result-actions button{flex:1;font-size:11px;padding:11px}.result-actions .primary{flex-basis:100%}#scene-label{top:9px}#scene-title{font-size:24px}#scene-description{display:none}}
@media(prefers-reduced-motion:reduce){.current:after{animation:none}}
@media(min-width:850px){.session-active:not(.session-results) footer{display:none}}
@media(min-width:850px) and (max-height:760px){.session-active main{max-width:960px;grid-template-columns:minmax(0,1fr) 250px;column-gap:16px}.session-active .workbench{min-height:264px;padding:13px 15px}.session-active .order-context{margin-top:10px}.session-active #target{min-height:63px;padding-top:13px}.session-active .next-order{margin-bottom:8px}.session-active .key{width:22px;height:24px}.session-active #hands{height:55px}.session-active .flow-panel{margin-top:7px}.session-active .flow-panel small{display:none}}
/* The briefing is a usable launch screen, not a wall of zero-valued telemetry. */
body:not(.session-active) .dashboard,body:not(.session-active) .flow-panel{display:none}
@media(min-width:1000px){body:not(.session-active) main{max-width:1220px;display:grid;grid-template-columns:1.2fr 1fr;column-gap:24px}body:not(.session-active) header,body:not(.session-active) .heading,body:not(.session-active) .career-bar,body:not(.session-active) footer{grid-column:1/-1}body:not(.session-active) header{height:48px}body:not(.session-active) .heading{padding:18px 0}body:not(.session-active) h1{font-size:68px}body:not(.session-active) h1 i{font-size:44px}body:not(.session-active) .career-bar{margin-bottom:18px;padding:9px 15px}body:not(.session-active) .plant{grid-column:1;grid-row:4;align-self:start}body:not(.session-active) .workbench{grid-column:2;grid-row:4/6;padding:22px;align-self:start}body:not(.session-active) .keyboard-panel{grid-column:1;grid-row:5;padding:10px 12px;align-self:start}body:not(.session-active) .keyboard-heading span:nth-child(2){display:none}body:not(.session-active) #hands{height:57px}body:not(.session-active) .finger-legend{display:none}body:not(.session-active) .setup-heading .stamp{display:none}body:not(.session-active) .setup-heading h2{font-size:29px}body:not(.session-active) .setup-heading p:not(.eyebrow){font-size:12px;margin-bottom:6px}body:not(.session-active) #lesson-map{grid-template-columns:repeat(3,1fr);gap:6px;margin:16px 0}body:not(.session-active) #lesson-map button{padding:9px}body:not(.session-active) #lesson-map small{display:none}body:not(.session-active) #lesson-map b{font-size:11px;margin:0 0 4px}body:not(.session-active) #lesson-map button:last-child{grid-column:2/4}body:not(.session-active) .lesson-stars{font-size:14px}body:not(.session-active) .setup-controls{grid-template-columns:1fr;gap:13px}body:not(.session-active) .setup-controls>label{display:none}body:not(.session-active) .onboarding{display:none}body:not(.session-active) .stage{padding:11px 9px;font-size:9px;gap:7px}body:not(.session-active) .stage b{font-size:15px}body:not(.session-active) .stage small{font-size:8px}body:not(.session-active) .plant-bar{font-size:8px;padding:10px}body:not(.session-active) #plant-status{display:none}body:not(.session-active) .key{height:29px}body:not(.session-active) footer{margin-top:15px}}
@media(max-width:700px){body:not(.session-active) #start{position:fixed;bottom:14px;left:14px;right:14px;z-index:5;width:calc(100% - 28px);box-shadow:0 5px 24px #314d3630}body:not(.session-active) main{padding-bottom:84px}body:not(.session-active) .keyboard-panel{display:none}body:not(.session-active) #setup-best{margin-bottom:8px}}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}#target span{color:#667568}#target .typed{color:#39734e}.next-order span{color:#6c7e65}
@media(max-width:700px){.session-active #target.long-order{font-size:clamp(17px,5.3vw,26px)}.order-heading button{white-space:nowrap;padding:8px 10px}.order-heading{gap:8px}.session-active .order-heading .eyebrow{font-size:8px;letter-spacing:.5px}}
/* Quarry Works: a focused industrial game interface. */
body{background:radial-gradient(ellipse at 15% 0,#304738 0,transparent 55%),radial-gradient(ellipse at 90% 90%,#233d32 0,transparent 55%),#14251f;color:#ecebda}header{border-color:#395044}.back{color:#e3e8d5}.edition{color:#9cad98}header button{color:#dbe5cb}.heading .eyebrow{color:#aabc9d}h1{color:#f1f0df}h1 span{color:#d7be78}h1 i{color:#e0bb61}.tagline{color:#aabd9f}.career-bar{background:#263c30;border-color:#4b6047;color:#e9edd8;box-shadow:0 10px 30px #07150e20}.career-bar small{color:#a0b494}.career-track{background:#425740}.rank-seal{background:#c5a651;color:#233b2b}#career-progress{color:#bccba9}.estate-chip{display:flex;flex-direction:column;gap:4px;margin-left:auto}.estate-chip small{font:9px var(--mono);text-transform:uppercase;letter-spacing:.6px}.estate-chip b{font:600 17px var(--mono);color:#ead081}.career-bar #manage-quarry{background:#d5b966;border-color:#d5b966;color:#23392a;padding:11px 15px}.plant{border-color:#667257;box-shadow:0 12px 42px #08191030}.plant-bar{background:#253e31;color:#dce8c8;border-color:#4a6148}.plant-bar b{color:#aabd98}#plant-status{color:#c9daba}.dot{background:#d9bd6c}.stage-track{background:#203b2d;border-color:#53684a}.stage{color:#aec09d;border-color:#526346}.stage.active{background:#d8bd72;color:#203a2a}.stage.done{background:#3b5d3e;color:#c8ddb5}.stage b{opacity:1}.stage-meter{background:#f2e1a8}.stage.active .stage-meter{background:#385639}.stage.done .stage-meter{background:#aac888}.dashboard{border-color:#3a5040}.dashboard>div{border-color:#3a5040}.dashboard span{color:#9faf91}.dashboard b{color:#edf1df}.dashboard small{color:#91a781}.score-box b{color:#e1c677}.workbench{box-shadow:0 16px 40px #081a1125;color:#2c4334;border-color:#c4cdb6;background:#f4f2e7;border-radius:10px}.workbench .eyebrow{color:#637459}#target .current{color:#1f3b29;background:#f1d576;border-bottom-color:#ab8223;box-shadow:0 3px 0 #b99b4140}#target .space-key{display:inline-block;width:.65em;min-width:.65em;white-space:pre;border-radius:3px}#target .space-key.current{background:#eed889;box-shadow:0 0 0 2px #b79a49}.space-needed #finger{font-weight:700;color:#866017}.space-needed .key.space{box-shadow:0 0 0 3px #daba6355;background:#f0cd6a!important}.keyboard-panel{color:#dfe8cb}.keyboard-heading .eyebrow,.keyboard-heading span:nth-child(2){color:#a4b893}.keyboard-heading button{color:#e1e8d0}.key{color:#bfd0ae;background:#35523d;border-color:#58704c;border-bottom-color:#253e2d;box-shadow:0 2px 0 #0e251b}.key[data-finger=pinky]{background:#38543e}.key[data-finger=ring]{background:#355454}.key[data-finger=middle]{background:#60563d}.key[data-finger=index]{background:#4d4e59}.key.lit[data-finger]{background:#edc869;color:#213c2b;border-color:#f0d98b;box-shadow:0 0 15px #ebc15822}.hand i{background:#78826a;border-color:#acb394}.hand.left i:last-of-type,.hand.right i:first-of-type{background:#929175}.hand i.lit{background:#f0ce78;border-color:#fbe9a9}.hand span{color:#a0b38f}.flow-panel{border-color:#3d5440}.flow-panel>span,.flow-panel small{color:#acbc9a}.flow-panel b{color:#e0cd8d}.flow-panel>div{background:#3b5240}footer{border-color:#3a5141;color:#a4b995}footer summary{color:#c3d3ae}.live-order{display:flex;align-items:center;gap:20px;background:#152e22;padding:13px 18px;color:#e3edd2;border-top:1px solid #69805a;border-bottom:1px solid #476341;position:relative;min-height:66px}.live-order>div:first-child{min-width:150px;max-width:45%}.live-order small{display:block;font:9px var(--mono);color:#c5b775;letter-spacing:1px;margin-bottom:4px}.live-order strong{font:500 18px var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.3}.live-production{flex:1;min-width:90px}.live-production>span{font:10px var(--mono);color:#cbd8b4}.live-meter{margin-top:8px;height:5px;background:#3f5740;border-radius:4px;overflow:hidden}.live-meter i{display:block;height:100%;width:0;background:#e2c568;transition:width .07s linear}.live-order #last-key{display:grid;place-items:center;min-width:60px;min-height:34px;padding:0 9px;border:1px solid #607749;border-radius:4px;background:#29452f;font:600 11px var(--mono);color:#e8d690}.live-order button{color:#c5d5ad;border-color:#536b45;font-size:9px;white-space:nowrap;padding:8px}.live-order.key-pulse #last-key{background:#d9bf71;color:#203627;box-shadow:0 0 16px #dfc96d35}.live-order.key-pulse .live-meter{box-shadow:0 0 12px #d4c16d30}.next-build{margin-top:17px;padding-top:14px;border-top:1px solid #d1d8c2}.next-build small{font:8px var(--mono);letter-spacing:1px;color:#7d865f}.next-build b{display:block;margin:5px 0;font-size:14px}.next-build p{margin:0;color:#697754;font-size:11px;line-height:1.5}#shift-payment{padding:13px 16px;background:#e3ebd6;border:1px solid #b8c99d;border-radius:5px;font:11px/1.7 var(--mono);color:#465f37;margin:16px 0}.session-active .order-heading .eyebrow{font-size:10px}.session-active .order-context{font-size:11px}#target{cursor:text}.session-active #target{font-size:39px;letter-spacing:1px}.next-order{font-size:9px}.next-order span{font-size:12px}.session-active .typing-row{font-size:12px}.session-active #feedback{color:#64754f}
#yard{width:min(1050px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid #7c875c;border-radius:12px;background:#edf0df;color:#2d4733;box-shadow:0 30px 120px #07140fcc}#yard::backdrop{background:#071810bf;backdrop-filter:blur(8px)}.yard-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}.yard-heading h2{font-size:37px}.yard-intro{font-size:13px;line-height:1.6;color:#667a55;max-width:670px}.yard-heading button{border-color:#afbb97}#yard-stats{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #becaa9;border-radius:6px;padding:16px;margin:20px 0;background:#e0e8ce}#yard-stats>div{padding:0 15px;border-right:1px solid #bac8a1}#yard-stats>div:first-child{padding-left:0}#yard-stats>div:last-child{border:0}#yard-stats b{display:block;font:600 25px var(--mono)}#yard-stats small{font:8px var(--mono);letter-spacing:.5px;color:#6d8059}#yard-advice{padding:12px 15px;background:#344e37;color:#dce8c5;border-left:3px solid #d5bb63;font-size:12px;line-height:1.6}#yard-message{font:12px/1.5 var(--mono);color:#687f3f;min-height:18px}.yard-section-heading{display:flex;align-items:center;justify-content:space-between;margin:23px 0 12px;gap:10px}.yard-section-heading h3{font:700 25px 'Barlow Condensed',sans-serif;margin:0}.yard-section-heading>span{font:8px var(--mono);color:#7b8c66;letter-spacing:1px}#projects{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.project-card{padding:16px;background:#f7f7ed;border:1px solid #cad2b9;border-radius:6px;display:flex;flex-direction:column}.project-card.built{border-top:3px solid #8ba265}.project-top{display:flex;justify-content:space-between;align-items:center}.project-top>span{font:28px var(--mono);color:#9b8342}.project-top small{font:8px var(--mono);color:#7a8d64}.project-card h4{font-size:15px;margin:12px 0 6px}.project-card p{font-size:11px;line-height:1.6;color:#6d7d5c;margin:0 0 18px;flex:1}.project-card button{padding:10px 7px;font-size:10px;background:#dac278;border-color:#c9ae5a;color:#34472e}.project-card button:disabled{cursor:default;background:#e6e9db;border-color:#d2d8c2;color:#8a937a}.project-requirement{display:block;font:9px/1.5 var(--mono);color:#75845f;margin-top:9px;min-height:28px}#contracts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contract{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px;border:1px solid #cad3b7;border-radius:5px;background:#e4eacf}.contract b{font-size:12px}.contract p{font-size:11px;color:#74815f;line-height:1.5;margin:5px 0 0}.contract>span{text-align:right;font:600 12px var(--mono);white-space:nowrap}.contract>span small{display:block;font-size:9px;margin-top:5px;color:#829266}.contract.claimed{opacity:.65}.economy-help{max-width:none;text-align:left;margin-top:24px;font-size:12px}.economy-help p{font-size:12px}.yard-heading .eyebrow{color:#81906c}
@media(min-width:850px){.session-active main{max-width:1180px;grid-template-columns:minmax(0,1fr) 265px}.session-active .plant{margin-top:6px}.session-active .workbench{padding:18px 24px;min-height:235px}.session-active .dashboard{margin:12px 0;padding-bottom:12px}.session-active #target{min-height:74px;padding-top:14px}.session-active #typing{position:absolute;width:1px;height:1px;opacity:0;padding:0;border:0}.session-active .typing-row{border-top:1px solid #d4dcc6;padding-top:10px}.session-active .workbench:focus-within{border-color:#cab464;box-shadow:0 0 0 2px #e7cf7e15,0 16px 40px #081a1125}.session-active #feedback{width:auto!important;text-align:right!important}.session-active .order-context{margin-top:11px}.session-active .keyboard-panel{padding-top:10px}.session-active .key{height:27px;width:24px}.session-active #hands{height:61px}.session-active .flow-panel{margin-top:8px}.session-active .order-heading button{padding:8px 12px}.session-active footer{display:none}}
@media(min-width:1000px){body:not(.session-active) main{max-width:1280px;grid-template-columns:1.15fr 1fr}body:not(.session-active) .career-track{width:80px}body:not(.session-active) .career-bar{gap:18px}body:not(.session-active) .workbench{padding:22px 26px}body:not(.session-active) #scene-title{font-size:25px}body:not(.session-active) .heading{padding:25px 0}body:not(.session-active) h1{font-size:78px}body:not(.session-active) .keyboard-panel{padding-top:20px}body:not(.session-active) .key{height:34px}}
@media(min-width:850px) and (max-height:760px){.session-active main{max-width:1100px;grid-template-columns:minmax(0,1fr) 245px}.session-active .workbench{padding:13px 18px;min-height:226px}.session-active .order-context{font-size:10px}.session-active .live-order{min-height:59px;padding:10px 16px}.session-active .dashboard{margin:10px 0;padding-bottom:10px}.session-active #target{font-size:33px;min-height:66px}.session-active .next-order{margin-bottom:9px}.session-active .typing-row{font-size:11px}.session-active .key{height:24px;width:22px}.session-active #hands{height:53px}.session-active #keyboard{margin-top:8px}}
@media(max-width:849px){.career-bar{flex-wrap:wrap;gap:12px}.career-bar>div:first-child{flex:1}.career-bar .estate-chip{margin-left:0;text-align:right}.career-bar #manage-quarry{order:3;flex:1;font-size:11px}.career-bar #career-progress{order:4;font-size:9px;margin:0}.career-track{display:none}.live-order{padding:10px;gap:10px;flex-wrap:wrap;min-height:82px}.live-order>div:first-child{min-width:110px;max-width:64%;flex:1}.live-order small{font-size:8px}.live-order strong{font-size:14px}.live-production{min-width:75px}.live-production>span{font-size:9px}.live-order #last-key{font-size:9px;min-height:25px;min-width:48px}.live-order button{font-size:8px;padding:5px;position:absolute;right:9px;bottom:7px}.live-order #last-key{position:absolute;right:8px;top:8px}.live-order .live-production{flex-basis:100%;padding-right:74px}.live-order>div:first-child{max-width:calc(100% - 55px)}.session-active #target{font-size:29px}.session-active #target.long-order{font-size:clamp(18px,5.5vw,28px)}.session-active .order-context{font-size:10px}.session-active .typing-row{font-size:11px}.session-active .workbench{min-height:255px}.session-active .dashboard{margin:12px 0;gap:12px}.session-active .dashboard>div{border-color:#3c5141}.session-active .dashboard b{font-size:22px}.session-active .keyboard-panel{padding:16px 0}#yard{padding:18px;width:calc(100vw - 18px);max-height:calc(100dvh - 18px)}.yard-heading h2{font-size:28px}.yard-intro{font-size:11px}#yard-stats{grid-template-columns:repeat(3,1fr);gap:13px;padding:13px}#yard-stats>div{border:0;padding:0}#yard-stats b{font-size:21px}#yard-stats small{font-size:7px}#projects{grid-template-columns:repeat(2,1fr);gap:9px}.project-card{padding:12px}.project-card h4{font-size:13px}.project-card p{font-size:10px}.project-card button{font-size:9px}#contracts{grid-template-columns:1fr}.yard-section-heading>span{display:none}.yard-section-heading h3{font-size:23px}#shift-payment{font-size:10px}.keyboard-heading .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){.live-order.key-pulse #last-key{box-shadow:none}}
.session-active #scene-label{background:#eff0dda6;border:1px solid #dae0c55e;border-radius:5px;padding:8px 11px;left:14px;top:12px;backdrop-filter:blur(4px)}.session-active #scene-description{font-size:10px}.session-active #scene-title{font-size:27px}.live-order.key-error #last-key{background:#643e2d;border-color:#ba7655;color:#f6c8a9}
@media(max-width:700px){.project-card p{font-size:11px}.project-card button{font-size:11px;line-height:1.4}.project-requirement{font-size:10px}.session-active #scene-label{display:none}}
@media(max-width:849px){.hud-pinned #live-order{position:fixed;top:0;left:14px;right:14px;z-index:8;box-shadow:0 8px 24px #0a2019aa;border:1px solid #647b50;border-radius:0 0 7px 7px}.hud-pinned .stage-track{margin-top:var(--pinned-hud-height,90px)}}
