:root{--bg:#0a0b0e;--bg-2:#101217;--surface:#101217db;--surface-2:#1a1d24eb;--surface-3:#262a33f2;--line:#ffffff14;--line-2:#ffffff24;--text:#eceef1;--text-2:#b4b9c2;--muted:#7d838e;--accent:#ff6a1a;--accent-2:#ffb02e;--accent-soft:#ff6a1a24;--fuse:#ffd23f;--ok:#3ddc97;--danger:#ff4d4d;--info:#4cc9f0;--r-sm:6px;--r:10px;--r-lg:14px;--shadow:0 18px 50px -12px #000000b3, 0 2px 8px #0006;--f-display:"Barlow Semi Condensed", "Arial Narrow", system-ui, sans-serif;--f-body:"Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono:"JetBrains Mono", ui-monospace, monospace;--ease:cubic-bezier(.2, .8, .2, 1);--gutter:clamp(12px, 2vw, 28px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:clamp(13px,.42vw + 9.2px,17.5px)}html,body,#root{background:var(--bg);height:100%;color:var(--text);margin:0;overflow:hidden}body{font-family:var(--f-body);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;font-size:1rem;line-height:1.45}button{font:inherit;color:inherit}input,textarea,select{font:inherit;color:inherit;-webkit-user-select:text;user-select:text}::selection{background:var(--accent);color:#000}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#ffffff1f padding-box padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-track{background:0 0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#stage{width:100%;height:100%;display:block;position:fixed;inset:0}.ui-root{pointer-events:none;z-index:2;position:fixed;inset:0}.ui-root>*{pointer-events:auto}.passthrough{pointer-events:none}.passthrough>*{pointer-events:auto}.display{font-family:var(--f-display);letter-spacing:.01em;font-weight:700}.eyebrow{font-family:var(--f-display);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:600}.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.text-2{color:var(--text-2)}.small{font-size:.86rem}.tiny{font-size:.76rem}.ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}h1,h2,h3{font-family:var(--f-display);letter-spacing:.005em;margin:0;font-weight:700}.row{align-items:center;gap:8px;display:flex}.col{flex-direction:column;gap:8px;display:flex}.grow{flex:auto;min-width:0}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.center{justify-content:center}.gap-4{gap:4px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px)saturate(1.2)}.card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r)}.divider{background:var(--line);height:1px;margin:8px 0}.btn{--h:2.5rem;height:var(--h);border-radius:var(--r);border:1px solid var(--line-2);background:var(--surface-2);font-family:var(--f-display);letter-spacing:.02em;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:.98rem;font-weight:600;transition:background .15s,border-color .15s,transform 80ms,color .15s;display:inline-flex}.btn:hover{background:var(--surface-3);border-color:#ffffff38}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#140700}.btn.primary:hover{background:#ff7d36}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:#ffffff0f}.btn.danger{color:var(--danger)}.btn.danger.solid{background:var(--danger);color:#1a0000;border-color:var(--danger)}.btn.sm{--h:2rem;border-radius:var(--r-sm);padding:0 .7rem;font-size:.88rem}.btn.lg{--h:3rem;padding:0 1.4rem;font-size:1.1rem}.btn.block{width:100%}.btn.icon{width:var(--h);padding:0}.btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.btn svg{flex:none;width:1.1em;height:1.1em}.input{border-radius:var(--r);border:1px solid var(--line-2);background:#00000059;outline:none;width:100%;height:2.5rem;padding:0 .85rem;transition:border-color .15s,background .15s}.input:focus{border-color:var(--accent);background:#00000080}.input.sm{border-radius:var(--r-sm);height:2rem;font-size:.9rem}textarea.input{resize:vertical;height:auto;min-height:4.5rem;padding:.6rem .85rem}.input-icon{position:relative}.input-icon>svg{width:1rem;height:1rem;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.input-icon>.input{padding-left:2.3rem}.field{flex-direction:column;gap:6px;display:flex}.field>label{font-family:var(--f-display);color:var(--text-2);letter-spacing:.02em;font-size:.84rem;font-weight:600}.switch{cursor:pointer;background:#ffffff1f;border:none;border-radius:999px;flex:none;width:2.6rem;height:1.5rem;transition:background .2s;position:relative}.switch:after{content:"";width:calc(1.5rem - 6px);height:calc(1.5rem - 6px);transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch.on{background:var(--accent)}.switch.on:after{transform:translate(1.1rem)}.slider{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.slider input[type=range]{appearance:none;background:linear-gradient(to right, var(--accent) var(--pct), #ffffff24 var(--pct));border-radius:4px;outline:none;width:100%;height:4px}.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;border:3px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:16px;height:16px}.slider input[type=range]::-moz-range-thumb{border:3px solid var(--accent);cursor:pointer;background:#fff;border-radius:50%;width:12px;height:12px}.slider .val{font-family:var(--f-mono);color:var(--text-2);text-align:right;min-width:3.5em;font-size:.82rem}.seg{border:1px solid var(--line);border-radius:var(--r);background:#00000059;gap:2px;padding:3px;display:inline-flex}.seg button{cursor:pointer;height:2rem;font-family:var(--f-display);color:var(--text-2);white-space:nowrap;background:0 0;border:none;border-radius:7px;align-items:center;gap:6px;padding:0 .8rem;font-size:.9rem;font-weight:600;display:inline-flex}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface-3);color:var(--text);box-shadow:inset 0 1px #ffffff0f}.seg button svg{width:1em;height:1em}.seg.block{display:flex}.seg.block button{flex:1;justify-content:center}.badge{height:1.35rem;font-family:var(--f-display);letter-spacing:.04em;color:var(--text-2);white-space:nowrap;background:#ffffff14;border-radius:5px;align-items:center;gap:4px;padding:0 .45rem;font-size:.74rem;font-weight:700;display:inline-flex}.badge.accent{background:var(--accent-soft);color:var(--accent)}.badge.f1{color:var(--ok);background:#3ddc9724}.badge.f2{color:var(--info);background:#4cc9f024}.badge.f3{color:var(--accent-2);background:#ffb02e29}.badge.f4,.badge.t1,.badge.p1{color:var(--danger);background:#ff4d4d29}.dot{border-radius:50%;flex:none;width:.6rem;height:.6rem;display:inline-block;box-shadow:0 0 6px}.kbd{min-width:1.5rem;height:1.5rem;font-family:var(--f-mono);border:1px solid var(--line-2);color:var(--text-2);background:#ffffff14;border-bottom-width:2px;border-radius:5px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.72rem;font-weight:700;display:inline-flex}.avatar{width:2rem;height:2rem;font-family:var(--f-display);color:#0b0b0b;border-radius:50%;flex:none;place-items:center;font-size:.9rem;font-weight:800;display:grid}.avatar.lg{width:3.5rem;height:3.5rem;font-size:1.4rem}.status-dot{background:var(--muted);border-radius:50%;flex:none;width:.55rem;height:.55rem}.status-dot.on{background:var(--ok);box-shadow:0 0 8px var(--ok)}.popover{z-index:60;min-width:12rem;animation:pop .14s var(--ease);padding:6px;position:fixed}@keyframes pop{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.menu-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;width:100%;padding:.5rem .65rem;font-size:.95rem;display:flex}.menu-item:hover,.menu-item.hl{background:#ffffff12}.menu-item svg{width:1rem;height:1rem;color:var(--text-2);flex:none}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.tooltip{z-index:80;border:1px solid var(--line-2);pointer-events:none;white-space:nowrap;animation:pop .12s var(--ease);background:#000;border-radius:6px;padding:.35rem .6rem;font-size:.82rem;position:fixed}.modal-back{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--gutter);background:#0405088c;place-items:center;animation:.15s fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{width:min(100%, var(--w,30rem));max-height:min(88vh,54rem);animation:pop .18s var(--ease);flex-direction:column;display:flex}.modal-head{align-items:center;gap:12px;padding:1.1rem 1.25rem .6rem;display:flex}.modal-head h2{flex:1;font-size:1.35rem}.modal-body{padding:.6rem 1.25rem 1.25rem;overflow:auto}.modal-foot{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:.9rem 1.25rem;display:flex}.flyout{top:var(--gutter);bottom:var(--gutter);right:var(--gutter);width:min(24rem, calc(100vw - 2 * var(--gutter)));z-index:30;animation:slidein .22s var(--ease);flex-direction:column;display:flex;position:fixed}@keyframes slidein{0%{opacity:0;transform:translate(20px)}}.ss{position:relative}.ss-trigger{border-radius:var(--r);border:1px solid var(--line-2);cursor:pointer;text-align:left;background:#00000059;align-items:center;gap:8px;width:100%;min-height:2.5rem;padding:.25rem .5rem .25rem .8rem;display:flex}.ss-trigger.sm{border-radius:var(--r-sm);min-height:2rem;font-size:.9rem}.ss-trigger:hover{border-color:#ffffff3d}.ss-trigger.open{border-color:var(--accent)}.ss-trigger .placeholder{color:var(--muted)}.ss-trigger .chev{width:1rem;height:1rem;color:var(--muted);flex:none;margin-left:auto}.ss-chip{background:#ffffff14;border-radius:5px;align-items:center;gap:4px;height:1.5rem;padding:0 .4rem;font-size:.82rem;display:inline-flex}.ss-pop{flex-direction:column;max-height:22rem;padding:6px;display:flex}.ss-search{margin-bottom:6px}.ss-list{flex-direction:column;gap:1px;display:flex;overflow:auto}.ss-group{padding:.5rem .6rem .25rem}.ss-opt .check{color:var(--accent);margin-left:auto}.ss-empty{text-align:center;color:var(--muted);padding:1rem;font-size:.9rem}.toasts{top:var(--gutter);z-index:90;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;border-radius:var(--r);animation:pop .2s var(--ease);align-items:center;gap:10px;max-width:min(90vw,34rem);padding:.6rem .9rem;font-size:.95rem;display:flex}.toast.error{border-color:#ff4d4d66}.toast.success{border-color:#3ddc9766}.toast svg{flex:none;width:1.1rem;height:1.1rem}.home{gap:var(--gutter);padding:var(--gutter);background:radial-gradient(120% 90% at 0 100%,#050609d9,#05060933 60%,#0000);grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) auto;display:grid;position:fixed;inset:0}.home-top{grid-column:1/-1;align-items:center;gap:12px;display:flex}.brand{font-family:var(--f-display);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:10px;font-size:1.5rem;font-weight:800;display:flex}.brand .mark{width:2.1rem;height:2.1rem}.brand b{color:var(--accent);font-weight:800}.home-main{flex-direction:column;grid-area:2/1;justify-content:center;gap:clamp(16px,3vh,36px);max-width:40rem;display:flex}.hero h1{text-transform:uppercase;letter-spacing:.01em;font-size:clamp(2.6rem,5.2vw,5.4rem);font-weight:800;line-height:.92}.hero h1 em{color:var(--accent);font-style:normal}.hero p{color:var(--text-2);max-width:32rem;margin:.8rem 0 0;font-size:1.12rem}.menu-cards{gap:10px;display:grid}.menu-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;text-align:left;transition:border-color .15s, background .15s, transform .15s var(--ease);grid-template-columns:3rem 1fr auto;align-items:center;gap:14px;padding:.95rem 1.1rem;display:grid}.menu-card:hover{background:#181412e6;border-color:#ff6a1a8c;transform:translate(4px)}.menu-card .ic{background:var(--accent-soft);width:3rem;height:3rem;color:var(--accent);border-radius:12px;place-items:center;display:grid}.menu-card .ic svg{width:1.5rem;height:1.5rem}.menu-card h3{text-transform:uppercase;letter-spacing:.03em;font-size:1.35rem}.menu-card p{color:var(--muted);margin:2px 0 0;font-size:.92rem}.menu-card .arrow{color:var(--muted)}.menu-card.primary .ic{background:var(--accent);color:#140700}.home-side{flex-direction:column;grid-area:2/2;gap:12px;width:min(22rem,34vw);min-height:0;display:flex}.home-foot{flex-wrap:wrap;grid-column:1/-1;align-items:flex-end;gap:clamp(16px,3vw,40px);display:flex}.stat{flex-direction:column;display:flex}.stat b{font-family:var(--f-display);font-size:1.6rem;font-weight:700;line-height:1}.stat span{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.8rem;font-family:var(--f-display);font-weight:600}@media (width<=860px){.home{grid-template-rows:auto;grid-template-columns:1fr;overflow:auto}.home-main,.home-side{grid-area:auto/1}.home-side{width:100%}}.page{padding:var(--gutter);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#06070ac7;flex-direction:column;gap:16px;display:flex;position:fixed;inset:0}.page-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-head h1{text-transform:uppercase;letter-spacing:.03em;margin-right:auto;font-size:2rem}.page-body{flex:1;gap:16px;width:100%;max-width:92rem;min-height:0;margin:0 auto;display:grid}.lobby-row{border-radius:var(--r);border:1px solid var(--line);background:var(--surface-2);grid-template-columns:minmax(0,2fr) minmax(0,1fr) 6rem auto;align-items:center;gap:14px;padding:.8rem 1rem;display:grid}.lobby-row:hover{border-color:var(--line-2)}.lobby-row.friend{border-color:#3ddc9766}@media (width<=700px){.lobby-row{grid-template-columns:1fr auto}.lobby-row .hide-sm{display:none}}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));grid-auto-rows:max-content;align-content:start;gap:12px;display:grid}.setup-card{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;transition:border-color .15s, transform .15s var(--ease);flex-direction:column;gap:8px;padding:1rem;display:flex}.setup-card:hover{border-color:#ff6a1a80;transform:translateY(-2px)}.setup-card h3{font-size:1.15rem}.scroll{min-height:0;overflow:auto}.hud{pointer-events:none;z-index:3;position:fixed;inset:0}.hud>*{pointer-events:auto}.crosshair{pointer-events:none;width:22px;height:22px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.crosshair:before,.crosshair:after{content:"";background:#ffffffd9;position:absolute;box-shadow:0 0 2px #000c}.crosshair:before{width:2px;top:4px;bottom:4px;left:50%;transform:translate(-50%)}.crosshair:after{height:2px;top:50%;left:4px;right:4px;transform:translateY(-50%)}.crosshair.dot:before{top:9px;bottom:9px}.crosshair.dot:after{left:9px;right:9px}.prompt{font-family:var(--f-display);pointer-events:none;white-space:nowrap;background:#0000008c;border-radius:8px;padding:.35rem .7rem;font-size:.95rem;font-weight:600;position:fixed;top:calc(50% + 28px);left:50%;transform:translate(-50%)}.hotbar{left:50%;bottom:var(--gutter);gap:6px;padding:6px;display:flex;position:fixed;transform:translate(-50%)}.slot{cursor:pointer;width:3.4rem;height:3.4rem;color:var(--text-2);background:#ffffff08;border:1px solid #0000;border-radius:10px;place-items:center;transition:background .12s,border-color .12s,color .12s;display:grid;position:relative}.slot:hover{color:var(--text);background:#ffffff12}.slot.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.slot svg{width:1.45rem;height:1.45rem}.slot .num{font-family:var(--f-mono);color:var(--muted);font-size:.62rem;position:absolute;top:3px;left:5px}.slot-sep{background:var(--line);width:1px;margin:6px 2px}.tool-chip{left:50%;bottom:calc(var(--gutter) + 5.2rem);align-items:center;gap:10px;padding:.4rem .5rem .4rem .8rem;font-size:.92rem;display:flex;position:fixed;transform:translate(-50%)}.hud-tl{top:var(--gutter);left:var(--gutter);align-items:center;gap:8px;display:flex;position:fixed}.hud-tr{top:var(--gutter);right:var(--gutter);align-items:center;gap:8px;display:flex;position:fixed}.pill{height:2.4rem;font-family:var(--f-display);cursor:pointer;border:1px solid var(--line);background:var(--surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;align-items:center;gap:8px;padding:0 .85rem;font-size:.92rem;font-weight:600;display:inline-flex}.pill:hover{border-color:var(--line-2)}.pill svg{width:1rem;height:1rem;color:var(--text-2)}.chat{left:var(--gutter);bottom:var(--gutter);flex-direction:column;gap:6px;width:min(26rem,40vw);display:flex;position:fixed}.chat-lines{flex-direction:column;gap:2px;max-height:14rem;padding-top:2rem;display:flex;overflow:auto;-webkit-mask-image:linear-gradient(#0000,#000 2rem);mask-image:linear-gradient(#0000,#000 2rem)}.chat-line{text-shadow:0 1px 3px #000000e6;padding:1px 0;font-size:.92rem}.chat-line b{font-family:var(--f-display);font-weight:700}.chat-line.sys{color:var(--muted);font-style:italic}.chat.idle .chat-line.old{opacity:0;transition:opacity 1s}.banner{top:calc(var(--gutter) + 3.2rem);font-family:var(--f-display);align-items:center;gap:10px;padding:.5rem 1rem;font-weight:700;display:flex;position:fixed;left:50%;transform:translate(-50%)}.countdown-big{font-family:var(--f-display);text-shadow:0 0 40px #ff6a1a99;pointer-events:none;text-transform:uppercase;text-align:center;font-size:clamp(4rem,12vw,10rem);font-weight:800;line-height:1;position:fixed;top:22%;left:50%;transform:translate(-50%)}.phone-frame{pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.phone-frame>div{aspect-ratio:9/16;border:2px solid #fff3;border-radius:28px;height:86vh;position:relative;box-shadow:0 0 0 200vmax #000000d1}.phone-frame .rec{font-family:var(--f-mono);align-items:center;gap:6px;font-size:.8rem;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.phone-frame .rec i{background:#ff3b30;border-radius:50%;width:8px;height:8px;animation:1s infinite blink}@keyframes blink{50%{opacity:.2}}.spawn{inset:var(--gutter);z-index:20;animation:pop .16s var(--ease);grid-template-rows:auto 1fr;grid-template-columns:15rem minmax(0,1fr);display:grid;position:fixed;overflow:hidden}.spawn-head{border-bottom:1px solid var(--line);flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:10px;padding:.9rem 1rem;display:flex}.spawn-cats{border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:.6rem;display:flex;overflow:auto}.cat{cursor:pointer;text-align:left;color:var(--text-2);font-family:var(--f-display);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:.5rem .65rem;font-size:.98rem;font-weight:600;display:flex}.cat:hover{color:var(--text);background:#ffffff0d}.cat.on{background:var(--accent-soft);color:var(--accent)}.cat svg{flex:none;width:1.05rem;height:1.05rem}.cat .n{font-family:var(--f-mono);color:var(--muted);margin-left:auto;font-size:.72rem}.spawn-grid{grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;padding:.9rem;display:grid;overflow:auto}.pcard{border-radius:var(--r);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;transition:border-color .12s, transform .12s var(--ease);text-align:left;flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.pcard:hover{border-color:#ff6a1a8c;transform:translateY(-2px)}.pcard.sel{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.pcard .thumb{aspect-ratio:1.25;background:radial-gradient(80% 80% at 50% 40%,#ffffff12,#0000);place-items:center;display:grid}.pcard .thumb img{object-fit:contain;filter:drop-shadow(0 8px 10px #00000080);width:82%;height:92%}.pcard .meta{flex-direction:column;gap:3px;padding:.5rem .65rem .6rem;display:flex}.pcard .name{font-family:var(--f-display);font-size:.98rem;font-weight:700;line-height:1.15}.pcard .sub{color:var(--muted);align-items:center;gap:6px;font-size:.78rem;display:flex}.pcard .fav{cursor:pointer;width:1.8rem;height:1.8rem;color:var(--muted);opacity:0;background:#0006;border:none;border-radius:7px;place-items:center;transition:opacity .12s;display:grid;position:absolute;top:6px;right:6px}.pcard:hover .fav,.pcard .fav.on{opacity:1}.pcard .fav.on{color:var(--fuse)}.pcard .fav svg{width:.95rem;height:.95rem}.pcard .info{cursor:pointer;width:1.8rem;height:1.8rem;color:var(--text-2);opacity:0;background:#0006;border:none;border-radius:7px;place-items:center;transition:opacity .12s;display:grid;position:absolute;top:6px;left:6px}.pcard:hover .info{opacity:1}.pcard .info svg{width:.95rem;height:.95rem}.color-dots{gap:3px;display:flex}.color-dots i{border-radius:50%;width:.5rem;height:.5rem}@media (width<=760px){.spawn{grid-template-columns:1fr}.spawn-cats{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;overflow-x:auto}.cat .n{display:none}}.spec-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.spec{border:1px solid var(--line);background:#0000004d;border-radius:8px;padding:.55rem .7rem}.spec b{font-family:var(--f-mono);font-size:1rem;display:block}.spec span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-family:var(--f-display);font-weight:600}.remote{right:var(--gutter);z-index:20;width:min(30rem, calc(100vw - 2 * var(--gutter)));max-height:calc(100vh - 2 * var(--gutter));animation:slidein .2s var(--ease);background:linear-gradient(#23262c,#16181c);border-color:#ffffff1f;flex-direction:column;display:flex;position:fixed;top:50%;overflow:hidden;transform:translateY(-50%)}.remote-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:.8rem 1rem;display:flex}.lcd{font-family:var(--f-mono);color:#6dff9c;text-shadow:0 0 8px #6dff9c99;letter-spacing:.06em;background:#0b1a10;border-radius:6px;align-items:center;gap:6px;padding:.3rem .6rem;font-weight:700;display:inline-flex;box-shadow:inset 0 2px 6px #0009}.lcd.armed{color:#ff5c5c;text-shadow:0 0 8px #ff5050b3;background:#2a0b0b}.keyswitch{cursor:pointer;background:#0e0f12;border:1px solid #ffffff2e;border-radius:1.1rem;flex:none;width:4.4rem;height:2.2rem;position:relative}.keyswitch:after{content:"";width:1.9rem;height:calc(100% - 6px);transition:transform .2s var(--ease);background:linear-gradient(#c9ccd2,#8b9097);border-radius:1rem;position:absolute;top:3px;left:3px}.keyswitch.on{background:#3a0d0d;border-color:#ff4d4d99}.keyswitch.on:after{background:linear-gradient(#ff8c8c,#d43b3b);transform:translate(1.95rem)}.cue-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:1rem;display:grid}.cue-btn{aspect-ratio:1;cursor:pointer;min-width:0;font-family:var(--f-mono);color:var(--text-2);background:linear-gradient(#2f333a,#1e2126);border:1px solid #ffffff1a;border-radius:10px;place-items:center;font-size:1rem;font-weight:700;transition:transform 60ms;display:grid;position:relative;box-shadow:0 3px #0b0c0e}.cue-btn:active{transform:translateY(2px);box-shadow:0 1px #0b0c0e}.cue-btn .led{background:#2a2d33;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.cue-btn .led.ok{background:#3ddc97;box-shadow:0 0 8px #3ddc97}.cue-btn .led.lit{background:#ffb02e;box-shadow:0 0 8px #ffb02e}.cue-btn .led.fired{background:#ff4d4d;box-shadow:0 0 6px #ff4d4d}.cue-btn.armed:hover{color:#fff;border-color:#ff4d4d80}.cue-btn.empty{opacity:.55}.big-fire{color:#fff;height:4rem;font-size:1.4rem;font-family:var(--f-display);letter-spacing:.1em;cursor:pointer;background:linear-gradient(#ff5c3a,#c8331b);border:1px solid #ff7b5c;border-radius:14px;font-weight:800;box-shadow:0 4px #6a160a}.big-fire:disabled{color:var(--muted);cursor:not-allowed;background:#2a2d33;border-color:#3a3d44;box-shadow:0 4px #111}.big-fire:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #6a160a}.showed{left:var(--gutter);right:var(--gutter);bottom:var(--gutter);z-index:19;height:min(44vh,26rem);animation:pop .18s var(--ease);flex-direction:column;display:flex;position:fixed;overflow:hidden}.showed-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:.6rem .8rem;display:flex}.timecode{font-family:var(--f-mono);color:var(--fuse);min-width:7.5em;padding:0 .6rem;font-size:1.15rem;font-weight:700}.timeline{flex:1;position:relative;overflow:auto}.timeline canvas{display:block}.empty{text-align:center;color:var(--muted);place-items:center;gap:10px;padding:2.5rem 1rem;display:grid}.empty svg{opacity:.6;width:2rem;height:2rem}.list{flex-direction:column;gap:4px;display:flex}.list-item{border-radius:8px;align-items:center;gap:10px;padding:.5rem .6rem;display:flex}.list-item:hover{background:#ffffff0a}.section-title{justify-content:space-between;align-items:center;margin:.4rem 0 .2rem;display:flex}.loader{border:2px solid #fff3;border-top-color:var(--accent);border-radius:50%;width:1.1rem;height:1.1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.splash{z-index:100;background:var(--bg);place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.color-swatches{flex-wrap:wrap;gap:6px;display:flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:1.7rem;height:1.7rem}.swatch.on{box-shadow:0 0 0 2px var(--bg) inset;border-color:#fff}.pause-menu{flex-direction:column;gap:8px;width:min(100%,24rem);padding:1.25rem;display:flex}.help-grid{grid-template-columns:auto 1fr;align-items:center;gap:6px 14px;font-size:.92rem;display:grid}.wind-arrow{width:1rem;height:1rem;transition:transform .3s}.db-meter{align-items:center;gap:8px;display:inline-flex}.db-bar{background:#ffffff1a;border-radius:3px;width:4.5rem;height:6px;overflow:hidden}.db-bar i{background:linear-gradient(90deg, var(--ok), var(--fuse) 60%, var(--danger));height:100%;transition:width 80ms;display:block}.cursor-hint{right:var(--gutter);bottom:calc(var(--gutter) + .4rem);max-width:calc(50vw - 15rem);color:var(--muted);align-items:center;gap:14px;font-size:.8rem;display:flex;position:fixed}.cursor-hint span{align-items:center;gap:6px;display:inline-flex}@media (width<=1500px){.cursor-hint{bottom:calc(var(--gutter) + 5.4rem);max-width:none}}@media (width<=900px){.cursor-hint{display:none}}.resume-chip{cursor:pointer;font-family:var(--f-display);animation:pop .18s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:.6rem 1rem;font-size:.98rem;font-weight:600;display:inline-flex;position:fixed;top:calc(50% + 78px);left:50%;transform:translate(-50%)}.resume-chip:hover{border-color:#ff6a1a99}
