@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Manrope:wght@400;500;600&display=swap";:root{font-family:Manrope,sans-serif;color:#ece7dc;background:#090f14;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #c8ad7c;outline-offset:6px}#app,#viewport{position:fixed;inset:0}#viewport canvas{display:block;width:100%;height:100%}.topbar{position:absolute;top:30px;left:38px;right:38px;display:flex;align-items:center;justify-content:space-between}.back{color:#c0c7c9;text-decoration:none;font-size:12px;letter-spacing:.03em;display:flex;gap:12px;align-items:center}.edition{color:#a4adb3;font-size:9px;letter-spacing:.22em;display:flex;align-items:center;gap:15px}.edition i{display:block;width:3px;height:3px;background:#b39b70;border-radius:50%}.icon-button{width:32px;height:32px;border:1px solid #8b9ca02e;color:#b9c3c8;background:#0a131c55;border-radius:50%;font-size:20px}.title-block{position:absolute;left:5.2vw;top:22%;pointer-events:none;max-width:340px;text-shadow:0 2px 24px #050a10}.eyebrow{color:#baa785;font-size:9px;letter-spacing:.22em;margin:0 0 23px}h1{font-family:Cormorant Garamond,Georgia,serif;font-weight:400;font-size:clamp(44px,5.2vw,82px);line-height:.96;letter-spacing:-.035em;margin:0 0 24px}h1 span{color:#b59b6d}.intro{font-size:12px;line-height:1.9;color:#aeb7bc}.rule{width:32px;height:1px;background:#b9a07888;margin:26px 0 19px}.scene-note{color:#7e8e97;font-size:10px;max-width:185px;line-height:1.7}.toolbar{position:absolute;left:50%;transform:translate(-50%);bottom:54px;display:flex;align-items:center;gap:32px;background:#0a121bcc;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #9fafb724;border-radius:5px;padding:8px 14px 8px 8px;white-space:nowrap}.views{display:flex;gap:3px}.toolbar button{border:0;color:#8e9ea9;background:transparent;padding:13px 17px;border-radius:3px;font-size:11px}.views button span{font-size:9px;opacity:.55;margin-right:8px}.views button.active{background:#c6b18c16;color:#e2cfaa;box-shadow:inset 0 0 0 1px #c6b18c26}.toolbar button:hover{color:#f3e8d6}.settings{display:flex;align-items:center;gap:10px;border-left:1px solid #9fafb724;padding-left:12px}.settings label{font-size:10px;color:#8e9ea9;display:flex;align-items:center;gap:10px}.settings input{width:72px;accent-color:#bba47c;height:2px}#orbit[aria-pressed=true]{color:#e2cfaa}.interaction-hint{position:absolute;bottom:16px;width:100%;text-align:center;font-size:9px;color:#7f909b;letter-spacing:.04em;pointer-events:none}.interaction-hint span{padding:0 12px;color:#c6b18c}#loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;text-align:center;font-size:12px;color:#cfc4af;background:#09121be8;padding:25px;border:1px solid #c6b18c26;border-radius:4px}.load-track{margin-top:18px;height:2px;background:#bec6cf22}#load-progress{height:100%;background:#c6b18c;width:0;transition:width .3s}#show-ui{position:absolute;right:25px;bottom:25px;color:#b4bfc5;background:#09121baa;border:1px solid #ffffff22;padding:10px;border-radius:3px;font-size:10px}.ui-hidden .topbar,.ui-hidden .title-block,.ui-hidden .toolbar,.ui-hidden .interaction-hint{display:none}@media(max-width:800px){.topbar{top:18px;left:20px;right:20px}.edition{font-size:8px;letter-spacing:.12em}.title-block{top:12%;left:24px}h1{font-size:46px}.intro,.rule,.scene-note{display:none}.eyebrow{font-size:8px;margin-bottom:12px}.toolbar{bottom:46px;flex-direction:column;gap:4px;padding:6px}.settings{border:0;padding:0}.toolbar button{padding:10px 13px}.settings label{padding:0 12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.escape-page .toolbar{max-width:calc(100vw - 24px)}@media(max-width:800px){.escape-page .views{width:100%}.escape-page .views button{padding:10px 8px;font-size:9px}.escape-page .views button span{display:none}.escape-page .settings{gap:0}.escape-page .settings label{padding:0 7px;font-size:9px;gap:6px}.escape-page .settings input{width:50px}}@media(max-width:1100px){.escape-page .toolbar{flex-direction:column;gap:4px}.escape-page .settings{border-left:0;padding-left:0}}@media(max-width:800px){.escape-page .views button{flex:1;padding:10px 6px}}
