:root{--paper:#e8e1d3;--gold:#d0af74}body{font-family:Arial,sans-serif}button{border-radius:2px;min-height:46px;border-color:#68736b;font-size:15px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f4d6a0;outline-offset:4px}button.selected{border:2px solid #dfc18d;background:#344940}.primary{background:#d3b98a;color:#172021;font-weight:600}h1{font-size:clamp(42px,6.5vw,84px);line-height:1.02;letter-spacing:-1.4px}h3{font-size:clamp(27px,3vw,38px);line-height:1.18}h4{font:normal 21px Georgia,serif;color:#d9c6a4;margin:27px 0 12px}p{font-size:1rem;line-height:1.7}.eyebrow,#chapterTag{font-size:12px;letter-spacing:2.2px}#hud{top:25px;left:30px}#location{font-size:26px}#objective{font-size:14px;max-width:410px;top:106px;padding:8px 12px;border-left:2px solid #b69762;background:linear-gradient(90deg,#0a1518cb,#0a151800)}#desktopHelp{font-size:12px;letter-spacing:.3px}#status{font-size:12px;letter-spacing:1px;bottom:45px}#wayfinder{position:fixed;right:28px;top:85px;background:#102027b8;border:1px solid #879085;font-size:13px;min-height:42px}body.menu #wayfinder{display:none}#crosshair{color:#e1cfaa;font-size:26px}#prompt{top:63%;border-radius:2px;font-size:15px;background:#091315ed;min-width:170px;max-width:90%;padding:12px 20px}.ready{box-shadow:0 0 18px #edd5a517}#subtitle{bottom:100px;width:min(740px,80%);background:#071013ed;border-left:2px solid #be9c69;font-size:var(--subsize);text-align:left;box-shadow:0 10px 30px #0005}#memoryNotice{position:fixed;top:175px;left:30px;max-width:390px;padding:14px 18px;background:#122325ee;border:1px solid #7c8c7655;color:#d3dfd5;line-height:1.55;font-size:14px;opacity:0;pointer-events:none;transform:translateY(-7px);transition:opacity .7s,transform .7s}#memoryNotice.visible{opacity:1;transform:translateY(0)}body.menu #memoryNotice{display:none}#overlay{background:linear-gradient(90deg,#050c10dd 0%,#091216a8 50%,#08101555);padding:30px}#panel{border-left:1px solid #a7926e66;background:#0b161bea;max-width:860px;padding:32px 38px;box-shadow:0 18px 80px #0005}#panel.home{background:linear-gradient(90deg,#081217ed,#08121780);border:0;max-width:1000px;box-shadow:none;padding:50px}#overlay:has(.inspection){justify-content:flex-end;background:linear-gradient(90deg,#07101311,#07101399)}#panel.inspection{width:min(610px,100%);margin-right:2vw}#panel.journal{max-width:860px}.journalObjective{padding:15px 22px;border:1px solid #63746b;background:#142428}.journalObjective p{margin:8px 0 0}.journalObjective small{letter-spacing:2px;color:#d4b887}.journalTabs{display:flex;gap:12px;margin:16px 0}.empty{color:#9eaeaa;font-style:italic;font-size:15px}.question{border-left:2px solid #8a9d91;padding-left:18px}.memoryEntry{padding:12px 0;border-bottom:1px solid #3a4a4a}.memoryEntry small{display:block;color:#c2ac81;letter-spacing:1px}.receipt{padding:15px;border:1px solid #769480;color:#d0e2cc}.comparison{display:flex;gap:10px;margin:20px 0}.comparison>div{flex:1;padding:13px;border:1px solid #5a706a;background:#10232a}.comparison small{font-size:12px;color:#d4b983}.comparison p{font-family:monospace;font-size:15px;margin:8px 0}.paper{background:#d8cdb3;color:#28302b;font-size:17px;border-left-width:3px}.paper strong{color:#202520}.landmarkList{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0}.landmarkList button{text-align:left;display:flex;flex-direction:column;gap:6px}.landmarkList small{font-size:12px;color:#b0c1b8}#mapCanvas{border:1px solid #596a65}#toast{z-index:10;max-width:330px;font-size:14px}#touchActions button{font-size:14px;min-height:54px}#vignette{background:radial-gradient(ellipse,transparent 35%,#02060a88 100%)}#status span:last-child{font-size:11px}body.touch #wayfinder{top:74px;right:15px}body.touch #objective{max-width:65%}body.touch #subtitle{bottom:225px}body.touch #status{bottom:18px}body.touch #memoryNotice{top:155px;max-width:75%;font-size:13px}body.touch #prompt{top:54%}
@media(max-width:650px){#overlay{padding:12px}#panel,#panel.home{padding:24px 20px}#panel.inspection{margin:0}#hud{left:17px;top:16px}#location{font-size:22px}#chapterTag{font-size:11px}#objective{left:17px;top:89px;font-size:13px}#status{left:18px;gap:15px}#memoryNotice{left:17px}#prompt{font-size:14px}#subtitle{font-size:var(--subsize);width:91%}.landmarkList{grid-template-columns:1fr}#touchActions{grid-template-columns:repeat(2,74px);bottom:65px}#stick{bottom:70px}#toast{top:135px;right:16px;max-width:75%}.journalTabs{flex-wrap:wrap}h1{font-size:43px}.comparison{gap:5px}.comparison>div{padding:9px}}
@media(max-height:550px){#panel{max-height:94vh}#subtitle,body.touch #subtitle{bottom:50px;width:50%;font-size:16px}#objective{top:74px;max-width:45%}#memoryNotice,body.touch #memoryNotice{top:125px;font-size:12px;padding:8px;max-width:45%}#desktopHelp{display:none}#status{bottom:12px}body.touch #prompt{top:51%}#hud{top:12px}#touchActions,#stick{bottom:36px}#wayfinder,body.touch #wayfinder{top:62px}#panel.home{padding:20px 30px}#panel.home .intro{margin:12px 0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

body.menu #prompt{display:none!important}#toast{top:145px}body.touch #toast{top:155px}

.belongingCloseup{display:block;width:min(100%,320px);height:220px;object-fit:contain;margin:4px auto 20px;background:radial-gradient(ellipse,#45504655,transparent 70%)}
@media(max-height:550px){.belongingCloseup{height:140px}}
/* Pair foreground and background in every state: the old hover rule darkened
   primary buttons while retaining their dark text. Opaque fills also make touch
   controls independent of whatever the room happens to draw behind them. */
button,#wayfinder,#touchActions button{background:#18242b;color:#fff8eb;border-color:#9ea9ac;text-shadow:none}
button:hover,button:focus-visible,button:active,#wayfinder:hover,#wayfinder:focus-visible,#wayfinder:active,#touchActions button:hover,#touchActions button:focus-visible,#touchActions button:active{background:#ede0c5;color:#161c20;border-color:#fff8eb}
button.primary,button.selected,button[aria-pressed=true],#touchActions button.primary{background:#e5c58d;color:#161c20;border-color:#fff0cb;font-weight:700}
button.primary:hover,button.primary:focus-visible,button.primary:active,button.selected:hover,button.selected:focus-visible,button.selected:active,button[aria-pressed=true]:hover,button[aria-pressed=true]:focus-visible,#touchActions button.primary:hover,#touchActions button.primary:focus-visible,#touchActions button.primary:active{background:#ffdfa5;color:#161c20}
button small,.landmarkList button small{color:inherit;opacity:1}
button:disabled,button:disabled:hover{background:#343c41;color:#d8dee1;border-color:#899397;cursor:default;opacity:1}
button:focus-visible{outline:3px solid #fff8eb;outline-offset:4px;box-shadow:0 0 0 6px #101820}

.evidencePhoto{display:block;width:100%;max-height:340px;object-fit:contain;margin:18px auto;background:#161916}

/* Controls honor the interface text-size preference, including phone layouts. */
button,#wayfinder,#touchActions button{font-size:var(--textsize);line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.landmarkList small,button small{font-size:.85em}
#touchActions{width:min(54vw,260px);grid-template-columns:repeat(2,minmax(0,1fr))}
#touchActions button{height:auto;min-height:54px}
summary:focus-visible{outline:3px solid #ffe1a3;outline-offset:3px}
body.menu #toast{display:none!important}
.buildVersion{font-size:14px;color:#d2be96;margin-top:20px}
