/* Claude's DESIGN.md v1.0, implemented by Codex after the interrupted handoff. */
:root{--ink-950:#121010;--ink-900:#1a1615;--ink-800:#251f1d;--rule:#3b322f;--bone:#ece4d6;--bone-dim:#b8ad9b;--brass:#d2a857;--oxblood:#8e2a26;--blood-text:#e68a7e;--verdigris:#86bba0;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua","URW Palladio L",P052,Georgia,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--wrap:1200px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:104px}body{margin:0;background:var(--ink-950);color:var(--bone);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,ol,dl,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:500;text-wrap:balance}h1{font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.06;letter-spacing:-.015em}h2{font-size:clamp(1.55rem,2.6vw,2.125rem);line-height:1.15}h3{font-size:1.1875rem;line-height:1.3;font-weight:650}h1 em,h2 em{font-weight:400;color:var(--brass)}p{max-width:68ch}a{color:var(--brass);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}button,input{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed}button:disabled{color:var(--bone-dim);background:var(--ink-800);border-color:var(--rule)}input{accent-color:var(--brass)}input[type=checkbox],input[type=radio]{width:18px;height:18px;flex:0 0 auto;margin:0}input[type=text],input[type=search]{background:var(--ink-900);border:1px solid var(--bone-dim);color:var(--bone);border-radius:2px;min-height:44px;padding:8px 12px;min-width:0;max-width:100%}input::placeholder{color:var(--bone-dim);opacity:.85}input[aria-invalid=true]{border:2px solid var(--blood-text)}[hidden]{display:none!important}ul,ol{padding-left:1.25rem}li+li{margin-top:8px}fieldset{border:0;margin:0;padding:0;min-width:0}button{border:0}strong,b{font-weight:650}img,svg{max-width:100%}time{font-variant-numeric:tabular-nums}.wrap{width:min(var(--wrap),calc(100% - 64px));margin-inline:auto}.small,.src{font-size:.9375rem;line-height:1.5}.muted{color:var(--bone-dim)}.accent{color:var(--brass)}.kicker,.label{font-size:.8125rem;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);line-height:1.4}.kicker{display:flex;align-items:center;gap:12px}.kicker::before{content:"";width:24px;height:1px;background:var(--brass);flex-shrink:0}.src{color:var(--bone-dim);margin-top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:12px;left:16px;transform:translateY(-150%);background:var(--brass);color:var(--ink-950);padding:12px 24px;z-index:20}.skip-link:focus{transform:translateY(0)}
.site-header{border-bottom:1px solid var(--rule);background:var(--ink-950)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px}.wordmark{display:flex;gap:12px;align-items:center;color:var(--bone);font-size:1rem;font-weight:650;letter-spacing:.1em;text-decoration:none;line-height:1.25}.wordmark-sub{display:block;color:var(--bone-dim);font-size:.625rem;letter-spacing:.16em;margin-top:4px}.header-inner nav{display:flex;gap:32px}.header-inner nav a{min-height:44px;display:flex;align-items:center;text-decoration:none;color:var(--bone-dim);font-size:.9375rem;position:relative}.header-inner nav a[aria-current=page]{color:var(--bone)}.header-inner nav a[aria-current=page]::after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--brass)}.header-inner nav a:hover{color:var(--brass)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:44px;border:1px solid var(--brass);border-radius:2px;padding:12px 24px;font-size:.9375rem;line-height:1.3;font-weight:650;text-decoration:none;color:var(--bone);background:transparent;transition:background .12s,color .12s}.btn:hover{background:var(--ink-800);text-decoration:none}.btn--primary{background:var(--brass);color:var(--ink-950)}.btn--primary:hover{background:#e0ba6d}.btn--primary:focus-visible,.btn--danger:focus-visible{outline-color:var(--bone)}.btn--danger{background:var(--oxblood);border-color:var(--oxblood);color:var(--bone)}.btn--danger:hover{background:#a3332e}.btn--small{padding:8px 16px}.text-button{background:none;color:var(--brass);padding:8px;min-height:44px;text-decoration:underline;text-underline-offset:.2em;font-size:.9375rem}.inlay{position:relative;border:1px solid var(--rule);background:var(--ink-900)}.inlay::before,.inlay::after{content:"";pointer-events:none;position:absolute;width:16px;height:16px;border-color:var(--brass);border-style:solid}.inlay::before{top:-1px;left:-1px;border-width:1px 0 0 1px}.inlay::after{bottom:-1px;right:-1px;border-width:0 1px 1px 0}.callout{padding:16px 24px;border-left:3px solid var(--brass);background:var(--ink-900);font-size:.9375rem}.callout--warn{border-color:var(--oxblood)}.callout p{margin-top:8px}.demo-tag{display:inline-block;padding:4px 8px;background:var(--oxblood);color:var(--bone);font-size:.8125rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase;line-height:1.5}.section-heading{margin-bottom:32px}.section-heading .kicker{margin-bottom:12px}.section-heading.compact{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
.home-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;padding-top:64px;padding-bottom:64px}.hero-copy .kicker{margin-bottom:24px}.home-hero h1{font-size:clamp(2.75rem,7vw,5.5rem);line-height:.98}.hero-deck{font-family:var(--serif);font-size:1.5rem;line-height:1.45;margin-top:24px}.hero-description{color:var(--bone-dim);max-width:43ch;font-size:1rem;margin-top:16px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-note{margin-top:16px;max-width:48ch}.hero-art{position:relative;max-width:460px;width:100%;justify-self:end;align-self:center}.configuration-art{display:block;width:100%;height:auto}.art-caption{display:block;text-align:center;color:var(--bone-dim);font-size:.625rem;letter-spacing:.25em;margin-top:16px}.facts-section{border-top:1px solid var(--rule);padding-top:24px}.ledger{display:grid;grid-template-columns:1.2fr .7fr .9fr 1.5fr;gap:24px}.ledger>div+div{padding-left:24px;border-left:1px solid var(--rule)}.ledger dt{font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);margin-bottom:8px}.ledger dd{margin:0;font-size:.9375rem;line-height:1.5}.facts-section .src{font-size:.8125rem;margin-top:24px}.home-doors{padding-top:96px}.doors-grid{display:grid;grid-template-columns:7fr 5fr;gap:32px}.door{padding:48px;position:relative;display:flex;flex-direction:column;align-items:flex-start}.door--buy{border-top:1px solid var(--rule)}.door .kicker{margin-bottom:24px}.door h3{font-family:var(--serif);font-size:2.5rem;line-height:1.12;font-weight:400}.door>p:not(.kicker){margin-top:24px}.door-number{position:absolute;right:32px;top:32px;color:var(--rule);font:3.25rem/1 var(--serif)}.door .btn{margin-top:32px}.door .small{font-size:.8125rem}.door-demo{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;width:100%;margin-top:32px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:16px 0;font-size:.9375rem}.demo-equation{grid-column:1/-1;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;color:var(--bone-dim);font-size:.8125rem}.demo-equation strong{font:1.75rem var(--serif);color:var(--bone)}.demo-equation strong.accent{color:var(--brass)}.question-list{list-style:none;padding:0;margin-top:24px;width:100%}.question-list li{padding:12px 0;border-bottom:1px solid var(--rule);font-size:1rem;margin:0}.game-context{display:grid;grid-template-columns:1fr 2fr;gap:48px;margin-top:96px;padding:48px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.game-context h2{margin-bottom:24px}.game-context p:not(.kicker){color:var(--bone-dim)}.about-section{display:grid;grid-template-columns:1fr 2fr;gap:48px;padding:64px 0 96px}.about-section h2{margin-top:16px}.trust-list>div+div{margin-top:24px}.trust-list dt{font-weight:650;margin-bottom:8px}.trust-list dd{margin:0;color:var(--bone-dim);font-size:1rem}.site-footer{border-top:1px solid var(--rule);padding:32px 0 48px}.footer-inner{display:grid;grid-template-columns:1.5fr 1fr auto;gap:32px}.footer-brand{font-family:var(--serif);font-size:1.25rem;color:var(--bone);text-decoration:none}.footer-inner p{font-size:.8125rem;color:var(--bone-dim);margin-top:12px}.footer-inner nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:.8125rem}.footer-date{letter-spacing:.1em;line-height:1.8}
.page-heading{padding-top:48px;padding-bottom:32px}.page-heading .kicker{margin-bottom:16px}.page-heading h1+p{margin-top:16px;color:var(--bone-dim)}.planner-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}.planner-heading h1{font-size:clamp(2rem,3.6vw,3rem)}.progress-box{width:280px;flex-shrink:0;border-left:1px solid var(--rule);padding-left:32px}.progress-numbers{display:flex;gap:32px;margin-top:16px}.progress-numbers strong{font:2.5rem/1 var(--serif);color:var(--brass);font-variant-numeric:tabular-nums}.progress-numbers small{display:block;font-size:.8125rem;color:var(--bone-dim);margin-top:8px}.progress-cells{display:flex;gap:4px;margin-top:16px}.progress-cells span{width:100%;height:4px;background:var(--rule)}.progress-cells span.is-acquired{background:var(--brass)}.progress-cells span.is-crafted{background:var(--verdigris)}.planner-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:8px 0}.toolbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.status{font-size:.8125rem;color:var(--bone-dim)}.status::before{content:"";display:inline-block;width:6px;height:6px;background:var(--brass);border-radius:50%;margin-right:8px}.status.is-warning{color:var(--blood-text)}.status.is-warning::before{background:var(--blood-text)}.inline-confirm{padding:24px;background:var(--ink-800);margin-top:16px}.inline-confirm p{margin-bottom:16px}.inline-confirm button+button{margin-left:8px}.planner-boundary{margin-top:16px;color:var(--bone-dim)}#storage-warning{margin-top:16px}.stage-section{margin-top:48px}.stage-rail{display:grid;grid-template-columns:repeat(7,1fr);gap:0;margin-top:24px;margin-bottom:24px}.stage-rail label{min-width:0;position:relative;cursor:pointer}.stage-rail input{position:absolute;opacity:0;width:1px;height:1px}.stage-rail label>span{display:flex;flex-direction:column;gap:8px;min-height:88px;padding:12px;border-top:1px solid var(--rule);font-size:.8125rem;line-height:1.4;color:var(--bone-dim)}.stage-rail b{font-family:var(--serif);font-size:1.5rem;font-weight:400}.stage-rail input:checked+span{border-color:var(--brass);background:var(--ink-900);color:var(--bone)}.stage-rail input:checked+span b{color:var(--brass)}.stage-rail input:focus-visible+span{outline:2px solid var(--brass);outline-offset:-3px}.checkpoint{border:1px solid var(--rule);padding:24px 32px;background:var(--ink-900)}.checkpoint-heading{display:flex;justify-content:space-between;gap:16px;align-items:center}.checkpoint-heading .kicker{font-size:.8125rem;margin-bottom:8px}.checkpoint-count{font-size:.8125rem;color:var(--bone-dim);white-space:nowrap}.objective{font-size:.8125rem;color:var(--bone-dim);margin-top:12px}.stage-lead{margin-top:12px;font-size:.9375rem}.checklist{list-style:none;padding:0;margin-top:16px}.checklist li{padding:4px 0}.checklist label{display:flex;align-items:flex-start;gap:12px;min-height:44px;cursor:pointer;font-size:.9375rem;line-height:1.5;padding:8px 0}.checklist input{margin-top:3px}.checklist input:checked+span{text-decoration:line-through;color:var(--bone-dim)}.todo-links{display:block;margin-left:30px;font-size:.8125rem}.checkpoint .src{font-size:.8125rem}.stage-section>p{margin-top:12px}.stage-panel+.stage-panel{margin-top:32px;border-top:1px solid var(--rule);padding-top:24px}.js-ready .stage-panel{margin:0;padding:0;border:0}.planner-columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,1fr);gap:48px;margin-top:64px;align-items:start}.recipe-controls{margin-top:24px}.search-label{font-size:.8125rem;font-weight:650;display:flex;flex-direction:column;gap:8px}.search-label input{width:100%;font-size:1rem;font-weight:400}.filter-group{display:flex;margin-top:16px;flex-wrap:wrap}.filter-group label{position:relative;cursor:pointer}.filter-group input{position:absolute;opacity:0;width:1px;height:1px}.filter-group span{display:flex;gap:8px;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--rule);font-size:.8125rem;color:var(--bone-dim)}.filter-group b{font-weight:400;font-variant-numeric:tabular-nums}.filter-group input:checked+span{border-bottom:3px solid var(--brass);color:var(--bone);background:var(--ink-900)}.filter-group input:focus-visible+span{outline:2px solid var(--brass);outline-offset:-3px}#search-count{margin-top:16px;font-size:.8125rem}.recipe-list{list-style:none;padding:0;margin-top:16px}.recipe{display:grid;grid-template-columns:24px 1fr;column-gap:16px;row-gap:16px;padding:24px 0;border-top:1px solid var(--rule);margin:0;scroll-margin-top:24px}.recipe-index{font-family:var(--serif);font-size:1.25rem;color:var(--bone-dim)}.recipe-body{min-width:0}.recipe-alias{color:var(--bone-dim);font-size:.8125rem}.recipe-place{font-size:.8125rem;color:var(--bone-dim);margin-top:8px}.dot-sep{padding:0 4px}.material-chips{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:.8125rem}.material-chips b{color:var(--brass);font-variant-numeric:tabular-nums}.recipe-toggles{grid-column:2;display:flex;gap:12px}.tag-toggle{position:relative;cursor:pointer}.tag-toggle input{position:absolute;opacity:0;width:1px;height:1px}.tag-toggle span{min-height:44px;display:flex;align-items:center;gap:8px;border:1px solid var(--bone-dim);border-radius:2px;padding:8px 12px;color:var(--bone-dim);font-size:.8125rem}.tag-toggle span::before{content:"";width:12px;height:12px;display:block;border:1px solid currentColor}.tag-toggle input:checked+span{color:var(--brass);border-color:var(--brass);background:var(--ink-900)}.tag-toggle input:checked+span::before{content:"✓";border:0;line-height:1}.tag-toggle--crafted input:checked+span{color:var(--verdigris);border-color:var(--verdigris)}.tag-toggle input:focus-visible+span{outline:2px solid var(--brass);outline-offset:3px}.recipe.is-crafted h3{color:var(--verdigris)}.recipe-details{font-size:.8125rem;margin-top:12px;color:var(--bone-dim)}summary{cursor:pointer;color:var(--brass);padding:8px 0;min-height:44px;display:list-item}.recipe-details p{margin-top:8px}.recipe-details .src{font-size:.8125rem}.conflict-label{font-size:.8125rem;color:var(--blood-text);margin-top:12px}.cost-options{margin-top:8px}.cost-options label{display:flex;gap:8px;align-items:flex-start;min-height:44px;font-size:.8125rem;cursor:pointer;padding:8px 0;color:var(--bone-dim)}.cost-options input{margin-top:2px;width:16px;height:16px}.cost-options small{display:block;font-size:.8125rem}.empty-results{border:1px dashed var(--rule);padding:32px;margin-top:24px}.empty-results p{margin:12px 0 24px}.materials-aside{position:sticky;top:24px}.materials-panel{padding:24px}.materials-panel .kicker{font-size:.8125rem;margin-bottom:12px}.plan-summary{font-size:.9375rem;margin-top:16px}.materials-panel .callout{padding:12px;font-size:.8125rem;margin-top:16px}.inventory-toggle{display:flex;gap:12px;align-items:center;min-height:44px;margin-top:24px;font-size:.9375rem;font-weight:650;cursor:pointer}.materials-panel .small{font-size:.8125rem}.materials-panel p.small{margin-top:12px}.materials-table{border-collapse:collapse;width:100%;font-size:.8125rem;margin-top:24px;font-variant-numeric:tabular-nums}.materials-table th,.materials-table td{padding:12px 4px;border-bottom:1px solid var(--rule);text-align:right}.materials-table th:first-child{text-align:left;font-weight:400}.materials-table thead th{color:var(--bone-dim);font-weight:400;font-size:.8125rem}.materials-table td[data-need]{font-size:1rem}.materials-table input{width:56px;padding:8px;font-size:.9375rem;text-align:right}.materials-table .shortage{color:var(--brass);font-size:1rem;font-weight:650}.input-error-row td{text-align:left;padding:8px 0}.input-error{color:var(--blood-text);font-size:.8125rem}.method-details{border-top:1px solid var(--rule);margin-top:24px;padding-top:8px;font-size:.8125rem;color:var(--bone-dim)}.method-details p+p{margin-top:12px}.method-details .src{font-size:.8125rem}.planner-method{margin-top:64px;border-top:1px solid var(--rule);padding-top:48px}.example{display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px}.example>div{padding:24px;background:var(--ink-900);font-size:.9375rem}.example h3{margin:12px 0 16px}.example p+p{margin-top:16px}.example-result{list-style:none;padding:0;font-variant-numeric:tabular-nums}.example-result strong{color:var(--brass)}.formula{padding-top:16px;border-top:1px solid var(--rule);font-size:.8125rem}.planner-method>p{margin-top:24px}.planner-notes{padding:48px 0 64px}.planner-notes ul{margin-top:24px;max-width:75ch;font-size:.9375rem}
.guide-heading{padding:64px 0 48px}.guide-heading h1{font-size:clamp(2.5rem,5vw,4rem)}.guide-heading .guide-deck{font:1.5rem/1.4 var(--serif);margin-top:24px;color:var(--bone)}.guide-heading .small{margin-top:16px}.guide-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start}.concern-index{position:sticky;top:32px}.concern-index .label{margin-bottom:16px}.concern-index a{display:flex;gap:12px;color:var(--bone-dim);text-decoration:none;padding:12px 0;border-bottom:1px solid var(--rule);font-size:.9375rem;min-height:44px}.concern-index a:hover{color:var(--brass)}.concern-index a span{color:var(--brass);font-family:var(--serif)}.index-secondary{margin-top:24px}.index-secondary a{font-size:.8125rem;border:0;padding:8px 0}.guide-body{min-width:0;max-width:850px}.guide-body p{font-size:1rem}.short-answer{padding:32px}.short-answer h2{font-size:2.5rem;margin:16px 0 24px}.decision-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}.decision-split h3{font-size:1rem;margin-bottom:16px}.decision-split ul{font-size:.9375rem;color:var(--bone-dim)}.decision-split>div:last-child h3{color:var(--brass)}.guide-body .src{font-size:.8125rem}.concern-section,.guide-section,.demo-section,.source-section{margin-top:64px;scroll-margin-top:32px}.concern-section>.kicker,.guide-section>.kicker,.demo-section>.kicker{margin-bottom:16px}.answer-lead{margin-top:24px;font-family:var(--serif);font-size:1.3125rem!important;line-height:1.5}.contrast-pair{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px}.contrast-pair>div{border-top:1px solid var(--rule);padding-top:16px}.contrast-pair h3{font-size:1rem;margin-bottom:12px}.contrast-pair p{color:var(--bone-dim);font-size:.9375rem}.section-next{display:inline-block;margin-top:24px;font-size:.9375rem;min-height:44px;padding:8px 0}.resource-steps{list-style:none;padding:0;margin-top:32px}.resource-steps li{display:flex;gap:24px;padding:24px 0;border-bottom:1px solid var(--rule);margin:0}.step-number{color:var(--brass);font:1.75rem/1.2 var(--serif);min-width:32px}.resource-steps h3{font-size:1rem;margin-bottom:8px}.resource-steps p{font-size:.9375rem;color:var(--bone-dim)}.guide-body .callout{margin-top:24px}.table{border-collapse:collapse;width:100%;font-size:.9375rem;margin-top:32px;line-height:1.6}.table caption{text-align:left;color:var(--bone-dim);font-size:.8125rem;margin-bottom:16px}.table th,.table td{padding:16px;vertical-align:top;text-align:left;border-bottom:1px solid var(--rule)}.table thead th{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-dim);background:var(--ink-900);font-weight:500}.table tbody th{font-weight:650;min-width:100px}.table tbody td{color:var(--bone-dim)}.table td a{white-space:nowrap}.scenario{border-left:3px solid var(--brass);padding:8px 0 8px 24px;margin-top:32px}.scenario h3{font-size:1rem;margin:16px 0 12px}.scenario p{color:var(--bone-dim);font-size:.9375rem}.opinion-pair{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:32px}.opinion-pair>div{padding:24px;background:var(--ink-900)}.opinion-pair h3{font:1.5rem/1.25 var(--serif);margin:16px 0}.opinion-pair p{font-size:.9375rem;color:var(--bone-dim)}.guide-body .callout p{font-size:.9375rem}.guide-section>.small{margin-top:24px;font-size:.9375rem}.demo-section{padding:32px;border-top:1px solid var(--brass);background:var(--ink-900)}.demo-section h2{margin-bottom:24px}.demo-checks{margin:24px 0;font-size:.9375rem}.demo-section .btn{margin-top:24px}.demo-section .small{font-size:.9375rem}.source-section{padding-bottom:64px}.source-section>p{margin-top:24px;color:var(--bone-dim);font-size:.9375rem}.source-list{margin-top:24px}.source-list>div{display:grid;grid-template-columns:140px 1fr;gap:24px;border-bottom:1px solid var(--rule);padding:16px 0;font-size:.9375rem}.source-list dt{font-weight:650}.source-list dd{margin:0;color:var(--bone-dim)}.next-task{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--brass);padding:24px 0;margin-top:48px;text-decoration:none}.next-task small{display:block;font-size:.8125rem;color:var(--bone-dim);margin-bottom:8px}.next-task strong{font:1.75rem/1.2 var(--serif)}.next-task>span:last-child{font-size:2rem}.error-page{padding:96px 0;min-height:65vh}.error-page h1{margin-top:24px}.error-page p{margin:24px 0}.error-page .kicker{margin:0}
@media(min-width:1100px){.recipe{grid-template-columns:24px minmax(0,1fr) auto;column-gap:16px}.recipe-toggles{grid-column:3;grid-row:1;flex-direction:column;gap:8px}.recipe-toggles span{padding:8px;font-size:.8125rem}.recipe-body h3{font-size:1.0625rem}}
@media(max-width:1099px){.guide-layout{grid-template-columns:1fr;gap:32px}.concern-index{position:static;display:flex;flex-wrap:wrap;gap:8px 24px;border-top:1px solid var(--rule);padding-top:24px}.concern-index .label{flex-basis:100%;margin:0}.concern-index>a{font-size:.9375rem}.index-secondary{display:flex;gap:24px;margin:0;width:100%}.guide-body{max-width:none}.guide-heading{padding-bottom:32px}.planner-columns{gap:24px;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr)}}
@media(max-width:1023px){.wrap{width:calc(100% - 48px)}.home-hero{gap:24px}.header-inner nav{gap:24px}.door{padding:32px}.door h3{font-size:2rem}.planner-columns{grid-template-columns:1fr;gap:32px}.materials-aside{position:static}.materials-panel{max-width:680px}.stage-rail label>span{padding:12px 8px}.recipe{grid-template-columns:24px minmax(0,1fr) auto}.recipe-toggles{grid-column:3;grid-row:1;flex-direction:column}.example{gap:16px}.example>div{padding:16px}.materials-table input{width:88px}.home-doors{padding-top:64px}.game-context{margin-top:64px;gap:32px}.about-section{gap:32px}.footer-inner{grid-template-columns:1.5fr 1fr}.footer-date{grid-column:1/-1}}
@media(max-width:700px){.header-inner{flex-wrap:wrap;justify-content:center;padding-top:16px;gap:8px;min-height:auto}.header-inner nav{justify-content:center;width:100%;gap:24px}.header-inner nav a{min-height:48px;font-size:.8125rem}.home-hero{padding:48px 0;grid-template-columns:1fr;position:relative;gap:24px}.hero-copy{position:relative;z-index:1}.hero-art{width:240px;justify-self:center}.home-hero h1{font-size:4rem}.hero-deck{font-size:1.375rem}.hero-description{font-size:.9375rem}.hero-actions{margin-top:24px}.hero-note{font-size:.8125rem}.art-caption{margin-top:0}.ledger{grid-template-columns:1fr 1fr;gap:24px}.ledger>div+div{border:0;padding:0}.ledger>div{padding-bottom:16px;border-bottom:1px solid var(--rule)!important}.doors-grid{grid-template-columns:1fr;gap:32px}.door h3{font-size:2.25rem}.game-context,.about-section{grid-template-columns:1fr;gap:24px}.game-context h2 br{display:none}.about-section{padding:48px 0 64px}.planner-heading{display:block}.planner-heading h1 br{display:none}.progress-box{border:0;padding:24px 0 0;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:center}.progress-numbers{margin:0;gap:24px;justify-content:flex-end}.progress-numbers strong{font-size:2rem}.progress-numbers small{font-size:.8125rem;margin-top:4px}.progress-cells{grid-column:1/-1;margin-top:0}.progress-box>.label{font-size:.8125rem;max-width:12ch}.planner-toolbar{flex-wrap:wrap;gap:0}.planner-toolbar .status{flex-basis:100%;padding:8px 0}.toolbar-actions{justify-content:space-between;width:100%}.stage-rail{grid-template-columns:repeat(4,1fr);row-gap:8px}.stage-rail label>span{min-height:80px}.checkpoint{padding:24px}.example{grid-template-columns:1fr}.example>div{padding:24px}.example>div+div{border-top:1px solid var(--rule)}.planner-columns{margin-top:48px}.decision-split,.contrast-pair,.opinion-pair{grid-template-columns:1fr;gap:24px}.guide-heading h1{font-size:2.625rem}.short-answer h2{font-size:2rem}.short-answer{padding:24px}.concern-section,.guide-section,.demo-section,.source-section{margin-top:48px}.table th,.table td{padding:12px 8px}.table tbody th{min-width:0}.difficulty-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.difficulty-table tr{display:block;padding:16px 0;border-bottom:1px solid var(--rule)}.difficulty-table th,.difficulty-table td{display:block;border:0;padding:4px 0}.difficulty-table tbody th{color:var(--brass);font-size:1rem}.difficulty-table td:last-child{color:var(--bone);margin-top:4px}.platform-table{font-size:.8125rem}.platform-table td a{white-space:normal}.platform-table tbody th{width:26%}.demo-section{padding:24px}.source-list>div{grid-template-columns:1fr;gap:8px}.guide-body .answer-lead{font-size:1.1875rem!important}}
@media(max-width:599px){.wrap{width:calc(100% - 32px)}.page-heading{padding-top:32px}.hero-copy .kicker{font-size:.6875rem}.hero-art{width:200px}.home-hero{padding-top:32px}.home-hero h1{font-size:3.5rem}.hero-actions{gap:8px}.hero-actions .btn{padding:12px 16px;gap:16px}.ledger dd{font-size:.875rem}.home-doors{padding-top:48px}.door{padding:24px}.door-number{top:24px;right:24px;font-size:2.5rem}.door>.small{margin-top:16px}.game-context{margin-top:48px;padding:32px 0}.footer-inner{grid-template-columns:1fr;gap:24px}.footer-date{grid-column:auto}.footer-inner nav{flex-direction:row;flex-wrap:wrap;gap:16px}.stage-section{margin-top:32px}.section-heading.compact{align-items:flex-start}.stage-section .section-heading{display:block}.stage-section .text-button{padding-left:0;margin-top:8px}.checkpoint{padding:16px}.checkpoint-count{font-size:.8125rem}.recipe{grid-template-columns:20px minmax(0,1fr);gap:12px}.recipe-toggles{grid-column:2;grid-row:auto;flex-direction:row}.recipe-body h3{font-size:1.0625rem}.filter-group{width:100%}.filter-group label{flex:1}.filter-group span{padding:8px;font-size:.8125rem;gap:4px;justify-content:center}.materials-panel{padding:24px 16px}.materials-table input{width:56px}.recipe-section .section-heading.compact{display:block}.recipe-section .section-heading>a{display:inline-block;margin-top:12px;min-height:44px;padding:8px 0}.stage-rail label>span{font-size:.8125rem}.guide-heading{padding-top:32px}.guide-heading .small{font-size:.8125rem}.concern-index{gap:4px 16px}.concern-index>a{font-size:.8125rem;flex:1 1 40%;gap:8px}.index-secondary{gap:16px;flex-wrap:wrap}.index-secondary a{font-size:.8125rem}.short-answer{padding:24px 16px}.decision-split{gap:24px}.resource-steps li{gap:16px}.guide-body .callout{padding:16px}.opinion-pair>div{padding:24px 16px}.next-task strong{font-size:1.5rem}.inline-confirm{padding:16px}.inline-confirm button+button{margin-left:4px}.inline-confirm button{padding:12px 16px}}
@media(max-width:379px){.ledger{grid-template-columns:1fr;gap:16px}.home-hero h1{font-size:3rem}.header-inner nav{gap:16px}.hero-actions .btn{font-size:.8125rem;padding:12px}.stage-rail{grid-template-columns:repeat(3,1fr)}.tag-toggle{flex:1}.tag-toggle span{padding:8px;font-size:.8125rem;justify-content:center}.guide-heading h1{font-size:2.25rem}.materials-panel{padding:16px 12px}.materials-table input{width:48px}.materials-table th,.materials-table td{padding:12px 2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(forced-colors:active){.inlay::before,.inlay::after{border-color:CanvasText}.tag-toggle input:checked+span,.filter-group input:checked+span,.stage-rail input:checked+span{outline:2px solid Highlight}.configuration-art{forced-color-adjust:none}.progress-cells span{border:1px solid CanvasText}.progress-cells .is-acquired,.progress-cells .is-crafted{background:Highlight}}

/* User-path review: clear destinations and shorter routes to working controls. */
.site-header{position:sticky;top:0;z-index:15}.header-inner{min-height:76px}.footer-inner{grid-template-columns:1.5fr .8fr 1fr 1fr;gap:32px}.footer-inner nav{display:flex;flex-direction:column;align-items:flex-start;gap:0}.footer-inner nav h2{font:650 .9375rem/1.4 var(--sans);margin-bottom:12px}.footer-inner nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}.footer-inner nav a[aria-current=page]{color:var(--bone);font-weight:650}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:32px;padding-top:24px;border-top:1px solid var(--rule);font-size:.8125rem;color:var(--bone-dim)}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}.task-shortcuts{display:flex;flex-wrap:wrap;gap:8px 24px;padding:0 0 24px}.task-shortcuts a,.return-recipes{display:inline-flex;align-items:center;min-height:44px;font-size:.9375rem}.return-recipes{margin-bottom:16px}.change-status:empty{display:none}.change-status{padding:12px 16px;border-left:2px solid var(--brass);background:var(--ink-900);margin-top:16px}.question-list a{display:flex;justify-content:space-between;gap:12px;min-height:44px;align-items:center;color:var(--bone)}.buying-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;padding-top:24px;border-top:1px solid var(--rule);font-size:.9375rem}.buying-facts dt{font-weight:650}.buying-facts dd{margin:8px 0 0;color:var(--bone-dim)}.pc-requirements{margin-top:24px;padding:16px 24px;background:var(--ink-900);font-size:.9375rem}.pc-requirements summary{font-weight:650}.pc-requirements dl{margin-top:16px}.pc-requirements dl>div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule)}.pc-requirements dd{margin:0;color:var(--bone-dim)}.materials-aside{top:96px;max-height:calc(100vh - 112px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.concern-index{top:100px}
@media(max-width:1023px){.materials-aside{max-height:none;overflow:visible}.footer-inner{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}}
@media(max-width:700px){.header-inner{padding-top:10px;min-height:auto}.header-inner nav{gap:24px}.header-inner nav a{font-size:.875rem}.planner-heading h1{font-size:2rem}.planner-heading{padding-bottom:20px}.task-shortcuts{gap:4px 16px;padding-bottom:16px}.task-shortcuts a{font-size:.875rem}.buying-facts{grid-template-columns:1fr;gap:16px}.pc-requirements{padding:16px}.pc-requirements dl>div{grid-template-columns:1fr;gap:4px}.platform-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.platform-table tr{display:block;padding:16px 0;border-bottom:1px solid var(--rule)}.platform-table th,.platform-table td{display:block;padding:4px 0;border:0}.platform-table tbody th{width:auto;font-size:1rem;color:var(--brass)}.platform-table td{font-size:.9375rem}.platform-table td a{min-height:44px;display:inline-flex;align-items:center}.footer-inner nav{flex-direction:column;gap:0}.footer-inner{gap:24px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}.guide-heading h1{font-size:2.5rem}}
@media(max-width:379px){.header-inner nav{gap:20px}.header-inner nav a{font-size:.8125rem}.footer-inner{grid-template-columns:1fr}.footer-about{grid-column:auto}}

@media(max-height:650px){.materials-aside{position:static;max-height:none;overflow:visible}.concern-index{position:static}}

/* Shared navigation: grouped destinations and a compact mobile drawer. */
.header-inner{position:relative;flex-wrap:nowrap;padding-block:12px;min-height:80px}.header-inner #main-nav{align-items:center;gap:24px}.nav-group>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;font-size:.9375rem;cursor:pointer;color:var(--bone-dim)}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary.current-section,.nav-group[open]>summary{color:var(--brass)}.nav-panel{position:absolute;left:0;right:0;top:100%;display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:32px;background:var(--ink-900);border:1px solid var(--rule);box-shadow:0 20px 40px #0006}.nav-panel p:not(.kicker){font-size:.9375rem;color:var(--bone-dim);max-width:44ch}.header-inner nav .nav-feature{font-size:1.25rem;color:var(--bone);margin-block:12px}.nav-panel>div+div{border-left:1px solid var(--rule);padding-left:32px}.nav-toggle{display:none}.header-cta{padding:12px 16px;white-space:nowrap}.home-section{margin-top:72px;padding-top:40px;border-top:1px solid var(--rule)}.home-section .section-heading{max-width:65ch}.home-section .section-heading>p:last-child{margin-top:16px;color:var(--bone-dim)}.starter-layout{display:grid;grid-template-columns:2fr 1fr;gap:40px}.starter-list{list-style:none;padding:0}.starter-list li{margin:0;display:grid;grid-template-columns:1fr auto;gap:8px 24px;padding:20px 0;border-bottom:1px solid var(--rule)}.starter-list small{grid-column:1/-1;color:var(--bone-dim)}.starter-list a{font-size:1.125rem}.starter-note{padding:24px;align-self:start}.starter-note strong{font:3rem/1.2 var(--serif);color:var(--brass)}.starter-note p{margin:12px 0 20px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.steps-grid article{border-top:2px solid var(--brass);padding-top:20px}.steps-grid .step-number{font:2rem var(--serif);color:var(--brass)}.steps-grid h3{margin:12px 0}.steps-grid p{font-size:1rem;color:var(--bone-dim)}.steps-grid a{display:inline-flex;align-items:center;min-height:44px;margin-top:12px}.home-faq details{padding:20px 0;border-bottom:1px solid var(--rule)}.home-faq summary{font-weight:650;cursor:pointer;min-height:44px;align-content:center}.home-faq details p{margin:12px 0 8px;color:var(--bone-dim);max-width:80ch}.home-faq details a{display:inline-flex;align-items:center;min-height:44px}.home-section:last-of-type{margin-bottom:64px}
@media(max-width:1100px){.header-inner #main-nav{gap:16px}.header-inner{gap:16px}.header-cta{font-size:.8125rem}}
@media(max-width:900px){.header-inner{flex-wrap:wrap;gap:8px 16px;min-height:72px}.header-inner .wordmark{margin-right:auto}.header-cta{display:none}.nav-ready .nav-toggle{display:inline-flex}.header-inner #main-nav{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0;max-height:calc(100dvh - 100px);overflow-y:auto}.nav-ready .nav-toggle[aria-expanded=false]+#main-nav{display:none}.nav-group>summary{justify-content:space-between;padding:8px 0;min-height:48px}.header-inner #main-nav>a{min-height:48px}.nav-panel{position:static;grid-template-columns:1fr;gap:16px;padding:20px;box-shadow:none}.nav-panel>div+div{border-left:0;border-top:1px solid var(--rule);padding:12px 0 0}.header-inner nav a{font-size:.9375rem}.starter-layout{grid-template-columns:1fr 1fr;gap:24px}}
@media(max-width:600px){.home-section{margin-top:48px;padding-top:32px}.starter-layout,.steps-grid{grid-template-columns:1fr}.starter-note{padding:24px}.steps-grid{gap:24px}.wordmark{font-size:.875rem;gap:8px}.wordmark-sub{font-size:.5625rem}.nav-toggle{padding:8px 12px;gap:8px}.home-faq summary{font-size:1rem}}
@media(min-width:901px){.home-hero{padding-block:40px;gap:48px}.home-hero h1{font-size:4.6rem}.hero-art{max-width:360px;justify-self:center}.hero-copy .kicker{margin-bottom:16px}.hero-deck{margin-top:16px}.hero-actions{margin-top:24px}.home-doors{padding-top:56px}}

/* Baseline completion: PC/edition comparison and objective-based route selection. */
select{font:inherit;color:var(--bone);background:var(--ink-900);border:1px solid var(--bone-dim);border-radius:2px;min-height:44px;max-width:100%;padding:10px 12px}select:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.checkpoint-picker{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;margin:24px 0}.checkpoint-picker label{display:flex;flex-direction:column;gap:8px;font-size:.9375rem;font-weight:650;min-width:0}.checkpoint-picker select,.checkpoint-picker input{width:100%}.checkpoint-landmark{color:var(--bone-dim);font-size:.9375rem;margin-top:8px}.checkpoint-results{list-style:none;padding:0;margin:12px 0}.checkpoint-results li{padding:12px 0;border-bottom:1px solid var(--rule)}.checkpoint-results button{background:none;color:var(--brass);text-align:left;padding:8px 0;min-height:44px;font-size:1rem}.checkpoint-results p{font-size:.875rem;color:var(--bone-dim)}.story-disclosure{margin-top:16px}.story-disclosure>summary{cursor:pointer;min-height:44px;padding-block:10px;color:var(--brass);font-size:.9375rem}.story-disclosure[open]>summary{margin-bottom:12px}.story-disclosure p+p{margin-top:12px}.story-disclosure .checklist{margin-top:20px}.review-comparison{display:grid;grid-template-columns:1fr;gap:24px;margin-block:24px}.review-comparison article{padding:20px 24px;background:var(--ink-900);border-left:2px solid var(--brass)}.review-comparison h3{margin:12px 0}.review-comparison p:not(.label){font-size:.9375rem}.review-comparison a,.review-snapshot a,.edition-grid a,.purchase-details a{display:inline-flex;align-items:center;min-height:44px}.review-snapshot{padding:24px 0;border-block:1px solid var(--rule);margin-bottom:24px}.review-snapshot nav{display:flex;flex-wrap:wrap;gap:8px 24px;margin:12px 0}.storage-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}.storage-comparison>div{padding:20px;background:var(--ink-900)}.storage-comparison dt{font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:var(--bone-dim)}.storage-comparison dd{margin:8px 0 0;font-size:.875rem}.storage-comparison strong{display:block;color:var(--brass);font:2rem var(--serif)}.edition-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.edition-grid article{padding:24px}.edition-grid h3{font:1.5rem/1.3 var(--serif);margin:12px 0}.edition-grid .edition-price{font-size:.875rem;color:var(--bone-dim)}.edition-grid ul{margin:20px 0 12px;font-size:.9375rem}.purchase-details{margin-top:24px;border-top:1px solid var(--rule);padding-top:16px}.purchase-details summary{cursor:pointer;min-height:44px}.purchase-details p{margin-top:12px}.index-secondary{display:flex;flex-direction:column;gap:8px}.guide-section{scroll-margin-top:16px}
@media(max-width:1023px){.index-secondary{flex-direction:row;flex-wrap:wrap;gap:8px 24px}.checkpoint-picker{grid-template-columns:1fr}}
@media(max-width:700px){.edition-grid{grid-template-columns:1fr}.comparison-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.comparison-table tr{display:block;padding:16px 0;border-bottom:1px solid var(--rule)}.comparison-table th,.comparison-table td{display:block;border:0;padding:4px 0}.comparison-table th{font-size:1rem;color:var(--brass)}.comparison-table td::before{content:attr(data-column) ": ";font-weight:650;color:var(--bone)}.review-comparison article{padding:20px 16px}.checkpoint-count{max-width:110px;text-align:right}.checkpoint-picker select{font-size:.875rem}.stage-section .section-heading{margin-bottom:16px}.index-secondary{gap:8px 16px}.storage-comparison{gap:12px}.storage-comparison>div{padding:16px}}

/* Task images retain their full composition and readable text equivalents. */
.guide-figure{margin:0 0 2rem;background:var(--panel,#171716);border:1px solid var(--line,#37342c);border-radius:12px;overflow:hidden}
.guide-figure img{display:block;width:100%;height:auto;object-fit:contain}
.guide-figure figcaption{padding:1rem;font-size:.85rem;line-height:1.65;color:var(--muted,#b2aea2)}
.route-visual{margin:1.5rem 0 2rem;padding:1.25rem;border:1px solid var(--line,#37342c);border-radius:12px}
.route-visual figcaption{font-size:.88rem;line-height:1.6;margin-bottom:1rem}
.route-visual ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:1fr;gap:.6rem}
.route-visual li{margin:0;min-width:0}
.route-visual li a{display:flex;align-items:center;gap:.6rem;height:100%;min-height:64px;padding:.7rem;border:1px solid var(--line,#37342c);border-radius:8px;font-size:.85rem;text-decoration:none}
.route-visual li a:hover{background:#27241d}.route-visual li span{flex-shrink:0;font-family:monospace;color:var(--gold,#c1a675)}
@media(max-width:900px){.route-visual ol{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:450px){.route-visual ol{grid-template-columns:repeat(2,minmax(0,1fr))}.route-visual{padding:.8rem}}

.checkpoint-figure{max-width:760px;margin:1.25rem 0}

/* Location evidence: retain the entire map, with a usable text route beside it. */
.location-guide{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:24px;align-items:start;margin:24px 0;padding-block:24px;border-block:1px solid var(--rule)}
.location-guide figcaption{min-width:0;font-size:.9375rem}.location-guide h4{font-size:1.125rem;line-height:1.4;margin:10px 0 16px;color:var(--bone);font-weight:650}
.location-guide dl>div+div{margin-top:16px}.location-guide dt{font-weight:650;color:var(--brass)}.location-guide dd{margin:4px 0 0}
.location-note{margin-top:16px!important;color:var(--bone-dim);font-size:.875rem;border-left:2px solid var(--rule);padding-left:12px}
.location-picture{min-width:0}.location-image-link{display:block;border:1px solid var(--rule);background:var(--ink-950)}.location-image-link img{display:block;width:100%;height:auto;object-fit:contain}
.location-links{display:flex;flex-wrap:wrap;gap:0 20px;margin-top:8px}.location-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
.location-closeup{margin:16px 0}.location-closeup>summary{min-height:44px;padding-block:10px;cursor:pointer;color:var(--brass);font-size:.9375rem}.location-closeup .location-picture{max-width:760px;margin-top:12px}.location-closeup>p{margin-top:12px}
.location-image-error{padding:12px;border-left:2px solid var(--brass);margin:12px 0!important}.image-unavailable .location-image-link{min-height:80px}
@media(max-width:1023px){.location-guide{grid-template-columns:1fr;gap:16px}.location-guide figcaption{max-width:70ch}}
@media(max-width:450px){.location-guide{padding-block:16px;margin-block:20px}.location-links{gap:0 12px}.location-links a{font-size:.8125rem}.location-guide h4{font-size:1.0625rem}}

/* Homepage capability hub: actual task destinations and worked results. */
.hero-purpose{display:block;font:600 1.35rem/1.4 var(--sans,system-ui);color:var(--bone-dim);margin-top:20px;letter-spacing:0}
.home-toc{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;padding-block:20px;border-block:1px solid var(--rule)}
.home-toc .kicker{margin:0 12px 0 0}.home-toc a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
.capability-groups{display:grid;grid-template-columns:1fr 1fr;gap:48px}.capability-groups h3{font-size:1.35rem;color:var(--brass)}.capability-groups ul{list-style:none;margin:20px 0 0;padding:0}.capability-groups li{border-top:1px solid var(--rule);padding:10px 0 18px}.capability-groups li a{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-weight:650}.capability-groups li p{color:var(--bone-dim);font-size:.925rem;line-height:1.6;margin:2px 0 0;max-width:60ch}
.buying-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.buying-checks>div{border-left:2px solid var(--brass);padding-left:22px}.buying-checks dt{font-size:.875rem;color:var(--bone-dim)}.buying-checks dd{margin:12px 0 0}.buying-checks strong{font-size:1.75rem}.buying-checks p{color:var(--bone-dim);font-size:.925rem;line-height:1.6}.buying-checks a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
.location-preview,.home-calculation{display:grid;grid-template-columns:1.15fr 1fr;gap:36px;align-items:start}.location-actions{padding-left:22px;margin:0 0 20px}.location-actions li{padding-left:8px;margin-bottom:20px}.location-actions p{color:var(--bone-dim);margin:8px 0 0}.location-preview .guide-figure{margin:0}.location-preview .small{margin-top:16px}.home-calculation{grid-template-columns:1fr 1.15fr}.home-calculation h3{margin-top:16px}.home-calculation ol{padding-left:22px;color:var(--bone-dim);line-height:1.65}.home-calculation li{margin-bottom:12px}.home-calculation .small{margin-top:20px}
.home-material-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.home-material-table caption{text-align:left;font-size:.875rem;color:var(--bone-dim);padding-bottom:14px}.home-material-table th,.home-material-table td{padding:14px 10px;border-bottom:1px solid var(--rule);text-align:right}.home-material-table th:first-child{text-align:left}.home-material-table thead th{font-size:.8rem;color:var(--bone-dim);font-weight:500}.home-material-table tbody th{font-weight:500}
@media(max-width:800px){.capability-groups,.location-preview,.home-calculation{grid-template-columns:1fr;gap:28px}.buying-checks{grid-template-columns:1fr;gap:24px}.hero-purpose{font-size:1.125rem}.home-material-table th,.home-material-table td{padding:12px 6px}.home-material-table{font-size:.875rem}.home-toc{gap:0 18px}.home-toc .kicker{flex-basis:100%}.capability-groups h3{font-size:1.2rem}}
.completion-goals{margin:24px 0}.completion-goals>div{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;border-top:1px solid var(--rule);padding:16px 0}.completion-goals dt{color:var(--brass);font-weight:650}.completion-goals dd{margin:0;color:var(--bone-dim)}#partial-warning a{display:inline-block;min-height:44px;align-content:center;font-weight:650}#completion-notes{scroll-margin-top:120px}@media(max-width:600px){.completion-goals>div{grid-template-columns:1fr;gap:8px}}
.viewing-image{overflow:hidden}.image-viewer{width:min(1280px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--brass);background:var(--ink-950);color:var(--bone);overflow:auto}.image-viewer::backdrop{background:rgba(0,0,0,.85)}.image-viewer-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.image-viewer-heading h2{font:600 1.2rem/1.4 system-ui;margin:0}.image-viewer-tools{display:flex;align-items:center;gap:20px;margin:16px 0}.image-viewer-tools p{margin:0}.image-viewer-frame{max-height:calc(100dvh - 260px);overflow:auto;overscroll-behavior:contain;background:var(--ink-900)}.image-viewer-frame img{display:block;width:100%;height:auto}.image-viewer-frame.original-size img{width:auto;max-width:none;height:auto}.image-viewer-description{margin-top:16px}#image-viewer-description{line-height:1.6;margin:16px 0 0}@media(max-width:600px){.image-viewer{padding:12px;width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.image-viewer-heading h2{font-size:1rem}.image-viewer-tools{align-items:start;gap:12px}.image-viewer-tools p{font-size:.8rem}.image-viewer-frame{max-height:calc(100dvh - 300px)}.image-viewer-heading .btn,.image-viewer-tools .btn{flex-shrink:0}}

.backup-panel{border:1px solid var(--rule);padding:24px;margin-bottom:32px;scroll-margin-top:120px}.backup-panel h2{font-size:clamp(1.5rem,3vw,2rem)}.backup-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin:20px 0}.backup-actions label{display:grid;gap:8px;max-width:100%}.backup-actions input{max-width:100%;min-height:44px}.backup-panel textarea{display:block;width:100%;box-sizing:border-box;background:#141212;color:inherit;padding:12px;border:1px solid var(--rule);margin:12px 0;font:inherit;overflow-wrap:anywhere}.backup-panel .inline-confirm{display:block}.backup-panel .inline-confirm[hidden]{display:none}.backup-panel button{min-height:44px}.backup-panel #backup-status:empty{display:none}@media(max-width:600px){.backup-panel{padding:16px}.backup-actions{display:grid;grid-template-columns:minmax(0,1fr)}.backup-actions>*{min-width:0;width:100%}.backup-actions input{width:100%}.backup-panel .inline-confirm button{width:100%;margin:6px 0}}

/* Room lookup: task first; each scene starts with identification, not its code. */
.puzzle-intro{padding-block:48px 24px}.puzzle-intro h1{font:500 clamp(2rem,4.2vw,3.25rem)/1.1 var(--serif);margin:16px 0}.puzzle-intro>p{max-width:68ch}.puzzle-jumps{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:20px}.puzzle-jumps a{min-height:44px;display:inline-flex;align-items:center}.puzzle-controls{border-block:1px solid var(--rule);padding:24px 0}.puzzle-controls>label:first-child{font-weight:650}.puzzle-search{display:flex;gap:12px;margin-top:12px}.puzzle-search input{min-width:0;flex:1;font:inherit;min-height:48px;background:var(--ink-900);color:var(--bone);border:1px solid var(--bone-dim);padding:10px 14px}.puzzle-controls .small{margin:12px 0}.puzzle-late-toggle{display:flex;align-items:center;gap:12px;min-height:44px}.puzzle-late-toggle input{width:20px;height:20px;accent-color:var(--brass)}#puzzle-status{font-size:.875rem;color:var(--bone-dim);margin-top:12px}.puzzle-columns{display:grid;grid-template-columns:minmax(230px,1fr) minmax(0,2fr);gap:48px;margin-block:32px}.puzzle-index h2{font:650 1.1rem/1.4 system-ui;margin-bottom:16px}.puzzle-index ol{list-style:none;padding:0}.puzzle-index li{margin:0;border-top:1px solid var(--rule)}.puzzle-index a{display:flex;gap:12px;align-items:center;min-height:48px;padding:12px 8px;text-decoration:none}.puzzle-index a[aria-current=true]{background:var(--ink-800);border-left:3px solid var(--brass)}.puzzle-index a span{font-variant-numeric:tabular-nums;color:var(--bone-dim)}.puzzle-index summary,#later-content>summary{min-height:48px;padding-block:12px;cursor:pointer;color:var(--brass)}.puzzle-scene{scroll-margin-top:110px;margin-bottom:32px}.puzzle-scene h2{margin:8px 0 20px}.scene-landmark{font-size:1.15rem;max-width:65ch}.puzzle-hint,.puzzle-failures details{border-top:1px solid var(--rule);padding:0 16px;background:var(--ink-900)}.puzzle-scene summary{cursor:pointer;min-height:48px;padding-block:14px;font-weight:650}.puzzle-scene details>p,.puzzle-scene details>ol{margin:8px 0 20px}.puzzle-code{font:500 3rem/1.2 var(--serif);letter-spacing:.15em;color:var(--brass);font-variant-numeric:tabular-nums}.puzzle-failures{margin-top:28px}.puzzle-failures h3{margin-bottom:16px}.puzzle-failures details{background:transparent}.puzzle-video{border-top:1px solid var(--rule)}.scene-next{margin-top:24px}.scene-next a{display:inline-flex;align-items:center;min-height:44px}.puzzle-reference{padding-block:40px;border-top:1px solid var(--rule)}.puzzle-reference h2{margin:12px 0 24px}.puzzle-reference dl>div{padding:16px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:1fr 2fr;gap:24px}.puzzle-reference dt{font-weight:650;color:var(--brass)}.puzzle-reference dd{margin:0}.puzzle-reference li{margin-bottom:16px;max-width:75ch}.enhanced #later-content>summary{display:none}.puzzle-scene[hidden],.puzzle-index li[hidden],#later-index[hidden],#later-content[hidden]{display:none}#puzzle-empty h2{margin:0 0 16px}
@media(max-width:800px){.puzzle-columns{grid-template-columns:1fr;gap:24px}.puzzle-index ol{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.puzzle-reference dl>div{grid-template-columns:1fr;gap:8px}.puzzle-intro{padding-top:32px}.puzzle-scene{scroll-margin-top:100px}}
@media(max-width:450px){.puzzle-search{flex-direction:column}.puzzle-index ol{grid-template-columns:1fr}.puzzle-hint,.puzzle-failures details{padding-inline:12px}.puzzle-columns{margin-top:24px}}
