@import"https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500;600&family=Plus+Jakarta+Sans:wght@400;500;600&display=swap";:root{--bg-dark: #111316;--ink-ivory: #f2efe9;--ink-stone: #b8b3a8;--ink-muted: #7e7a72;--accent-vermilion: #e04f26;--accent-bronze: #c89d54;--rule-hairline: rgba(242, 239, 233, .14);--rule-strong: rgba(242, 239, 233, .32);--surface-glass: rgba(15, 18, 22, .78);--surface-drawer: rgba(14, 16, 19, .96);--font-serif: "Instrument Serif", Georgia, serif;--font-sans: "Plus Jakarta Sans", sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100vw;height:100vh;overflow:hidden;background-color:var(--bg-dark);color:var(--ink-ivory);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}#webgl-container{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:1}#three-canvas{width:100%;height:100%;display:block;cursor:grab}#three-canvas:active{cursor:grabbing}#hotspots-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8;pointer-events:none}.hotspot-pin{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;background:#0f1216d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--rule-strong);color:var(--ink-ivory);padding:5px 10px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.06em;display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.hotspot-pin:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent-vermilion)}.hotspot-pin:hover,.hotspot-pin.active{background:var(--ink-ivory);color:var(--bg-dark);border-color:var(--ink-ivory)}.top-hud{position:fixed;top:0;left:0;right:0;height:46px;z-index:20;display:flex;align-items:center;justify-content:space-between;background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule-hairline);padding-left:20px}.hud-brand{display:flex;align-items:center;gap:14px}.hud-brand-name{font-family:var(--font-mono);font-weight:600;font-size:.82rem;letter-spacing:.14em;color:var(--ink-ivory)}.hud-brand-tag{font-family:var(--font-mono);font-size:.68rem;color:var(--ink-stone);padding-left:14px;border-left:1px solid var(--rule-hairline)}.hud-actions{display:flex;align-items:center;height:100%}.hud-btn{height:100%;background:transparent;border:none;border-left:1px solid var(--rule-hairline);color:var(--ink-stone);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;padding:0 16px;cursor:pointer;display:inline-flex;align-items:center;text-decoration:none;transition:background .18s ease,color .18s ease}.hud-btn:hover{background:#f2efe914;color:var(--ink-ivory)}.hud-btn.active{background:var(--ink-ivory);color:var(--bg-dark);font-weight:600}.hud-btn-primary{background:var(--accent-vermilion);color:var(--ink-ivory);font-weight:600}.hud-btn-primary:hover{background:#f05a30;color:#fff}.scene-card{position:fixed;top:66px;left:20px;z-index:14;max-width:390px;padding:16px 18px;background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--rule-hairline);border-left:2px solid var(--accent-vermilion)}.scene-meta{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-bronze);margin-bottom:4px}.scene-title{font-family:var(--font-serif);font-size:1.85rem;font-weight:400;line-height:1.08;color:var(--ink-ivory);margin-bottom:4px}.scene-role{font-family:var(--font-mono);font-size:.66rem;color:var(--ink-ivory);margin-bottom:8px}.scene-desc{font-size:.78rem;line-height:1.5;color:var(--ink-stone);margin-bottom:10px}.hotspot-focus-box{margin-top:8px;margin-bottom:10px;padding:10px 12px;background:#ffffff0a;border:1px solid var(--rule-strong)}.hotspot-focus-header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--font-mono);font-size:.66rem;font-weight:600;color:var(--accent-bronze);margin-bottom:4px}.btn-reset-cam{background:transparent;border:1px solid var(--rule-strong);color:var(--ink-ivory);font-family:var(--font-mono);font-size:.58rem;padding:2px 7px;cursor:pointer}.btn-reset-cam:hover{background:var(--ink-ivory);color:var(--bg-dark)}.hotspot-focus-desc{font-size:.74rem;line-height:1.45;color:var(--ink-ivory)}.scene-tags{display:flex;flex-wrap:wrap;gap:5px}.scene-tag{font-family:var(--font-mono);font-size:.58rem;padding:3px 7px;border:1px solid var(--rule-hairline);color:var(--ink-stone)}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:18;background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--rule-hairline)}.voyage-dock{display:grid;grid-template-columns:repeat(6,1fr);height:48px}.voyage-step-btn{background:transparent;border:none;border-right:1px solid var(--rule-hairline);color:var(--ink-muted);padding:0 14px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left;transition:all .18s ease;position:relative}.voyage-step-btn:last-child{border-right:none}.voyage-step-btn:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:transparent}.voyage-step-btn:hover{background:#f2efe90d;color:var(--ink-ivory)}.voyage-step-btn.active{background:#f2efe914;color:var(--ink-ivory)}.voyage-step-btn.active:before{background:var(--accent-vermilion)}.voyage-step-idx{font-family:var(--font-mono);font-size:.68rem;font-weight:600;color:var(--accent-vermilion)}.voyage-step-name{font-family:var(--font-mono);font-size:.66rem;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dossier-drawer{position:fixed;top:46px;right:0;bottom:48px;width:min(560px,100vw);z-index:25;background:var(--surface-drawer);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-left:1px solid var(--rule-strong);display:flex;flex-direction:column;transform:translate(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);-webkit-user-select:text;user-select:text}body.drawer-open .dossier-drawer{transform:translate(0)}.dossier-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--rule-hairline)}.dossier-drawer-title{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;color:var(--ink-ivory)}.drawer-close-btn{background:transparent;border:1px solid var(--rule-strong);color:var(--ink-ivory);font-family:var(--font-mono);font-size:.62rem;padding:5px 10px;cursor:pointer}.drawer-close-btn:hover{background:var(--accent-vermilion);border-color:var(--accent-vermilion)}.dossier-drawer-body{flex:1;overflow-y:auto;padding:22px}.drawer-profile-row{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid var(--rule-hairline)}.drawer-portrait{width:72px;height:88px;object-fit:cover;object-position:center 18%;border:1px solid var(--rule-strong)}.drawer-name{font-family:var(--font-serif);font-size:1.55rem;color:var(--ink-ivory)}.drawer-sub{font-family:var(--font-mono);font-size:.65rem;color:var(--ink-stone);line-height:1.5}.drawer-section-block{padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--rule-hairline)}.drawer-section-head{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.64rem;color:var(--accent-bronze);margin-bottom:4px}.drawer-section-title{font-size:.95rem;font-weight:600;color:var(--ink-ivory);margin-bottom:6px}.drawer-bullet{font-size:.78rem;color:var(--ink-stone);line-height:1.5;margin-bottom:4px}.contact-grid{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.contact-box{padding:10px;border:1px solid var(--rule-hairline);text-decoration:none;color:var(--ink-ivory)}.contact-box:hover{border-color:var(--ink-ivory)}.contact-box-label{font-family:var(--font-mono);font-size:.56rem;color:var(--accent-vermilion);display:block;margin-bottom:3px}.contact-box-val{font-family:var(--font-mono);font-size:.66rem;word-break:break-all}@media(max-width:900px){.hud-brand-tag{display:none}.voyage-dock{grid-template-columns:repeat(3,1fr);height:auto}.voyage-step-btn{padding:8px 10px;border-bottom:1px solid var(--rule-hairline)}.scene-card{max-width:320px}.contact-grid{grid-template-columns:1fr}}
