:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eef4f7;background:#080b0f;--panel: rgba(14, 19, 25, .94);--text: #eef4f7;--muted: #8f9ba5;--border: #26313a;--surface: #151c23;--accent: #cfef2e;--accent-ink: #101507}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{color:var(--text);background:#080b0f}button,a{font:inherit}.app-shell{position:relative;height:100%;min-height:680px;overflow:hidden;background:radial-gradient(circle at 74% 30%,rgba(32,54,62,.35),transparent 38%),#080b0f}.panel{position:absolute;inset:20px auto 20px 20px;z-index:2;display:flex;flex-direction:column;width:390px;overflow:auto;padding:27px;background:var(--panel);border:1px solid rgba(108,129,141,.3);border-radius:18px;box-shadow:0 24px 80px #00000057;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);transition:transform .32s cubic-bezier(.22,.8,.3,1),opacity .22s ease}.panel.closed{transform:translate(calc(-100% - 32px));opacity:0;pointer-events:none}.panel-toggle{position:absolute;top:50%;z-index:4;display:flex;align-items:center;gap:5px;min-width:42px;min-height:72px;padding:8px 7px;color:#dce5e9;background:#0f151bf0;border:1px solid #33414a;border-radius:0 10px 10px 0;box-shadow:8px 10px 28px #00000047;transform:translateY(-50%);cursor:pointer;writing-mode:vertical-rl;transition:left .32s cubic-bezier(.22,.8,.3,1),color .15s ease,background .15s ease}.panel-toggle.open{left:410px}.panel-toggle.closed{left:0}.panel-toggle:hover{color:#101507;background:var(--accent);border-color:var(--accent)}.panel-toggle span{font-size:25px;line-height:.7;writing-mode:horizontal-tb}.panel-toggle strong{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.eyebrow{margin:0 0 9px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}h1{max-width:330px;margin:0;font-size:30px;line-height:1.02;letter-spacing:-.045em}.intro{margin:12px 0 0;color:#aab5bc;font-size:13px;line-height:1.45}.tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:24px 0 16px;padding:4px;background:#0b1015;border:1px solid var(--border);border-radius:10px}.animation-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:20px}.animation-controls button{min-height:38px;padding:8px;color:#d8e1e5;background:#1a232a;border:1px solid #2c3942;border-radius:8px;cursor:pointer;font-size:10px;font-weight:750}.animation-controls button:hover,.animation-controls button.active{color:#101507;background:var(--accent);border-color:var(--accent)}.animation-controls .tour{grid-column:1 / -1;color:#d4ef47;background:#121a0c;border-color:#53661e}.animation-controls .tour:disabled{opacity:.65;cursor:wait}.tabs button{padding:8px;color:var(--muted);background:transparent;border:0;border-radius:7px;cursor:pointer;font-size:12px;font-weight:700}.tabs button.active{color:var(--text);background:#202a32;box-shadow:0 2px 8px #0003}.legend{display:flex;flex-direction:column;gap:5px}.legend-row{display:grid;grid-template-columns:12px 1fr;gap:11px;align-items:start;width:100%;padding:8px 7px;color:var(--text);text-align:left;background:transparent;border:1px solid transparent;border-radius:9px;cursor:pointer;transition:.15s ease}.legend-row:hover{background:#151d24;border-color:#26333d}.legend-row.off{opacity:.36}.swatch{width:10px;height:10px;margin-top:3px;border-radius:2px;box-shadow:0 0 12px currentColor}.legend-row strong{display:block;font-size:12px;line-height:1.15}.legend-row small{display:block;margin-top:3px;color:#7e8b95;font-size:10px;line-height:1.3}.spec-grid{display:grid;gap:0;margin:0}.spec-grid div{display:grid;grid-template-columns:105px 1fr;gap:12px;padding:10px 4px;border-bottom:1px solid #202a32}.spec-grid dt,.spec-grid dd{margin:0;font-size:11px;line-height:1.35}.spec-grid dt{color:#74828c}.spec-grid dd{color:#d5dde2;text-align:right}.file-meta{display:flex;justify-content:space-between;margin:17px 0 12px;color:#687680;font-size:10px}.status{margin-top:16px;padding:11px 12px;color:#9cabb5;background:var(--surface);border-radius:8px;font-size:11px}.actions{display:grid;gap:8px;margin-top:auto;padding-top:15px}.download,.secondary{display:flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border-radius:9px;font-size:12px;font-weight:800;text-decoration:none}.download{color:var(--accent-ink);background:var(--accent)}.download:hover{background:#ddf85b}.secondary{color:#e7edf1;background:#202a32;border:1px solid #33404a}.secondary:hover{background:#2a353e}.text-link{padding:5px 2px;color:#95a3ac;font-size:11px;text-decoration:none}.text-link:hover{color:#fff}.disclaimer{margin:10px 0 0;color:#596873;font-size:9px;line-height:1.42}.stage{position:absolute;inset:0;overflow:hidden}.stage-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#71808b;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.fallback-view{display:grid;width:100%;height:100%;place-items:center;padding:70px 60px 50px 460px}.fallback-view img{width:min(920px,88%);max-height:78vh;object-fit:contain;filter:drop-shadow(0 28px 50px rgba(0,0,0,.45))}.fallback-view p{margin:-45px 0 0;color:#65747e;font-size:10px}.stage-label{position:absolute;top:34px;right:34px;display:grid;justify-items:end;pointer-events:none}.stage-label span{color:#677782;font-size:9px;font-weight:800;letter-spacing:.2em}.stage-label strong{margin-top:3px;color:#dce5e9;font-size:13px;letter-spacing:.04em}.controls-hint{position:absolute;right:34px;bottom:25px;margin:0;padding:8px 12px;color:#81909a;background:#0c1116b8;border:1px solid #26313a;border-radius:999px;font-size:10px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none}@media(max-width:760px){.app-shell{min-height:760px;overflow:auto}.panel{inset:12px 12px auto;width:auto;max-height:53vh;padding:20px}.panel.closed{transform:translateY(calc(-100% - 24px))}.panel-toggle{top:12px;min-width:82px;min-height:34px;writing-mode:horizontal-tb;transform:none}.panel-toggle.open{left:auto;right:22px}.panel-toggle.closed{left:12px;right:auto}.panel-toggle strong{font-size:9px}.panel-toggle span{font-size:20px;transform:rotate(90deg)}.stage{position:fixed;inset:0}.stage-label{display:none}.fallback-view{padding:54vh 18px 70px}.controls-hint{right:12px;bottom:12px}}
