@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400;1,600&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg-color:#f5f6f9;--bg-panel:#ffffffe6;--border-subtle:#00000014;--border-focus:#00000038;--text-main:#0e1217;--text-dim:#4d5766;--accent-blue:#1c69d2;--accent-red:#d9141e;--font-display:"Plus Jakarta Sans", -apple-system, sans-serif;--font-body:"Plus Jakarta Sans", -apple-system, sans-serif;--font-metrics:"Space Grotesk", "Plus Jakarta Sans", sans-serif}body.dark-mode{--bg-color:#0e1117;--bg-panel:#10151cd6;--border-subtle:#ffffff14;--border-focus:#ffffff3d;--text-main:#f5f7fa;--text-dim:#9aa5b5;--accent-blue:#2d82f5;--accent-red:#f02835;background:radial-gradient(circle at 50% 40%,#151b24 0%,#0a0d12 100%)}*{box-sizing:border-box}::selection{color:#fff;background:#2d82f559}html,body{background-color:var(--bg-color);width:100%;min-height:100%;color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;transition:background-color .35s,color .35s;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}body:not(.dark-mode)::-webkit-scrollbar-thumb{background:#00000026}#deconstruct-viewport{z-index:1;pointer-events:auto;width:100vw;height:100vh;position:fixed;top:0;left:0}.site-header{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;height:64px;padding:0 36px;display:flex;position:fixed;top:0;left:0;right:0}.brand-badge{pointer-events:auto;align-items:center;gap:12px;display:flex}.brand-logo-text{font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--text-main);white-space:nowrap;font-size:13px;font-weight:800}.brand-status-pill{font-family:var(--font-metrics);letter-spacing:.08em;border:1px solid var(--border-subtle);color:var(--text-dim);text-transform:uppercase;font-variant-numeric:tabular-nums;background:#ffffff0f;border-radius:20px;padding:4px 10px;font-size:10px;font-weight:600}body:not(.dark-mode) .brand-status-pill{background:#0000000a}.credit-pill{font-family:var(--font-metrics);letter-spacing:.03em;color:var(--text-main);white-space:nowrap;pointer-events:auto;-webkit-user-select:none;user-select:none;background:#2d82f517;border:1px solid #2d82f547;border-radius:20px;align-items:center;gap:5px;padding:4px 12px;font-size:11px;font-weight:600;transition:all .2s;display:inline-flex}.credit-pill-compact{display:none}@media (width<=540px){.credit-pill-full{display:none}.credit-pill-compact{display:inline}}body:not(.dark-mode) .credit-pill{background:#1c69d212;border-color:#1c69d238}.credit-pill:hover{background:#2d82f529;border-color:#2d82f580}.header-actions{pointer-events:auto;align-items:center;gap:10px;display:flex}.header-btn{font-family:var(--font-body);letter-spacing:.02em;color:var(--text-main);background:var(--bg-panel);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-subtle);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:7px 14px;font-size:11px;font-weight:600;text-decoration:none;transition:border-color .2s,transform .2s;display:inline-flex}.header-btn:hover{border-color:var(--border-focus);transform:translateY(-1px)}.header-btn.primary{color:var(--accent-blue);background:#2d82f51f;border-color:#2d82f559}.header-btn.primary:hover{background:#2d82f533;border-color:#2d82f599}.floating-story-hud{z-index:15;pointer-events:none;max-width:380px;transition:top .45s cubic-bezier(.16,1,.3,1),bottom .45s cubic-bezier(.16,1,.3,1),left .45s cubic-bezier(.16,1,.3,1),right .45s cubic-bezier(.16,1,.3,1),transform .45s cubic-bezier(.16,1,.3,1);position:fixed}.floating-story-hud.pos-top-left{text-align:left;inset:88px auto auto 36px;transform:none}.floating-story-hud.pos-top-left .story-editorial{align-items:flex-start}.floating-story-hud.pos-bottom-left{text-align:left;inset:auto auto 84px 36px;transform:none}.floating-story-hud.pos-bottom-left .story-editorial{align-items:flex-start}.floating-story-hud.pos-top-right{text-align:right;inset:88px 36px auto auto;transform:none}.floating-story-hud.pos-top-right .story-editorial{align-items:flex-end}.floating-story-hud.pos-top-right .story-stage-desc{margin-left:auto}.floating-story-hud.pos-top-center{text-align:center;max-width:440px;inset:84px auto auto 50%;transform:translate(-50%)}.floating-story-hud.pos-top-center .story-editorial{align-items:center}.floating-story-hud.pos-top-center .story-stage-desc{margin-left:auto;margin-right:auto}.floating-story-hud.pos-bottom-center{text-align:center;max-width:440px;inset:auto auto 84px 50%;transform:translate(-50%)}.floating-story-hud.pos-bottom-center .story-editorial{align-items:center}.floating-story-hud.pos-bottom-center .story-stage-desc{margin-left:auto;margin-right:auto}.story-editorial{-webkit-user-select:none;user-select:none;opacity:1;will-change:opacity, transform;flex-direction:column;gap:5px;transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1);display:flex;transform:translateY(0)}.story-editorial.fade-out{opacity:0;transform:translateY(10px)}.story-chapter-tag{font-family:var(--font-metrics);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-blue);text-shadow:0 1px 10px #000c;font-size:11px;font-weight:700}.story-stage-title{font-family:var(--font-display);letter-spacing:-.035em;color:#fff;text-shadow:0 2px 20px #000000e6;margin:0;font-size:1.85rem;font-weight:800;line-height:1.12}body.light-mode .story-stage-title,body:not(.dark-mode) .story-stage-title{color:#0e1217;text-shadow:0 1px 12px #fffffff2}.story-stage-desc{font-family:var(--font-body);color:#f0f4fac7;text-shadow:0 1px 12px #000c;max-width:34ch;margin:2px 0 0;font-size:.88rem;line-height:1.48}body.light-mode .story-stage-desc,body:not(.dark-mode) .story-stage-desc{color:#3b4554;text-shadow:0 1px 8px #fffffff2}#story-scroll-container{z-index:10;pointer-events:none;width:100%;position:relative}.chapter-spacer{width:100%;height:100vh}#spatial-pins-container{z-index:12;pointer-events:none;position:fixed;inset:0}.spatial-pin{pointer-events:auto;cursor:pointer;align-items:center;gap:8px;transition:opacity .25s;display:flex;position:absolute;transform:translate(-50%,-50%)}.pin-ring{border:1.5px solid var(--accent-blue);background:#2d82f52e;border-radius:50%;justify-content:center;align-items:center;width:12px;height:12px;display:flex;position:relative}.pin-ring:after{content:"";background:var(--accent-blue);border-radius:50%;width:3.5px;height:3.5px}.pin-label{font-family:var(--font-body);letter-spacing:.02em;background:var(--bg-panel);border:1px solid var(--border-subtle);color:var(--text-main);white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:6px;padding:4px 10px;font-size:10.5px;font-weight:600;transition:border-color .2s,color .2s}.spatial-pin:hover .pin-label{border-color:var(--accent-blue);color:var(--accent-blue)}.bottom-dock{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:24px;left:36px;right:36px}.slider-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border-subtle);pointer-events:auto;border-radius:30px;align-items:center;gap:12px;padding:8px 18px;display:flex}.slider-label{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-size:10px;font-weight:700}.hud-btn{font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-subtle);color:var(--text-main);cursor:pointer;background:#ffffff14;border-radius:12px;padding:4px 10px;font-size:10px;font-weight:600;transition:border-color .2s}body:not(.dark-mode) .hud-btn{background:#0000000d}.hud-btn:hover{border-color:var(--border-focus)}.scrub-slider{appearance:none;cursor:pointer;background:#ffffff26;border-radius:2px;outline:none;width:180px;height:4px}body:not(.dark-mode) .scrub-slider{background:#00000026}.scrub-slider::-webkit-slider-thumb{appearance:none;background:var(--text-main);cursor:pointer;border:2px solid var(--bg-panel);border-radius:50%;width:14px;height:14px;transition:transform .15s}.scrub-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.slider-badge{font-family:var(--font-metrics);letter-spacing:.04em;color:var(--accent-blue);font-variant-numeric:tabular-nums;text-align:right;min-width:72px;font-size:10px;font-weight:600}.finishes-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border-subtle);pointer-events:auto;border-radius:30px;align-items:center;gap:8px;padding:8px 14px;display:flex}.swatch-btn{cursor:pointer;border:1.5px solid #0000;border-radius:50%;width:18px;height:18px;padding:0;transition:transform .2s,border-color .2s}.swatch-btn:hover{transform:scale(1.15)}.swatch-btn.active{border-color:var(--text-main);transform:scale(1.15)}.timeline-indicator{z-index:15;pointer-events:none;flex-direction:column;gap:12px;display:flex;position:fixed;top:50%;right:24px;transform:translateY(-50%)}.timeline-dot{background:var(--text-dim);opacity:.35;border-radius:50%;width:6px;height:6px;transition:all .3s}.timeline-dot.active{opacity:1;background:var(--text-main);transform:scale(1.4)}.inspect-drawer{background:var(--bg-panel);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-subtle);z-index:30;opacity:0;pointer-events:none;border-radius:14px;width:360px;max-height:calc(100vh - 140px);padding:24px 28px;transition:opacity .3s,transform .3s;position:fixed;top:88px;right:36px;overflow-y:auto;transform:translate(20px)}.inspect-drawer.open{opacity:1;pointer-events:auto;transform:translate(0)}.drawer-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.drawer-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-main);margin:0;font-size:1.15rem;font-weight:700;line-height:1.25}.close-drawer-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-size:20px;line-height:1;transition:color .2s}.close-drawer-btn:hover{color:var(--text-main)}.drawer-desc{font-family:var(--font-body);color:var(--text-dim);margin:0 0 18px;font-size:.88rem;line-height:1.6}.spec-grid{border-top:1px solid var(--border-subtle);grid-template-columns:1fr 1fr;gap:10px;padding-top:14px;display:grid}.spec-item{flex-direction:column;gap:3px;display:flex}.spec-label{font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);font-size:9.5px;font-weight:600}.spec-val{font-family:var(--font-metrics);color:var(--text-main);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.orientation-prompt{z-index:1000;-webkit-backdrop-filter:blur(28px);opacity:0;pointer-events:none;background:#080b10eb;justify-content:center;align-items:center;padding:24px;transition:opacity .35s;display:none;position:fixed;inset:0}body:not(.dark-mode) .orientation-prompt{background:#f0f2f6f0}@media (width<=540px) and (aspect-ratio<=13/21){.orientation-prompt:not(.dismissed){opacity:1;pointer-events:auto;display:flex}}@media (orientation:landscape){.orientation-prompt{display:none!important}}.orientation-prompt.dismissed{display:none!important}.orientation-card{background:var(--bg-panel);border:1px solid var(--border-subtle);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:320px;padding:28px 20px;animation:.35s cubic-bezier(.16,1,.3,1) forwards cardFadeIn;display:flex;box-shadow:0 24px 64px #00000073}@keyframes cardFadeIn{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.orientation-icon-wrapper{background:#2d82f51f;border:1px solid #2d82f547;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.rotate-phone-svg{width:38px;height:38px;color:var(--text-main)}.animated-phone{transform-origin:27px 27px;animation:2.6s cubic-bezier(.45,.05,.55,.95) infinite rotatePhone}@keyframes rotatePhone{0%,20%{transform:rotate(0)}50%,70%{transform:rotate(90deg)}90%,to{transform:rotate(0)}}.orientation-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-main);margin:0;font-size:1.15rem;font-weight:800;line-height:1.2}.orientation-desc{font-family:var(--font-body);color:var(--text-dim);margin:0;font-size:.82rem;line-height:1.5}.orientation-actions{flex-direction:column;gap:8px;width:100%;margin-top:6px;display:flex}.orientation-btn-primary{width:100%;font-family:var(--font-body);letter-spacing:.03em;color:#fff;background:var(--accent-blue);cursor:pointer;border:none;border-radius:12px;padding:11px 16px;font-size:12px;font-weight:700;transition:all .2s;box-shadow:0 4px 16px #2d82f566}.orientation-btn-primary:hover{background:#196fe0;transform:translateY(-1px)}.orientation-btn-dismiss{width:100%;font-family:var(--font-body);letter-spacing:.03em;color:var(--text-dim);border:1px solid var(--border-subtle);cursor:pointer;background:#ffffff0f;border-radius:12px;padding:9px 16px;font-size:11px;font-weight:600;transition:all .2s}body:not(.dark-mode) .orientation-btn-dismiss{background:#0000000a}.orientation-btn-dismiss:hover{color:var(--text-main);border-color:var(--border-focus)}@media (height<=620px) and (orientation:landscape){.site-header{height:40px;padding:0 max(16px, env(safe-area-inset-right)) 0 max(16px, env(safe-area-inset-left))}.brand-logo-text{font-size:11px}.credit-pill{padding:2px 7px;font-size:8.5px}.header-btn{padding:3px 8px;font-size:8.5px}.floating-story-hud{max-width:260px}.floating-story-hud.pos-top-left{top:42px;left:max(14px, env(safe-area-inset-left));text-align:left;bottom:auto;right:auto;transform:none}.floating-story-hud.pos-top-right{top:42px;right:max(14px, env(safe-area-inset-right));text-align:right;bottom:auto;left:auto;transform:none}.floating-story-hud.pos-bottom-left{top:auto;bottom:max(36px, env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));text-align:left;right:auto;transform:none}.floating-story-hud.pos-top-center{top:42px;left:max(14px, env(safe-area-inset-left));text-align:left;bottom:auto;right:auto;transform:none}.floating-story-hud.pos-bottom-center{top:auto;bottom:max(36px, env(safe-area-inset-bottom));text-align:center;max-width:280px;left:50%;right:auto;transform:translate(-50%)}.story-chapter-tag{font-size:9px}.story-stage-title{font-size:1.15rem}.story-stage-desc{font-size:.74rem;line-height:1.35}.bottom-dock{bottom:max(6px, env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));right:max(14px, env(safe-area-inset-right))}.slider-panel{gap:8px;padding:4px 10px}.scrub-slider{width:100px;height:3px}.slider-label{font-size:8.5px}.slider-badge{min-width:54px;font-size:8.5px}.finishes-panel{gap:6px;padding:4px 8px}.swatch-btn{width:14px;height:14px}.timeline-indicator{right:max(8px, env(safe-area-inset-right));gap:8px}.timeline-dot{width:4px;height:4px}}@media (width<=768px){.site-header{padding:0 max(10px, env(safe-area-inset-right)) 0 max(10px, env(safe-area-inset-left));gap:6px;height:48px}.brand-badge{flex-shrink:1;gap:6px;min-width:0}.brand-logo-text{letter-spacing:.08em;font-size:11px}.credit-pill{padding:2.5px 7px;font-size:8.5px}.header-actions{flex-shrink:0;gap:5px}.header-btn{padding:4px 7px;font-size:9px}.floating-story-hud{max-width:calc(100% - 32px)}.floating-story-hud.pos-top-left{text-align:left;inset:54px 16px auto;transform:none}.floating-story-hud.pos-top-right{text-align:right;inset:54px 16px auto;transform:none}.floating-story-hud.pos-top-center{text-align:center;inset:52px 16px auto;transform:none}.floating-story-hud.pos-bottom-left{text-align:left;inset:auto 16px 84px;transform:none}.floating-story-hud.pos-bottom-center{text-align:center;inset:auto 16px 84px;transform:none}.story-stage-title{font-size:1.35rem}.story-stage-desc{max-width:32ch;font-size:.8rem}.bottom-dock{left:12px;right:12px;bottom:max(10px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:8px}.slider-panel{justify-content:space-between;width:100%;max-width:290px;padding:5px 12px}.scrub-slider{flex:1;max-width:130px}.timeline-indicator{display:none}}@media (width<=420px){.site-header{height:42px;padding:0 10px}.brand-logo-text{font-size:10.5px}.credit-pill{padding:2px 6px;font-size:8px}.floating-story-hud{top:50px;left:12px;right:12px}.story-stage-title{font-size:1.18rem}.story-stage-desc{font-size:.75rem}.slider-panel{max-width:260px;padding:4px 10px}.scrub-slider{max-width:100px}}
