@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-0: #0a0c0b;--ink-1: #101412;--ink-2: #161b18;--ink-3: #1e2420;--line: #2b332e;--line-hi: #3c463f;--text: #e9ede6;--text-2: #b5beb6;--muted: #7d887f;--signal: #ffb000;--signal-ink: #1a1200;--friend: #5fc3ff;--hostile: #ff5545;--neutral: #8fdc7a;--ok: #7ad68c;--warn: #ffc94d;--block: #ff5545;--air: #c9b8ff;--display: "Archivo Variable", "Archivo", system-ui, sans-serif;--mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--cut: 14px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-snap: cubic-bezier(.34, 1.56, .64, 1);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ink-0);color:var(--text);font-family:var(--display);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid var(--signal);outline-offset:2px}::selection{background:var(--signal);color:var(--signal-ink)}.display{font-family:var(--display);font-stretch:68%;font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:.92}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.num{font-family:var(--display);font-stretch:75%;font-weight:700;font-variant-numeric:tabular-nums}.stage{position:fixed;inset:0}.stage canvas{display:block;width:100%;height:100%}.vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(5,6,6,.75) 100%),linear-gradient(to bottom,rgba(10,12,11,.85),transparent 120px,transparent calc(100% - 160px),rgba(10,12,11,.9))}.topbar{position:fixed;top:0;left:0;right:0;height:64px;display:flex;align-items:center;gap:28px;padding:0 20px;z-index:20}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:30px;height:30px}.brand-name{font-size:26px}.brand-sub{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--muted);text-transform:uppercase;margin-top:2px}.steps{display:flex;gap:2px;height:100%;align-items:stretch}.step{position:relative;display:flex;align-items:center;gap:8px;padding:0 16px;background:none;border:0;color:var(--muted);transition:color .16s}.step .n{font-family:var(--mono);font-size:11px}.step .l{font-stretch:72%;font-weight:800;font-size:17px;text-transform:uppercase;letter-spacing:.02em}.step:hover,.step[aria-current=step]{color:var(--text)}.step[aria-current=step]:after{content:"";position:absolute;left:12px;right:12px;bottom:10px;height:3px;background:var(--signal);transform-origin:left;animation:grow .32s var(--ease-out)}.step[data-done=true] .n{color:var(--signal)}.step:disabled{opacity:.35;cursor:not-allowed}@keyframes grow{0%{transform:scaleX(0)}}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px}.chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;background:#161b18d9;border:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);backdrop-filter:blur(8px)}.dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px #7ad68c26}.dot.warn{background:var(--warn);box-shadow:0 0 0 3px #ffc94d26}.dot.bad{background:var(--block);box-shadow:0 0 0 3px #ff554526}.chip-btn{cursor:pointer;color:var(--text);transition:border-color .14s,background .14s}.chip-btn:hover{border-color:var(--signal)}.chip-btn:disabled{opacity:.6;cursor:progress}.boot{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ink-0);transition:opacity .6s var(--ease-out),visibility .6s}.boot[data-ready=true]{opacity:0;visibility:hidden}.boot-bar{width:220px;height:3px;background:var(--ink-3);margin-top:22px;overflow:hidden}.boot-bar i{display:block;height:100%;width:40%;background:var(--signal);animation:bootbar 1.1s ease-in-out infinite}@keyframes bootbar{0%{transform:translate(-100%)}to{transform:translate(250%)}}.narrow-note{display:none}@media(max-width:760px){.narrow-note{display:block;position:fixed;left:16px;right:16px;bottom:16px;z-index:30;padding:12px 14px;background:var(--ink-2);border:1px solid var(--line-hi);font-size:13px}.dock-left,.dock-wide{left:16px;width:calc(100vw - 32px);top:120px;bottom:80px}.topbar{flex-wrap:wrap;height:auto;padding:10px 16px;gap:10px}.topbar-right .chip:not(.chip-btn){display:none}}.caption{position:fixed;left:50%;transform:translate(-50%);bottom:132px;z-index:16;display:flex;flex-direction:column;align-items:center;gap:2px;max-width:min(640px,calc(100vw - 32px));padding:8px 14px;background:#0a0c0bdb;border:1px solid var(--line-hi);text-align:center;font-size:15px;animation:dockIn .2s var(--ease-out)}.camera-bar{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:15;display:flex;align-items:center;gap:10px;padding:4px;background:#101412d1;border:1px solid var(--line);backdrop-filter:blur(8px)}@media(max-width:760px){.camera-bar{top:auto;bottom:86px}}.plate{position:relative;background:linear-gradient(180deg,#161b18f0,#101412f0);border:1px solid var(--line);clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));backdrop-filter:blur(10px)}.dock{position:fixed;top:76px;bottom:20px;z-index:10;display:flex;flex-direction:column;gap:12px;animation:dockIn .42s var(--ease-out)}.dock-left{left:20px;width:min(440px,calc(100vw - 40px))}.dock-right{right:20px;width:min(400px,calc(100vw - 40px))}.dock-wide{left:20px;width:min(980px,calc(100vw - 40px))}@keyframes dockIn{0%{opacity:0;transform:translate(-16px)}}.dock-right{animation-name:dockInR}@keyframes dockInR{0%{opacity:0;transform:translate(16px)}}.scroll{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line-hi) transparent}.plate-head{padding:18px 20px 14px;border-bottom:1px solid var(--line)}.plate-body{padding:16px 20px}.title-xl{font-size:clamp(34px,3.4vw,52px)}.title-l{font-size:30px}.title-m{font-size:21px}.cta{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 28px;border:0;background:var(--signal);color:var(--signal-ink);font-stretch:70%;font-weight:900;font-size:22px;text-transform:uppercase;letter-spacing:.02em;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);transition:transform .16s var(--ease-snap),filter .16s}.cta:hover{transform:translateY(-2px);filter:brightness(1.08)}.cta:active{transform:translateY(1px) scale(.99)}.cta:disabled{background:var(--ink-3);color:var(--muted);transform:none;cursor:not-allowed}.cta .k{font-family:var(--mono);font-size:11px;font-weight:500;opacity:.7;letter-spacing:.1em}.cta-block{width:100%}.btn{height:34px;padding:0 14px;border:1px solid var(--line-hi);background:var(--ink-2);font-stretch:80%;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.04em;transition:border-color .14s,background .14s}.btn:hover{border-color:var(--text-2)}.btn[aria-pressed=true]{background:var(--text);color:var(--ink-0);border-color:var(--text)}.btn-ghost{background:transparent}.seg{display:inline-flex;border:1px solid var(--line-hi)}.seg button{height:32px;padding:0 12px;border:0;background:transparent;color:var(--text-2);font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.seg button[aria-pressed=true]{background:var(--text);color:var(--ink-0)}.field{display:flex;flex-direction:column;gap:6px}.textarea,.select{width:100%;background:var(--ink-0);border:1px solid var(--line);color:var(--text);padding:10px 12px;font:inherit;resize:vertical}.textarea:focus,.select:focus{border-color:var(--signal);outline:none}.select{height:38px;padding:0 10px;font-family:var(--mono);font-size:12px}.bar{height:4px;background:var(--ink-3);position:relative;overflow:hidden}.bar>i{position:absolute;inset:0 auto 0 0;background:var(--text-2);transition:width .4s var(--ease-out)}.lvl{display:inline-flex;align-items:center;gap:6px;height:20px;padding:0 7px;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.lvl-ok{color:var(--ok);background:#7ad68c1a}.lvl-warn{color:var(--warn);background:#ffc94d1a}.lvl-blocked{color:var(--block);background:#ff55451f}.sep{height:1px;background:var(--line);margin:14px 0}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.grow{flex:1;min-width:0}.muted{color:var(--muted)}.t2{color:var(--text-2)}.small{font-size:12px}.tiny{font-size:11px}.friend{color:var(--friend)}.hostile{color:var(--hostile)}.signal{color:var(--signal)}.tooltip{position:fixed;z-index:40;pointer-events:none;padding:8px 10px;background:#0a0c0bf0;border:1px solid var(--line-hi);font-family:var(--mono);font-size:11px;line-height:1.5;transform:translate(14px,14px);white-space:nowrap}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:50;padding:10px 16px;background:var(--text);color:var(--ink-0);font-weight:700;font-stretch:80%;text-transform:uppercase;letter-spacing:.03em;animation:toast 3.2s var(--ease-out) forwards}@keyframes toast{0%{opacity:0;transform:translate(-50%,12px)}8%,85%{opacity:1;transform:translate(-50%)}to{opacity:0}}@media(max-width:900px){.steps .l,.brand-sub,.dock-right{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.theatre{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.theatre-card{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:6px;background:var(--ink-2);border:1px solid var(--line);color:var(--text);text-align:left;cursor:pointer;transition:border-color .14s,background .14s}.theatre-card:hover{border-color:var(--line-hi)}.theatre-card[aria-checked=true]{border-color:var(--signal);background:var(--ink-3)}.theatre-swatch{display:block;width:100%;height:auto;aspect-ratio:16 / 9;image-rendering:auto}.theatre-card .theatre-swatch{filter:saturate(.85) brightness(.92);transition:filter .14s}.theatre-card:hover .theatre-swatch,.theatre-card[aria-checked=true] .theatre-swatch{filter:none}.theatre-auto{grid-column:1 / -1;flex-direction:row;align-items:center;gap:10px}.theatre-auto .theatre-swatch{width:96px;flex:none}.theatre-auto-text{display:flex;flex-direction:column;gap:4px;min-width:0}.theatre-name{font-stretch:80%;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em}.theatre-sub{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
