:root{color-scheme:dark;--ink: #f4ece2;--ink-dim: rgba(244, 236, 226, .6);--ink-faint: rgba(244, 236, 226, .32);--accent: #ffab5e;--accent-deep: #c96a35;--panel-veil: rgba(10, 7, 14, .52);--font-sans: "Inter", "Helvetica Neue", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "SFMono-Regular", "JetBrains Mono", Consolas, monospace}*,*:before,*:after{box-sizing:border-box}html{overscroll-behavior:none;scrollbar-color:rgba(244,236,226,.24) transparent}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#f4ece238;border-radius:5px}body{margin:0;min-height:100vh;overflow:hidden;background:#120b18;color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}body[data-render-state=loading] .story,body[data-render-state=loading] .site-header,body[data-render-state=loading] .stage-footer,body[data-render-state=error] .story,body[data-render-state=error] .stage-footer{opacity:0}.loading-screen{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:#120b18;color:var(--ink-dim);transition:opacity .7s ease,visibility .7s ease}body[data-render-state=ready] .loading-screen,body[data-render-state=error] .loading-screen{opacity:0;visibility:hidden}.loader-ring{width:42px;height:42px;border-radius:50%;border:2px solid rgba(255,171,94,.2);border-top-color:var(--accent);animation:loader-spin 1.1s linear infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}.loader-text{font-size:13px;letter-spacing:.28em;text-transform:uppercase}.scene-canvas{position:fixed;inset:0;z-index:0;width:100%;height:100%;display:block;cursor:crosshair}.scene-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(120% 90% at 50% 42%,transparent 55%,rgba(8,5,12,.5) 100%),linear-gradient(to top,rgba(8,5,12,.55),transparent 30%)}.site-header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:22px 30px;pointer-events:none}.brand{display:flex;flex-direction:column;gap:3px;color:var(--ink);text-decoration:none;pointer-events:auto}.brand b{font-family:var(--font-mono);font-size:13px;letter-spacing:.22em}.brand small{font-size:11px;letter-spacing:.32em;color:var(--ink-faint);text-transform:uppercase}.render-status{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;color:var(--ink-faint)}.render-status i{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}.story{position:fixed;inset:0;z-index:5;display:flex;align-items:center;pointer-events:none}.story-panel{width:min(560px,88vw);margin-left:clamp(24px,7vw,96px);padding:30px 34px;border:1px solid rgba(244,236,226,.1);border-radius:18px;background:var(--panel-veil);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.eyebrow{margin:0 0 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.3em;color:var(--accent)}.hero-title-en{margin:0 0 14px;font-size:clamp(40px,6vw,64px);font-weight:800;letter-spacing:.04em;line-height:1;text-shadow:0 2px 24px rgba(8,5,12,.6)}.hero-subtitle{margin:0 0 12px;font-size:15px;line-height:1.9;color:var(--ink-dim)}.hero-note{margin:0;font-family:var(--font-mono);font-size:11.5px;line-height:1.8;letter-spacing:.06em;color:var(--ink-faint)}.stage-footer{position:fixed;left:0;right:0;bottom:0;z-index:10;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 24px 24px}.formation-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.formation-chip{padding:8px 16px;border:1px solid rgba(244,236,226,.16);border-radius:999px;background:#0a070e80;color:var(--ink-dim);font-size:12.5px;letter-spacing:.14em;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease}.formation-chip:hover{color:var(--ink);border-color:#ffab5e73}.formation-chip[data-active=true]{color:#1a0f08;border-color:var(--accent);background:var(--accent);font-weight:600}.interaction-hint{margin:0;font-family:var(--font-mono);font-size:11px;letter-spacing:.2em;color:var(--ink-faint)}.interaction-hint span{color:var(--ink-dim)}.noscript-message{position:fixed;inset:auto 0 40%;z-index:20;margin:0;text-align:center;color:var(--ink-dim);font-size:14px;letter-spacing:.1em}@media(max-width:640px){.site-header{padding:16px 18px}.story-panel{margin:0 auto;padding:22px 24px}.render-status{display:none}}
