@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=IBM+Plex+Mono:wght@400;500&family=Source+Serif+4:ital,wght@0,400;0,600;1,400&display=swap');
:root{color-scheme:dark;--bg:#141b20;--panel:#20282e;--ink:#e9e5d9;--muted:#a5adaf;--line:#3e494e;--orange:#f28b41;--teal:#73bbba;--mono:'IBM Plex Mono',monospace;--head:'Barlow Condensed',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 'Source Serif 4',Georgia,serif}a{color:inherit}button{cursor:pointer;font:500 11px var(--mono);color:inherit;background:transparent;border:1px solid var(--line);padding:12px}button:hover{background:#38434a}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button:disabled{cursor:default;opacity:.45}header{display:flex;align-items:center;padding:14px 3%;gap:25px;border-bottom:1px solid var(--line);font:10px var(--mono);letter-spacing:1px}header>a{font:800 24px var(--head);text-decoration:none}header>span{flex:1}nav{display:flex;gap:6px}main{max-width:1600px;margin:auto;padding:26px 3%}.masthead{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.eyebrow{font:10px/1.6 var(--mono);letter-spacing:2px;margin:0 0 9px;color:var(--muted)}h1{font:800 clamp(44px,6vw,90px)/.95 var(--head);margin:0;letter-spacing:-1px}h1 em{color:var(--orange);font-style:normal}.window{text-align:right;border-left:1px solid var(--line);padding-left:28px}.window span,.window small{display:block;font:9px var(--mono);letter-spacing:1px}.window b{font:500 42px var(--mono);line-height:1.6}#ledger{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;padding:16px 22px;background:var(--panel);border-top:2px solid var(--orange);border-bottom:1px solid var(--line)}.meter>div:first-child{display:flex;justify-content:space-between;align-items:baseline;font:11px var(--mono);letter-spacing:2px}.meter b{font:600 23px var(--head);letter-spacing:0}.meter small{display:block;font:9px var(--mono);color:var(--muted);margin-top:7px}.ticks{display:flex;gap:4px;margin-top:4px}.ticks i{flex:1;height:4px;background:#455058}.ticks .lit{background:var(--orange)}.trust .ticks .lit{background:var(--teal)}.pressure .ticks .lit{background:#ec6660}#progress{list-style:none;display:flex;justify-content:space-between;gap:14px;padding:16px 0;margin:0 0 13px;border-bottom:1px solid var(--line);font:9px var(--mono);color:#6f7e83}#progress li{display:flex;gap:8px;align-items:center}#progress span{font-size:11px}#progress .current{color:var(--orange)}#progress .passed{color:var(--muted)}.layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:28px}.scene-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.scene-bar p{font:600 23px var(--head);margin:0}.scene-bar button{font-size:9px}#stage{position:relative;aspect-ratio:3/2;background:#0e1418;overflow:hidden;border:1px solid var(--line)}#art{width:100%;height:100%;object-fit:contain}#targets{position:absolute;inset:0}.target{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;padding:7px;border:0;background:transparent!important}.pin{display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:#161e24df;border:1px solid #f6b56e;color:#f4e8d0;font:12px var(--mono);box-shadow:0 2px 10px #0009;transform:rotate(-5deg)}.target:hover .pin,.target.active .pin{background:var(--orange);color:#162027}.target-label{display:none;position:absolute;top:45px;left:50%;transform:translateX(-50%);width:max-content;max-width:145px;padding:6px 8px;background:#192328ed;color:#ffe9c8;font:10px/1.5 var(--mono);z-index:2}.target:hover .target-label,.target:focus-visible .target-label,.labelled .target-label{display:block}#ending-stamp{position:absolute;bottom:22px;left:25px;font:700 30px var(--head);letter-spacing:3px;text-shadow:0 2px 6px #000}.scene-caption{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);font:10px var(--mono);padding:9px 0}.scene-caption button{border:0;font-size:10px}.inventory{display:flex;align-items:center;gap:17px;padding:22px 0;border-bottom:1px solid var(--line)}.inventory>div:first-child{max-width:170px}#item-status{font:10px/1.6 var(--mono);color:var(--muted);margin:0}#items{display:flex;flex:1;gap:8px}.item{flex:1;text-align:left;min-width:0;padding:10px 12px}.item>span{display:block;font-size:23px;color:var(--teal);margin-bottom:9px}.item small{display:block;font:8px var(--mono);margin-top:9px;color:var(--muted)}.item.owned{background:#253539;border-color:#547c79}.item.selected{border-color:var(--orange);outline:1px solid var(--orange)}#collection{font:10px/1.6 var(--mono);padding:15px 0;color:var(--muted)}aside{border-left:1px solid var(--line);padding-left:27px}h2{font:600 32px/1.1 var(--head);margin:0 0 18px}#prose{max-height:360px;overflow:auto;padding-right:9px;font-size:17px;line-height:1.65;scrollbar-color:#6b7c81 transparent;scrollbar-width:thin}#prose p{margin:0 0 16px}.voice{font-style:italic;color:#c8d0cc;border-left:2px solid var(--orange);padding-left:13px}.note{font:11px/1.7 var(--mono);padding:12px;background:#293238;color:#c5cbca}#full-text{font-size:9px;margin-top:10px;padding:8px}.decision{margin-top:23px;padding-top:20px;border-top:2px solid var(--orange);scroll-margin-top:20px}.choice{display:block;width:100%;text-align:left;font:600 17px/1.4 'Source Serif 4',serif;padding:14px 14px;border:1px solid #526069;border-left:3px solid var(--orange);background:#252f35;margin:0 0 10px}.choice small{display:block;font:10px/1.65 var(--mono);color:var(--muted);margin-top:9px}.empty{color:var(--muted);font-size:15px}#all-actions{width:100%;font-size:10px}#feedback{font:10px/1.6 var(--mono);color:var(--teal)}#feedback:empty{display:none}#end-card{margin-top:20px}#end-card h3{font:600 28px var(--head);margin:10px 0}#end-card p{font-size:15px}#again,#confirm-new{background:var(--orange);color:#151d21;border-color:var(--orange)}footer{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--line);margin-top:24px;font:9px var(--mono);color:var(--muted)}dialog{max-width:800px;width:92vw;max-height:90vh;background:var(--panel);color:var(--ink);padding:30px;border:1px solid var(--orange)}dialog::backdrop{background:#090e14dd}#close{float:right;margin-left:20px}dialog h2{font-size:38px}dialog p{line-height:1.75}dialog li{margin:8px 0}.route-plan{border-left:2px solid var(--line);margin:30px 0;padding-left:20px}.route-plan>div{padding:15px;font:11px var(--mono);display:flex;gap:15px;flex-wrap:wrap}.route-plan small{width:100%;color:var(--muted);font:10px var(--mono)}.route-plan .current{background:#324144;color:var(--orange)}[hidden]{display:none!important}#location,#title{scroll-margin-top:20px}
@media(max-width:1050px){.layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px}aside{padding-left:18px}.inventory{flex-wrap:wrap}.inventory>div:first-child{max-width:none;width:100%}#progress{gap:8px;font-size:8px}#progress li{gap:5px}.window{display:none}}@media(max-width:760px){header{flex-wrap:wrap;gap:10px}header>span{font-size:8px}nav{width:100%}nav button{flex:1}main{padding:24px 4%}h1{font-size:52px}.masthead{margin-bottom:20px}#ledger{gap:15px;padding:12px}.meter>div:first-child{font-size:9px;letter-spacing:1px}.meter small{font-size:8px}.meter b{font-size:20px}#progress{overflow:auto;justify-content:flex-start;gap:22px;padding:14px 0}#progress li{flex-shrink:0}.layout{display:flex;flex-direction:column}.scene-bar p{font-size:23px}.scene-bar button{font-size:8px}.scene-caption{font-size:9px}.scene-caption button{font-size:9px}.target-label{font-size:8px;max-width:105px}.pin{width:27px;height:27px}.inventory{padding:17px 0}.inventory>div:first-child{display:flex;gap:15px;align-items:baseline}.inventory .eyebrow{white-space:nowrap}#items{width:100%}.item{font-size:10px;padding:10px}.item small{font-size:7px}aside{border-left:0;padding:15px 0;border-top:1px solid var(--line)}#prose{max-height:none;overflow:visible;padding-right:0}#full-text{display:none}footer{flex-direction:column;gap:12px}dialog{padding:22px}.scene{min-width:0}#cancel{font-size:9px}#collection{font-size:9px}.decision{margin-top:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(max-width:760px){.meter>div:first-child{flex-direction:column;align-items:flex-start;gap:5px}.meter b{white-space:nowrap;font-size:23px}.meter>div:first-child>span{font-size:8px;letter-spacing:.8px}}
