@import url('../../assets/fonts/fonts.css');
:root{color-scheme:dark;--cream:#e5dfcb;--muted:#a1a99c;--gold:#cfb577}*{box-sizing:border-box}body{margin:0;background:#141c1c;color:var(--cream);font-family:'DM Sans',sans-serif;font-size:13px;background-image:radial-gradient(ellipse at 50% 35%,#26312b55,transparent 65%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:none;border:1px solid #4b5448;border-radius:3px;padding:10px 16px}button:hover{background:#bca97020;border-color:#c4b781}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #e2c683;outline-offset:4px}header{height:84px;border-bottom:1px solid #a1aa8d20;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{color:var(--cream);text-decoration:none;font-size:24px;display:flex;align-items:center;gap:12px}.brand span{font-size:11px;letter-spacing:3px}.top{display:flex;align-items:center;gap:30px}.top>span{font-size:9px;letter-spacing:2px;color:var(--muted)}.top button{border:0;font-size:11px}main{max-width:1320px;margin:auto;padding:40px 48px 0}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.eyebrow{font-size:9px;letter-spacing:2.5px;color:var(--gold)}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:60px;letter-spacing:-2px;line-height:1.05;margin:12px 0}h1 span{color:var(--gold)}.intro>p{color:var(--muted);line-height:1.9;font-size:12px}.game{position:relative;border:1px solid #62684a77;box-shadow:0 25px 60px #0004;background:#101717}.gamebar{height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 23px;border-bottom:1px solid #7b7b4925;background:#1c2522}.gamebar>div{display:flex;align-items:center;gap:20px}#room{font-family:Georgia,serif;font-style:italic;font-size:15px}.chapter{font-size:9px;letter-spacing:2px;color:var(--gold)}#inventory{font-size:10px;color:var(--gold)}canvas{display:block;width:100%;height:auto;touch-action:none}.status{height:43px;display:flex;gap:10px;align-items:center;padding:0 22px;background:#1c2522;color:#c7cbb7;font-size:11px}.dot{width:5px;height:5px;background:#c1ac6b;border-radius:50%}#moves{margin-left:auto;white-space:nowrap;color:#8f9a87;font-size:10px}.overlay{position:absolute;inset:48px 0 43px;background:linear-gradient(90deg,#0b1717ed,#11201bc9);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;backdrop-filter:blur(3px)}.overlay.hidden{display:none}.overlay h2{font-size:50px;margin:14px 20px}.overlay p:not(.eyebrow){font-size:13px;line-height:1.9;color:#b7bdab}.primary{background:#d2bc82;color:#17201c;border:0;padding:15px 28px;margin:19px 0;min-width:200px;display:flex;justify-content:space-between;gap:25px}.primary:hover{background:#e5d3a3}.overlay small{color:#879482;font-size:10px}.below{display:flex;align-items:center;justify-content:space-between;padding:20px 0;gap:15px}.controls{display:flex;gap:25px;color:#9da794;font-size:10px}.controls>span{display:flex;align-items:center;gap:5px}kbd{font-family:inherit;font-size:9px;border:1px solid #56604b;border-bottom-width:2px;border-radius:3px;min-width:21px;padding:4px;text-align:center;color:#c5c9b5}.actions{display:flex;gap:8px}.actions button{font-size:10px;border:0;color:#b8bea9}footer{border-top:1px solid #a1aa8d20;display:flex;align-items:center;justify-content:space-between;padding:24px 0;color:#7e8a78;font-size:10px}footer>span{font-size:8px;letter-spacing:2px}footer button{border:0;font-size:10px}.touch{display:none;justify-content:center;gap:10px;margin-bottom:20px}.touch>div{display:flex;flex-direction:column;gap:4px}dialog{background:#202c26;color:var(--cream);border:1px solid #9b9566;padding:35px;max-width:90vw}dialog::backdrop{background:#000a}dialog h2{font-size:36px;margin:0}dialog p{color:var(--muted)}#roomButtons{display:flex;flex-direction:column;gap:10px;margin:24px 0}@media(max-width:750px){header{height:65px;padding:0 20px}.top>span{display:none}main{padding:25px 15px 0}.intro{display:block;margin-bottom:20px}h1{font-size:48px}.intro>p{font-size:11px}.gamebar{padding:0 12px}.gamebar>div{gap:10px}#inventory{font-size:9px}#room{font-size:12px}.overlay h2{font-size:30px;margin:0 10px}.overlay p:not(.eyebrow){font-size:10px;margin:8px}.overlay .eyebrow,.overlay small{display:none}.primary{margin:7px;padding:10px 20px}.status{padding:0 10px;height:47px;font-size:10px}.overlay{bottom:47px}.controls{display:none}.below{justify-content:center;padding:12px 0}.touch{display:flex}footer{gap:10px}footer>span{display:none}footer p{font-size:9px}}
.puzzle-entry{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 16px}.puzzle-entry>span{font-size:8px;letter-spacing:2px;color:#a5af96}.puzzle-entry button{color:#e3cd96;border-color:#98885c;background:#9c8a5215;font-size:11px}.hint-panel{padding:15px 20px;border-left:2px solid #a18e5d;background:#242f27;color:#d4d9bd;line-height:1.7;font-size:12px}.hint-panel[hidden]{display:none}#gateState{font-size:10px;color:#b9c698;white-space:nowrap;margin-left:auto;margin-right:20px}.weight-room .gamebar>div{gap:12px}.weight-room .chapter{letter-spacing:1px;font-size:8px}@media(max-width:750px){.puzzle-entry{flex-direction:column;align-items:stretch}.puzzle-entry>span{display:none}.puzzle-entry button{min-height:44px}.touch{gap:6px;flex-wrap:wrap}.touch button{padding:10px 12px;min-width:42px;min-height:42px}.weight-room .gamebar{height:auto;min-height:60px;flex-wrap:wrap;gap:6px;padding:8px 12px}.weight-room #room{font-size:12px}.weight-room #gateState{margin-right:0}.weight-room #inventory{flex-basis:100%}.weight-room .overlay{top:60px}.weight-room .status{height:auto;min-height:52px;padding:8px 10px}.weight-room .overlay{bottom:52px}.controls{gap:10px}.overlay #returnAdventure{font-size:10px;padding:8px;margin-bottom:8px}.weight-room .overlay h2{font-size:27px}.weight-room .overlay p{line-height:1.4}}
