@font-face{font-family:Field;src:local('Georgia');font-display:swap}*{box-sizing:border-box}body{margin:0;background:#172521;color:#f4eddb;font-family:system-ui,sans-serif;font-size:14px}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;background:#263832;border:1px solid #526258;border-radius:5px;padding:10px 16px;min-height:42px;cursor:pointer}button:hover:not(:disabled){background:#35483e;border-color:#aeb29a}button:disabled{opacity:.42;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,#stage:focus-visible{outline:3px solid #e9be68;outline-offset:3px}a{color:#e7c481;text-decoration:none}header{height:62px;max-width:1180px;margin:auto;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #3a4a40}#home{padding:12px 0;min-width:64px}.wordmark{letter-spacing:3px;font:19px Georgia,serif}.wordmark small{font:9px system-ui;letter-spacing:2px;margin-left:14px;color:#b4bda9}header button{border:0;background:transparent;font-size:12px}#count{display:inline-block;margin-left:8px;color:#ebc274}main{max-width:1100px;margin:auto;padding:0 28px}.heading{display:flex;align-items:center;justify-content:space-between;height:78px}h1{font:clamp(24px,3vw,36px) Georgia,serif;font-weight:400;margin:0;letter-spacing:-1px}.heading button{font-size:12px;padding:6px 8px;min-height:36px;background:none;border:0;color:#c0cbb7}#pockets{display:flex;gap:8px}#pockets button{background:none;border-color:#485a4c;flex:1;max-width:220px;text-align:left}#pockets button[aria-pressed=true]{background:#d8bd82;color:#1b2a23;border-color:#d8bd82}#clue{font-size:12px;color:#c8cdbb;min-height:18px;margin:12px 0}.scene-shell{position:relative;background:#394238;border:1px solid #64705b;border-radius:9px;overflow:hidden}#stage{width:100%;height:clamp(310px,46vh,460px);touch-action:none;position:relative;overflow:hidden}#stage canvas{display:block;width:100%;height:100%}.scene-top{pointer-events:none;position:absolute;top:12px;left:16px;right:12px;display:flex;justify-content:space-between;align-items:center}.scene-top span{font-size:10px;letter-spacing:2px;background:#15211bd9;padding:8px 10px;border-radius:3px}.scene-top button{pointer-events:auto;background:#15211bc9;min-height:36px;font-size:12px;padding:6px 12px;border-color:#87937a}#scene-note{position:absolute;bottom:12px;left:16px;font-size:12px;padding:7px 10px;border-radius:4px;background:#15211bd9;pointer-events:none;max-width:75%}#inspect{position:absolute;bottom:10px;right:12px;background:#15211bd9;font-size:12px}.instruction{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:50px}.instruction p{margin:8px 0;font-size:13px;max-width:85%}#readout{font-size:10px;letter-spacing:1px;white-space:nowrap;color:#d4bc85}.primary{background:#dec084;color:#1b271e;border-color:#dec084;font-weight:600}.primary:hover:not(:disabled){background:#efd499}.tool-row{display:flex;gap:8px}.tool-row button{flex:1}.tool-row small{color:inherit;opacity:.6;margin-left:8px;font-size:10px}.fine-controls{display:flex;gap:12px;align-items:center;margin-top:9px;font-size:12px;min-height:38px}.fine-controls input{width:130px;accent-color:#d9b974}.fine-controls button{font-size:11px;min-height:32px;padding:5px 8px}#strength-note{min-width:40px;color:#e6c987}#complete-tools{display:flex;align-items:center;gap:18px}#complete-tools[hidden],[hidden]{display:none!important}#journal,#help{background:#21332b;margin:20px 0;padding:22px;border:1px solid #64705b;border-radius:7px;line-height:1.7}.panel-title{display:flex;align-items:center;justify-content:space-between}h2{font:26px Georgia,serif;margin:0 0 12px}#keeps{display:flex;gap:8px;flex-wrap:wrap}.keep{padding:12px;background:#17261f;border:1px solid #697355;border-radius:6px;min-width:118px}.keep strong{color:#e2bd6c;display:block}.keep small{color:#c6cbb8}.muted,#storage-status{font-size:12px;color:#b6c2ad}footer{font-size:10px;color:#a4b29d;display:flex;justify-content:space-between;gap:16px;padding:22px 0}#fallback{height:100%;display:grid;place-content:center;justify-items:center;background:radial-gradient(ellipse,#566252,#303d35);gap:12px}#fallback>span{font-size:10px}.flat-pan{position:relative;width:240px;height:195px;border:10px ridge #76817a;border-radius:50%;background:#323b34;box-shadow:0 12px 22px #1118,inset 0 0 26px #0a100b}.grain{position:absolute;width:6px;height:6px;border-radius:45%;background:#a29980;transform:translate(-50%,-50%)}.grain.gold{background:#e9c360;box-shadow:0 0 5px #ecd489;width:10px;height:8px}.grain.black{background:#141b16}.grain.sand{width:3px;height:3px}#sample{min-width:240px;display:flex;justify-content:space-between;gap:30px}
@media(max-width:600px){body{font-size:12px}header{height:46px;padding:0 14px}.wordmark{font-size:15px;letter-spacing:2px}.wordmark small{display:none}header button{padding:5px 0}main{padding:0 12px}.heading{height:54px}h1{font-size:24px}.heading button{font-size:10px;padding:5px 0}#pockets{gap:5px}#pockets button{font-size:11px;padding:8px 7px;min-height:38px;text-align:center}#clue{font-size:11px;line-height:1.4;margin:8px 0;min-height:30px}#stage{height:clamp(208px,38vh,320px)}.scene-top{top:8px;left:9px;right:8px}.scene-top span{font-size:8px;letter-spacing:1px;padding:6px 7px}.scene-top button{min-height:32px;font-size:10px;padding:5px 8px}#scene-note{font-size:10px;left:8px;bottom:8px;max-width:68%;padding:6px}#inspect{font-size:10px;min-height:32px;right:8px;bottom:7px;padding:6px}.instruction{min-height:45px}.instruction p{font-size:11px;line-height:1.4;max-width:79%;margin:6px 0}#readout{font-size:8px;letter-spacing:0}.tool-row{gap:5px}.tool-row button{font-size:11px;padding:7px 4px;min-height:40px}.tool-row small{display:none}.fine-controls{gap:6px;margin-top:6px;font-size:10px}.fine-controls input{width:70px;min-width:40px}.fine-controls button{font-size:10px;padding:5px;min-height:34px}#strength-note{min-width:35px}#sample{width:100%;font-size:12px;min-height:42px}#again{font-size:12px}#round-summary{font-size:10px}footer{font-size:9px;padding:16px 0}#journal,#help{padding:14px}h2{font-size:23px}#keeps{gap:5px}.keep{min-width:100px;padding:8px}}
@media(max-height:650px) and (max-width:600px){#stage{height:215px}.heading{height:46px}#clue{margin:6px 0;min-height:30px}.instruction{min-height:42px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
