:root{--panel: rgba(18, 17, 16, .82);--line: rgba(255, 255, 255, .1);--text: #ece6dc;--muted: #a99f90;--accent: #c39a5c}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#121110;color:var(--text);font:14px/1.4 -apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif}#view{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;cursor:grab}#view.dragging{cursor:grabbing}.panel{position:fixed;background:var(--panel);border:1px solid var(--line);border-radius:10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none}body:not(.touch) :is(.title,.hunt,.spots){height:38px}.title{top:16px;left:16px;padding:5px 5px 5px 12px;display:flex;align-items:center;gap:12px}.title .name{font-size:13px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.times{display:flex;gap:3px}.times button{background:transparent;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:4px 9px;font:inherit;font-size:12px;cursor:pointer}.times button:hover{border-color:var(--accent)}.times button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#17130d}.cane{padding:2px;border:0;border-radius:8px;cursor:pointer;font:inherit;color:var(--text);background:repeating-linear-gradient(-45deg,#d9293b 0,#d9293b 5px,#fbf3e6 5px,#fbf3e6 10px)}.cane-in{display:flex;align-items:center;gap:5px;padding:3px 9px 3px 5px;border-radius:6px;background:#1b1714;font-size:12px;line-height:16px;white-space:nowrap}.cane svg{width:16px;height:16px;flex:none}.cane:hover .cane-in{background:#2c231d}.cane[aria-pressed=true]{box-shadow:0 0 12px #d9293ba6}.cane[aria-pressed=true] .cane-in{background:#b3192b;color:#fff}.cane:focus-visible{outline:2px solid var(--gold, #e8b64c);outline-offset:2px}body.touch .title .cane{display:none}body.touch .chip.cane{padding:2px;border:0;display:flex}body.touch .chip.cane .cane-in{padding:8px 9px}body.touch .chip.cane svg{width:18px;height:18px}.spots{top:16px;right:16px;padding:5px;display:flex;gap:3px}.spots button{background:transparent;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:4px 10px;font:inherit;font-size:12px;white-space:nowrap;cursor:pointer}.spots button:hover{border-color:var(--accent)}.spots button.on{background:var(--accent);border-color:var(--accent);color:#17130d}.help{left:16px;bottom:16px;padding:4px;color:var(--muted);font-size:13px}.help-list{display:none;gap:3px;padding:6px 10px 8px}.help.open .help-list{display:grid}#helpToggle{background:transparent;color:var(--text);border:0;border-radius:6px;padding:5px 9px;font:inherit;font-size:12px;cursor:pointer}#helpToggle:after{content:" ▴" / "";color:var(--muted)}.help.open #helpToggle:after{content:" ▾" / ""}#helpToggle:hover{background:#ffffff0f}kbd{display:inline-block;min-width:20px;padding:0 5px;margin-right:3px;border:1px solid var(--line);border-radius:4px;color:var(--text);text-align:center;font:12px/18px ui-monospace,Menlo,monospace}.map{right:16px;bottom:16px;margin:0;padding:8px}#map{display:block;width:300px;border-radius:6px;cursor:crosshair}.map figcaption{color:var(--muted);font-size:12px;padding:6px 2px 0}@media (max-width: 720px){body:not(.touch) .help{display:none}body:not(.touch) .spots{left:16px;right:auto;top:auto;bottom:200px;overflow-x:auto;max-width:calc(100vw - 32px)}body:not(.touch) #map{width:180px}}.sprint{left:50%;bottom:16px;transform:translate(-50%);color:var(--text);font:600 13px/1 inherit;font-family:inherit;padding:11px 18px;cursor:pointer;letter-spacing:.04em}.sprint[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#17130d}.touch-ui{display:none}body.touch #view{touch-action:none}body.touch{overscroll-behavior:none;-webkit-user-select:none;-webkit-touch-callout:none}body.touch button{touch-action:manipulation}body.touch .touch-ui{display:block}body.touch .help{display:none}body.touch .title{top:calc(10px + env(safe-area-inset-top));left:calc(10px + env(safe-area-inset-left));padding:9px 11px}body.touch .chips{position:fixed;top:calc(10px + env(safe-area-inset-top));right:calc(10px + env(safe-area-inset-right));display:flex;gap:6px}body.touch .chip{position:static;color:var(--text);font:inherit;font-size:13px;padding:9px 13px;cursor:pointer}body.touch .chip[aria-expanded=true]{background:var(--accent);border-color:var(--accent);color:#17130d}body.touch .spots{display:none;top:calc(58px + env(safe-area-inset-top));right:10px;left:10px;flex-wrap:wrap;gap:6px;padding:8px}body.touch.places-open .spots{display:flex}body.touch .spots button{padding:10px 13px;font-size:14px}body.touch .map{display:none;top:calc(58px + env(safe-area-inset-top));right:10px;bottom:auto;padding:6px}body.touch.map-open .map{display:block}body.touch #map{width:min(240px,60vw)}body.touch .stick{position:fixed;left:calc(22px + env(safe-area-inset-left));bottom:calc(26px + env(safe-area-inset-bottom));width:128px;height:128px;border-radius:50%;background:#12111073;border:1px solid rgba(255,255,255,.18);touch-action:none}body.touch .knob{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:#ece6dcd9;box-shadow:0 2px 8px #00000059;pointer-events:none}body.touch .stick.active{border-color:var(--accent)}body.touch .sprint{left:auto;transform:none;right:calc(26px + env(safe-area-inset-right));bottom:calc(52px + env(safe-area-inset-bottom));width:78px;height:78px;border-radius:50%;padding:0}body.touch .look-hint{position:fixed;left:50%;bottom:calc(150px + env(safe-area-inset-bottom));transform:translate(-50%);color:var(--muted);font-size:12px;background:var(--panel);padding:6px 10px;border-radius:8px;transition:opacity .6s;pointer-events:none}body.touch .look-hint.gone{opacity:0}body.touch .title{max-width:calc(100vw - 270px - env(safe-area-inset-left) - env(safe-area-inset-right))}body.touch .title .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.touch .times{display:none}@media (orientation: landscape){body.touch #map{width:min(170px,calc((100vh - 230px)*1.2))}}:root{--gold: #e8b64c}.hunt{top:16px;left:50%;transform:translate(-50%);padding:5px 5px 5px 11px;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);white-space:nowrap}.icons{display:flex;gap:6px}.icons svg{height:20px;width:auto;fill:#ece6dc33;transition:fill .4s,filter .4s}.icons svg.got,.icons.found svg{fill:var(--gold);filter:drop-shadow(0 0 4px rgba(232,182,76,.55))}.hunt.done #huntCount{color:var(--gold)}#helpBtn{width:22px;height:22px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--text);font:600 12px/1 inherit;font-family:inherit;cursor:pointer;padding:0}#helpBtn:hover{border-color:var(--accent)}.open-btn{left:50%;bottom:72px;transform:translate(-50%,8px);opacity:0;pointer-events:none;visibility:hidden;z-index:2;background:var(--gold);border-color:var(--gold);color:#17130d;font:600 14px/1 inherit;font-family:inherit;padding:12px 18px;cursor:pointer;transition:opacity .2s,transform .2s,visibility 0s .2s;box-shadow:0 0 22px #e8b64c59}.open-btn.show{opacity:1;transform:translate(-50%);pointer-events:auto;visibility:visible;transition:opacity .2s,transform .2s}.toast{position:fixed;left:50%;top:max(24vh,160px);transform:translate(-50%,-6px);opacity:0;pointer-events:none;background:var(--panel);border:1px solid rgba(232,182,76,.45);border-radius:10px;padding:11px 18px;color:var(--text);font-size:15px;text-align:center;transition:opacity .35s,transform .35s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);max-width:calc(100vw - 32px)}.toast.show{opacity:1;transform:translate(-50%)}.toast strong{color:var(--gold);font-weight:600}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#0a090899;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.overlay[hidden]{display:none}body:not(.intro) .start{display:none}body.intro .panel,body.intro .touch-ui,body.intro .toast{visibility:hidden}.card{--pad: 28px;width:min(760px,100%);max-height:100%;overflow-y:auto;padding:var(--pad) 32px;background:#121110;border:1px solid var(--line);border-radius:14px}.card-foot{position:sticky;bottom:calc(-1 * var(--pad));margin:20px 0 calc(-1 * var(--pad));padding:14px 0 var(--pad);background:linear-gradient(#12111000,#121110 14px)}.card h1{margin:0;font-size:26px;font-weight:650;letter-spacing:.01em}.card h2{margin:0 0 10px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}.card .sub{margin:4px 0 22px;color:var(--muted)}.cols{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}.controls ul{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:13.5px}.controls li{display:grid;grid-template-columns:172px 1fr;gap:10px;color:var(--muted)}.controls .keys{color:var(--text)}body.touch .controls .desk,body:not(.touch) .controls .tap{display:none}body.touch .controls li{grid-template-columns:112px 1fr}.quest{background:#e8b64c12;border:1px solid rgba(232,182,76,.3);border-radius:10px;padding:16px 18px}.quest h2{color:var(--gold);font-size:15px;letter-spacing:.02em;text-transform:none;margin-top:12px}.quest p{margin:0;color:var(--muted);font-size:13.5px}.quest .icons svg{height:46px;fill:var(--gold);filter:drop-shadow(0 0 6px rgba(232,182,76,.4))}.best{display:flex;gap:14px;align-items:center;margin:0 0 22px;padding:14px 16px;background:#c39a5c24;border:1px solid var(--accent);border-radius:10px}.best p{margin:0;color:var(--text);font-size:14.5px;line-height:1.45}.best strong{display:block;color:var(--gold);font-size:17px;font-weight:650;letter-spacing:.01em;margin-bottom:2px}.best-icon{flex:none;width:34px;height:34px;fill:var(--gold)}body.touch .best .desk,body:not(.touch) .best .tap{display:none}.go{background:var(--gold);color:#17130d;border:0;border-radius:9px;padding:13px 24px;font:600 15px/1 inherit;font-family:inherit;cursor:pointer}.go:disabled{opacity:.6;cursor:progress}.go:not(:disabled):hover{filter:brightness(1.08)}.finale .card{width:min(540px,100%);text-align:center}.finale .icons{justify-content:center;margin-bottom:16px}.finale .icons svg{height:64px}.finale .sub{margin-bottom:20px}@media (max-width: 720px){.cols{grid-template-columns:1fr}.card{--pad: 20px;padding:var(--pad) 20px}.card h1{font-size:22px}.go{width:100%}}@media (max-height: 540px) and (orientation: landscape){.start .card{--pad: 16px;padding:var(--pad) 22px;width:min(860px,100%)}.start .card h1{font-size:20px}.start .card .sub{display:none}.start .cols{grid-template-columns:1.1fr 1fr;gap:16px}.start .best{margin-bottom:14px;padding:10px 14px}.start .best strong{font-size:15px}.start .best p{font-size:13px}.start .controls ul{gap:4px;font-size:13px}.start .quest{padding:12px 14px}.start .quest .icons svg{height:30px}.start .card-foot{margin-top:12px;padding-top:10px}.start .go{width:100%;padding:11px 24px}}body.touch .hunt{top:calc(58px + env(safe-area-inset-top));padding:5px 6px 5px 9px;gap:8px}body.touch .hunt .more{display:none}body.touch.places-open .hunt,body.touch.map-open .hunt{visibility:hidden}@media (max-width: 1180px){.hunt .more,.title .cane-label{display:none}.title .cane-in{padding-right:5px}}@media (max-width: 1060px){body:not(.touch) .spots{top:62px}}@media (max-width: 880px){body:not(.touch) .hunt{top:62px}body:not(.touch) .spots{top:108px;bottom:auto}}body.touch .icons svg{height:17px}body.touch .quest .icons svg{height:40px}body.touch .finale .icons svg{height:56px}body.touch .open-btn{bottom:calc(176px + env(safe-area-inset-bottom));padding:14px 22px;font-size:15px}@media (orientation: landscape) and (min-width: 520px){body.touch .open-btn{bottom:calc(40px + env(safe-area-inset-bottom))}}body.touch.prompting .look-hint{opacity:0}body.touch #helpBtn{width:30px;height:30px}
