*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#08130f;color:#f5f1e8;font:16px/1.5 system-ui,sans-serif}button{font:inherit;color:inherit;cursor:pointer;border:1px solid #d8c69855;border-radius:7px;background:#122820e8;min-height:48px;padding:10px 18px;touch-action:manipulation}button:hover{background:#345c4c}button:focus-visible{outline:3px solid #f5d486;outline-offset:3px}button:disabled{opacity:.4;cursor:default}.primary{background:#d8bd82;color:#19281f;border-color:#f8e2ac}.primary:hover{background:#f0d29a}.quiet{color:#afbdaf;font-size:13px}small{font-size:10px;letter-spacing:.2em;color:#d8bd82}header{position:absolute;inset:0 0 auto;display:flex;align-items:center;gap:13px;height:90px;padding:18px 30px;background:linear-gradient(#07140ff5,#07140fb0,transparent);z-index:6;pointer-events:none}header>*{pointer-events:auto}.brand span{font:18px Georgia;letter-spacing:.12em}.brand small{display:block;margin-top:3px;font-size:8px}.top-actions{margin-left:auto;display:flex;gap:8px}.top-actions button{font-size:13px}.mark{font:30px Georgia;color:#e2c58e}#home{background:transparent;padding:0 12px;border-color:#c1a56e;min-width:48px}#stage{position:absolute;inset:0;overflow:hidden}#viewport{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;touch-action:none;overflow:hidden}#world{position:relative;flex-shrink:0;transform-origin:50% 50%;will-change:transform}#scene,#film,#hotspots{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}#film{display:none;background:#000}#film.show{display:block}#scene{user-select:none;pointer-events:none}#hotspots{pointer-events:none;transition:opacity .2s}#hotspots.hidden{opacity:0;visibility:hidden}.hotspot{pointer-events:auto;position:absolute;transform:translate(-50%,-50%);border:1px solid #e7cf97;background:#17382ce8;box-shadow:0 2px 15px #0007,0 0 0 5px #e7cf9717;border-radius:50%;width:51px;height:51px;min-height:51px;padding:0;color:#f6deaa;font-size:24px;display:grid;place-items:center}.hotspot span{position:absolute;top:58px;left:50%;transform:translateX(-50%);padding:5px 10px;border-radius:4px;background:#10291eef;font-size:12px;white-space:nowrap;line-height:1.2;box-shadow:0 2px 8px #0004}.hotspot:hover{background:#a48043;color:white}#sceneMeta{position:absolute;left:30px;top:100px;font-size:10px;letter-spacing:.11em;display:flex;gap:15px;color:#e4dccb;pointer-events:none}#sceneType{background:#10251ebd;padding:4px 8px}#counter{padding:4px 8px}#welcome{position:absolute;left:7%;top:23%;max-width:600px;padding:34px 38px;border:1px solid #b49a5c77;background:linear-gradient(125deg,#10271ff5,#10271fdb);border-radius:8px;box-shadow:0 25px 70px #0008;z-index:7}h1{font:clamp(36px,4vw,64px)/1.05 Georgia;margin:18px 0}#welcome p{font-size:17px}#welcome .quiet{font-size:12px}#welcome button{margin:10px 8px 6px 0}#caption{position:absolute;bottom:128px;left:30px;max-width:500px;padding:14px 20px;border-left:2px solid #d1b477;background:linear-gradient(90deg,#0c201ce8,#0c201cbd);pointer-events:none;border-radius:4px}#caption h2{font:29px Georgia;margin:3px 0}#caption p{font-size:13px;margin:5px 0;color:#e1e5dc;max-width:430px}#lookTools{position:absolute;right:25px;bottom:130px;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;max-width:245px}#lookTools button{font-size:12px}#zoomIn,#zoomOut{font-size:24px!important;width:55px}footer{position:absolute;bottom:35px;left:24px;right:24px;display:flex;gap:8px;align-items:center;z-index:6}footer button{font-size:13px}#routeProgress{display:flex;gap:5px;margin:auto;align-items:center}#routeProgress button{width:12px;height:12px;min-height:12px;padding:0;background:#8c948a;border-radius:50%;border:0}#routeProgress button.current{background:#e4c88c;box-shadow:0 0 0 4px #e4c88c33}#gestureHint{position:absolute;bottom:9px;left:30px;font-size:10px;color:#d6ddce}#notice{position:absolute;top:17%;left:50%;transform:translateX(-50%);background:#152f25f0;padding:10px 20px;border-radius:5px;opacity:0;transition:opacity .25s;pointer-events:none;font-size:13px;z-index:20}#notice.visible{opacity:1}dialog{color:#f5f1e8;border:1px solid #baa370;border-radius:10px;background:#10271f;width:min(940px,94vw);max-height:90vh;padding:32px;box-shadow:0 25px 90px #000b}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font:38px/1.15 Georgia;margin:14px 0 24px}.close{float:right;position:sticky;top:0;font-size:13px;z-index:3}#routeCards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}#routeCards button{text-align:left;padding:0;overflow:hidden;background:#1c362a}#routeCards img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}#routeCards strong,#routeCards small{display:block;padding:6px 12px}#routeCards small{padding-top:0;font-size:9px}#storyDialog{width:min(850px,94vw)}#storyTabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #d8c69844;padding-bottom:17px;margin-bottom:20px}#storyTabs button[aria-selected=true]{color:#17291f;background:#dfc58b}#storyBody{min-height:180px;line-height:1.7;font-size:17px}#storyBody h3{font:28px Georgia;color:#e4c98e;margin:12px 0}#storyBody .prompt{padding:15px 18px;border-left:2px solid #ddbf80;background:#243d2c;font-size:16px}#storyBody .sources{font-size:11px;color:#b6c5b5}a{color:#e8cb8c}#storyBody img{max-width:100%;max-height:42vh;display:block;margin:auto;object-fit:contain}#storyBody .choices{display:flex;flex-wrap:wrap;gap:9px}#storyBody .selection{background:#ceb77f;color:#10271f}#storyActions{display:flex;gap:8px;margin-top:20px}#storyActions button{font-size:13px}#storyBody .subtle{font-size:13px;color:#b6c5b5}.timeline{display:flex;gap:12px;margin:20px 0}.timeline div{flex:1;border-top:2px solid #c4a667;padding:12px 8px}.timeline b{display:block;color:#dfc58b;font-size:23px}.timeline p{font-size:14px}body.playing #caption{opacity:.25}body.playing #lookTools{visibility:hidden}body.watch #caption,body.watch #lookTools,body.watch #sceneMeta{display:none}body.watch #gestureHint{display:none}body.intro #caption,body.intro #lookTools,body.intro footer,body.intro #gestureHint{visibility:hidden}@media(max-width:850px){header{padding:12px;height:76px}.brand span{font-size:13px}.brand small{display:none}.top-actions{gap:4px}.top-actions button{padding:9px;font-size:11px}#sceneMeta{top:85px;left:15px}#welcome{left:5%;top:19%;max-width:90%;padding:25px}#caption{left:15px;bottom:150px;width:calc(100% - 185px);padding:10px 12px}#caption h2{font-size:23px}#caption p{font-size:11px}#lookTools{right:12px;bottom:145px;max-width:145px}#lookTools button{padding:8px;font-size:10px}footer{left:12px;right:12px;bottom:34px;flex-wrap:wrap}footer button{font-size:11px;padding:9px 12px}#routeProgress{order:9;width:100%;justify-content:center;margin-top:9px}#gestureHint{left:12px;font-size:9px}#routeCards{grid-template-columns:repeat(2,1fr)}dialog{padding:20px}dialog h2{font-size:30px}.hotspot{width:46px;height:46px;min-height:46px}.hotspot span{font-size:10px;top:49px}#storyBody{font-size:15px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
