@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f1ebd5;--acid:#d9e9a1;--ink:#15251e}*{box-sizing:border-box}body{margin:0;background:#080f11;color:var(--paper);font-family:'DM Sans',Arial,sans-serif;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--acid);outline-offset:5px}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}header{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:28px 38px;z-index:3;pointer-events:none;background:linear-gradient(#081012aa,transparent)}header>*{pointer-events:auto}.wordmark{font-family:Georgia,serif;font-size:35px;letter-spacing:-3px;font-style:italic;font-weight:bold;color:var(--paper);text-decoration:none;line-height:.8}.wordmark span{display:block;font-family:'DM Sans',sans-serif;font-style:normal;letter-spacing:2px;font-size:8px;margin-top:13px}.status{font-size:10px;letter-spacing:2px;display:flex;align-items:center;gap:12px}.status i{width:6px;height:6px;background:#d3eba3;border-radius:50%;box-shadow:0 0 12px #b3e871}.status span{opacity:.4}.outline{border:1px solid #dbe9ca4d;background:#10201966;color:var(--paper);border-radius:3px;padding:12px 17px;font-size:12px}.outline span{margin-left:20px}#intro{position:absolute;top:24%;left:5%;pointer-events:none;width:410px;transition:opacity .4s,transform .4s;text-shadow:0 2px 25px #061411}#intro button{pointer-events:auto}.eyebrow,.tiny{font-size:9px;letter-spacing:2px;line-height:1.6}.eyebrow{color:var(--acid);margin-bottom:20px}h1{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-stretch:condensed;font-size:clamp(60px,6.6vw,108px);line-height:.9;font-weight:700;letter-spacing:-1px;margin:0}#intro h1 span{display:block;font-size:.36em;line-height:1.4;letter-spacing:1px;margin-top:8px}#intro p{font-size:15px;line-height:1.7;color:#e8e5d5c4;margin:22px 0}.primary{border:0;background:var(--acid);color:var(--ink);font-size:13px;font-weight:700;padding:16px 20px;min-width:175px;border-radius:2px}.primary span{float:right;margin-left:32px}.intro-note{font-size:10px;letter-spacing:.4px;color:#c4cdb8a8;margin-top:18px}body.exploring #intro{opacity:0;transform:translateX(-25px);pointer-events:none}body.exploring #intro button{pointer-events:none}#place{position:absolute;bottom:135px;left:38px;pointer-events:none}#place .tiny{font-size:8px;color:#bdc4ae}#place h2{font-family:Georgia,serif;font-size:20px;font-weight:400;font-style:italic;margin:7px 0}footer{position:fixed;bottom:28px;left:38px;right:38px;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:4}.controls,.right-tools{display:flex;gap:3px;padding:5px;border:1px solid #c9d5bd30;background:#101d19db;backdrop-filter:blur(14px);border-radius:5px}footer button{border:0;background:transparent;color:#d3dbc7;padding:12px 15px;font-size:12px;border-radius:3px;white-space:nowrap}footer button:hover,footer button.active{background:#c5d6af20;color:#fff}footer button span{margin-left:6px}#walk-help{position:fixed;bottom:8px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:1.3px;color:#b5beaa}#walk-help b{padding:0 14px;color:#d6e5a3}#crosshair{display:none;position:absolute;left:50%;top:50%;opacity:.45;transform:translate(-50%,-50%);pointer-events:none}body.walking #crosshair{display:block}#interact{position:absolute;bottom:120px;left:50%;transform:translateX(-50%);background:#e9f0d7;color:#1b2b23;padding:12px 20px;border:none;border-radius:3px;font-size:12px;box-shadow:0 5px 30px #0007}#toast{position:fixed;top:100px;left:50%;transform:translate(-50%,-20px);background:#e8efd7;color:#213126;padding:14px 24px;max-width:90%;font-size:12px;z-index:10;opacity:0;pointer-events:none;transition:.3s}#toast.show{opacity:1;transform:translate(-50%,0)}#receipt{position:fixed;right:38px;top:100px;bottom:110px;overflow:auto;width:310px;background:#eee8d4;color:#263328;z-index:5;padding:28px 25px;font-family:monospace;box-shadow:0 20px 50px #0008;clip-path:polygon(0 0,100% 0,100% 98%,97% 100%,94% 98%,91% 100%,88% 98%,85% 100%,82% 98%,79% 100%,76% 98%,73% 100%,70% 98%,67% 100%,64% 98%,61% 100%,58% 98%,55% 100%,52% 98%,49% 100%,46% 98%,43% 100%,40% 98%,37% 100%,34% 98%,31% 100%,28% 98%,25% 100%,22% 98%,19% 100%,16% 98%,13% 100%,10% 98%,7% 100%,4% 98%,0 100%)}.receipt-head{text-align:center;line-height:1.7;font-weight:bold}.receipt-head small{font-size:8px}#progress{border-top:1px dashed;padding-top:14px;font-size:11px}#discoveries{padding-left:25px;font-size:11px;line-height:2.5}.receipt-end{border-top:1px dashed;padding-top:18px;font-size:9px;line-height:2;text-align:center}dialog{background:#f0ecdE;color:#1a2921;border:0;max-width:760px;width:90%;max-height:85vh;padding:40px;border-radius:4px;box-shadow:0 30px 120px #000a}dialog::backdrop{background:#030b0bd9;backdrop-filter:blur(8px)}#close{position:absolute;right:12px;top:8px;border:0;font-size:30px;background:none;color:#263c2c}#modal-body h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:42px;line-height:1.05;margin:10px 0 20px}#modal-body p{font-size:14px;line-height:1.8}#modal-body img{width:100%;height:auto;border-radius:2px}.label{font-size:9px;letter-spacing:2px;color:#68735f}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.art-card{background:transparent;border:0;text-align:left;padding:0;color:#263c2c}.art-card img{aspect-ratio:1.776;object-fit:contain;background:#0c1514}.art-card span{display:block;font-size:11px;line-height:1.5;margin:7px 0}#loading{position:fixed;inset:0;background:#0c1915;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .5s}#loading h1{font-size:48px;margin:25px 0 0}#loading p{font-family:Georgia,serif;font-style:italic;color:#bec9ae}#touch-controls{position:fixed;left:20px;bottom:150px;z-index:4;text-align:center}#touch-controls button{width:42px;height:42px;background:#12271dcc;border:1px solid #d2e5ad55;color:#eff4df;border-radius:50%;margin:2px;touch-action:none}#touch-controls>button{margin-bottom:5px}@media(max-width:750px){header{padding:22px}.status{display:none}.wordmark{font-size:30px}.outline{padding:10px;font-size:10px}#intro{left:24px;top:22%;width:280px}#intro h1{font-size:66px}.eyebrow{font-size:8px;max-width:230px}#intro p{font-size:13px}#place{left:24px;bottom:135px}#place h2{font-size:16px}footer{left:16px;right:16px;bottom:30px;gap:8px;align-items:flex-end}.controls{flex:1;justify-content:space-around}footer button{font-size:11px;padding:10px 7px}.right-tools{flex-direction:column}.right-tools button{font-size:9px;padding:6px}.controls button span{display:block;margin:5px 0 0;font-size:9px}#walk-help{font-size:7px;letter-spacing:.3px;bottom:10px}#walk-help b{padding:0 4px}#receipt{right:16px;top:85px;bottom:130px;width:285px}#interact{bottom:150px;max-width:65%;font-size:10px;left:65%}dialog{padding:35px 22px}#modal-body h2{font-size:32px}.grid{gap:12px}#toast{top:82px;font-size:10px;width:max-content}body.walking #place{display:none}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.room-card{border:1px solid #b0baa0;background:#e4e5d2;text-align:left;padding:24px 18px;color:#1f3c30;min-height:120px;transition:background .2s}.room-card:hover{background:#d2dfb6}.room-card span{display:block;font-size:9px;letter-spacing:1.3px;margin-bottom:15px}.room-card strong{font-family:Georgia,serif;font-size:20px;font-weight:400}.room-card:last-child{grid-column:1/-1;background:#cbd9ac}.hint-item{border:0;background:none;color:#263328;font:inherit;line-height:1.6;text-align:left;padding:4px 0}.hint-item:hover{text-decoration:underline}#receipt{width:335px}.wordmark img{width:88px;max-height:45px;object-fit:contain}#loading .tiny{margin-bottom:8px}@media(max-width:750px){.room-grid{grid-template-columns:1fr}.room-card{min-height:90px;padding:17px}.controls{gap:0}.controls button{padding:9px 5px}.controls button span{font-size:8px}#receipt{width:290px}.room-card strong{font-size:18px}#archive{display:none}}
#modal-body .room-card img{height:115px;object-fit:cover;margin-bottom:16px;filter:saturate(.8)}#modal-body .room-card:last-child img{height:160px}#modal-body a{color:#36583d;text-underline-offset:3px}#modal-body .room-card span{margin-bottom:10px}

#place{background:rgba(10,16,15,.62);padding:9px 14px 6px;border-radius:6px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
body:not(.exploring) #place{display:none}
