@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(./fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0c0b22;--bg-2:#121130;--panel:#1a1940;--panel-2:#25244f;--line:#ffffff17;--text:#f0effc;--muted:#a4a2cc;--accent:#8b74ff;--accent-2:#6a55f0;--brand-pink:#d24bff;--brand-cyan:#2fd6ff;--brand-grad:linear-gradient(115deg, var(--brand-pink) 0%, #7b5cff 48%, var(--brand-cyan) 100%);--ok:#19c46b;--warn:#ffb020;--danger:#ff5a6e;--gold:#ffcf4a;--radius:16px;--font-display:"Fredoka Variable", "Fredoka", "Segoe UI", system-ui, sans-serif;--font-body:"Nunito Variable", "Nunito", "Segoe UI", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#app{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}body[data-screen=stage]{overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.setup{background:radial-gradient(900px 500px at 12% -10%, #8b5cff3d, transparent 60%), radial-gradient(700px 480px at 100% 0%, #2fd6ff21, transparent 60%), var(--bg);height:100%;min-height:100%;padding:clamp(16px,3vw,36px);overflow:auto}.setup-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-mark{object-fit:contain;filter:drop-shadow(0 8px 22px #7b5cff73);width:64px;height:64px;display:block}.brand h1{font-family:var(--font-display);letter-spacing:.2px;background:linear-gradient(90deg, #fff 0%, #fff 36%, #a98bff 58%, var(--brand-cyan) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(26px,3.2vw,36px);font-weight:700}.brand p{color:var(--muted);margin:2px 0 0}.win-presets{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.setup-body{grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);align-items:start;gap:18px;display:grid}.panel{background:linear-gradient(180deg, var(--panel), var(--bg-2));border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 20px 50px #00000040}.panel.wide{grid-column:1/-1;padding:0}.panel h2{font-family:var(--font-display);align-items:center;gap:10px;margin:0 0 14px;font-size:20px;font-weight:600;display:flex}.panel h2 em{background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:15px;font-style:normal;display:grid}.panel h3{font-family:var(--font-display);color:var(--muted);margin:18px 0 10px;font-size:16px;font-weight:600}.env-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.env-card{--env-accent:var(--accent);background:var(--panel-2);text-align:left;border:2px solid #0000;border-radius:14px;flex-direction:column;padding:0;transition:transform .18s,border-color .18s,box-shadow .18s;animation:.4s both rise;display:flex;position:relative;overflow:hidden}.env-card:hover{transform:translateY(-3px)}.env-card.selected{border-color:var(--env-accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--env-accent) 25%, transparent), 0 16px 34px #00000059}.env-thumb{aspect-ratio:16/10;background:linear-gradient(135deg, color-mix(in srgb, var(--env-accent) 40%, #1b2036), #1b2036);position:relative}.env-thumb img{object-fit:cover;width:100%;height:100%;transition:opacity .3s;display:block}.env-check{background:var(--env-accent);color:#111;border-radius:50%;place-items:center;width:26px;height:26px;font-weight:800;transition:transform .2s cubic-bezier(.3,1.6,.5,1);display:grid;position:absolute;top:8px;right:8px;transform:scale(0)}.env-card.selected .env-check{transform:scale(1)}.env-meta{flex-direction:column;gap:2px;padding:10px 12px 12px;display:flex}.env-meta strong{font-family:var(--font-display);font-size:17px;font-weight:600}.env-meta small{color:var(--muted);font-size:12.5px;line-height:1.35}.field{margin-bottom:14px}.field>label{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:13.5px;font-weight:700;display:flex}.input-wrap{border:1px solid var(--line);background:#10131f;border-radius:12px;align-items:center;padding:0 6px 0 12px;transition:border-color .15s;display:flex}.input-wrap:focus-within{border-color:var(--accent)}.input-wrap .prefix{color:var(--muted);margin-right:6px;font-weight:700;display:flex}.input-wrap input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:11px 0}.hint,.ctl-hint{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.35;display:block}.link{color:var(--accent);background:0 0;border:0;align-items:center;gap:4px;font-size:12.5px;font-weight:700;display:inline-flex}.form-error{color:#ffc2ca;background:#ff5a6e1f;border:1px solid #ff5a6e66;border-radius:10px;margin-top:12px;padding:10px 12px;font-size:13.5px;display:none}.form-error.on{display:block}.actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.btn{border:1px solid var(--line);background:var(--panel-2);font-family:var(--font-display);border-radius:12px;align-items:center;gap:8px;padding:12px 18px;font-size:16px;font-weight:600;transition:transform .12s,filter .12s;display:inline-flex}.btn:hover{filter:brightness(1.12)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--brand-grad);color:#fff;text-shadow:0 1px 2px #140a3c59;border:0;flex:1;justify-content:center;box-shadow:0 10px 26px #7b5cff66,inset 0 -3px #0000002e}.btn.block{justify-content:center;width:100%}.btn.danger{color:#fff;background:linear-gradient(#ff6b7e,#e0384f);border:0}.btn:disabled{opacity:.6;cursor:progress;filter:none;transform:none}.link.danger{color:#ff9aa8}.chip{border:1px solid var(--line);white-space:nowrap;background:#ffffff0f;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:13px;font-weight:700;display:inline-flex}.chip:hover{background:#ffffff1f}.chip.gold{color:#3b2600;background:linear-gradient(#ffd766,#f0a81c);border:0}.icon-btn{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#141728b8;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.icon-btn:hover{background:#282e4ce6}.icon-btn.ghost{background:0 0;border:0;width:32px;height:32px}.advanced summary{cursor:pointer;font-family:var(--font-display);justify-content:space-between;align-items:center;padding:16px 18px;font-size:17px;font-weight:600;list-style:none;display:flex}.advanced summary::-webkit-details-marker{display:none}.advanced[open] summary svg{transform:rotate(180deg)}.adv-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;padding:0 18px 18px;display:grid}.adv-cols h4,.drawer h4{text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin:4px 0 10px;font-size:12px}.ctl-grid{grid-template-columns:1fr 1fr;gap:12px 16px;display:grid}.ctl-list{flex-direction:column;gap:10px;display:flex}.ctl{flex-direction:column;gap:6px;font-size:13.5px;display:flex}.ctl-head{justify-content:space-between;gap:8px;display:flex}.ctl-label{font-weight:700}.ctl-value{color:var(--accent);font-variant-numeric:tabular-nums;font-weight:800}.ctl input[type=range]{width:100%;accent-color:var(--accent)}.ctl-input{border:1px solid var(--line);background:#10131f;border-radius:10px;align-items:center;padding:0 10px;display:flex}.ctl-input input{background:0 0;border:0;outline:none;flex:1;min-width:0;padding:8px 0}.ctl-input em{color:var(--muted);font-style:normal}.ctl-text-input input{border:1px solid var(--line);background:#10131f;border-radius:10px;outline:none;padding:8px 10px}.ctl-text-input input:focus{border-color:var(--accent)}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;margin-bottom:14px;display:grid}.drawer-body .pick-grid{grid-template-columns:1fr 1fr;margin-bottom:18px}.drawer-body .pick-grid:has(+.drawer-note){margin-bottom:6px}.drawer-note{color:var(--muted);margin:0 0 18px;font-size:12px;line-height:1.4}.pick-card{background:var(--panel-2);text-align:left;border:2px solid #0000;border-radius:12px;flex-direction:column;padding:0;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;overflow:hidden}.pick-card:hover{transform:translateY(-2px)}.pick-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent)}.pick-thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#2a3152,#1b2036)}.pick-thumb img{object-fit:cover;width:100%;height:100%;transition:opacity .3s;display:block}.pick-meta{flex-direction:column;gap:1px;padding:7px 9px 9px;display:flex}.pick-meta strong{font-family:var(--font-display);font-size:15px;font-weight:600}.pick-meta small{color:var(--muted);overflow-wrap:anywhere;font-size:11.5px;line-height:1.3}.ctl select{border:1px solid var(--line);background:#10131f;border-radius:10px;padding:8px 10px}.ctl-toggle{cursor:pointer;flex-direction:row;align-items:center;gap:10px}.ctl-toggle input,.toggle-row input[type=checkbox]{opacity:0;pointer-events:none;position:absolute}.switch{background:#343b5c;border-radius:999px;flex:none;width:38px;height:22px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s cubic-bezier(.3,1.4,.5,1);position:absolute;top:3px;left:3px}input:checked+.switch{background:var(--accent)}input:checked+.switch:after{transform:translate(16px)}input:focus-visible+.switch{outline:2px solid var(--accent);outline-offset:2px}.ctl-text{flex-direction:column;display:flex}.ctl-text .ctl-hint{margin-top:1px}.stage{background:#87a6c8;position:fixed;inset:0;overflow:hidden}.lv-canvas{width:100%;height:100%;display:block}.loading{background:radial-gradient(circle at 50% 40%, #232a46, var(--bg));z-index:50;place-items:center;transition:opacity .5s;display:grid;position:fixed;inset:0}.loading.done{opacity:0;pointer-events:none}.loading-card{width:min(360px,80vw);color:var(--muted);flex-direction:column;align-items:center;gap:12px;display:flex}.loading-card strong{font-family:var(--font-display);color:var(--text);font-size:28px}.progress{background:#ffffff14;border-radius:999px;width:100%;height:10px;overflow:hidden}.progress i{border-radius:inherit;background:linear-gradient(90deg, var(--env-accent,var(--accent)), #fff6);width:0;height:100%;transition:width .25s;display:block}.lv-labels{z-index:1;pointer-events:none;font-family:var(--font-display);position:absolute;inset:0;overflow:hidden}.lv-tag{--tag-accent:var(--ok);transform-origin:50% 100%;will-change:transform;transition:opacity .6s;position:absolute;top:0;left:0}.lv-tag.leaving{opacity:0}.lv-stack{flex-direction:column;align-items:center;gap:5px;display:flex}.lv-name{border:2px solid var(--tag-accent);color:#fff;white-space:nowrap;background:#10121ec7;border-radius:999px;align-items:center;gap:6px;max-width:230px;padding:3px 10px 3px 3px;font-size:15px;font-weight:600;line-height:1.15;display:flex;box-shadow:0 4px 10px #00000059}.lv-tag.no-avatar .lv-name{padding-left:10px}.lv-name:not(:has(.lv-avatar.on)){padding-left:10px}.lv-avatar{object-fit:cover;background:var(--tag-accent);border-radius:50%;width:22px;height:22px;display:none}.lv-avatar.on{display:block}.lv-tag.no-avatar .lv-avatar{display:none}.lv-nick{text-overflow:ellipsis;text-shadow:0 1px 2px #0009;overflow:hidden}.lv-badge{color:#3b2600;background:linear-gradient(#ffe07a,#f2a81d);border-radius:999px;padding:1px 7px;font-size:12px;font-weight:700;display:none}.lv-badge.on{display:inline-block}.lv-timer{background:#00000073;border-radius:999px;width:64px;height:5px;overflow:hidden}.lv-timer i{border-radius:inherit;background:#3ee08c;width:100%;height:100%;transition:width .5s linear,background .3s;display:block}.lv-timer[data-level=bonus] i{background:linear-gradient(90deg,#ffe07a,#f2a81d);box-shadow:0 0 6px #ffcf4acc}.lv-timer[data-level=warn] i{background:#ffc53d}.lv-timer[data-level=crit] i{background:#ff5a6e;animation:.8s steps(2,end) infinite blink}.lv-bubble{color:#1c1f2b;max-width:240px;font-family:var(--font-body);text-align:center;background:#fff;border-radius:14px;margin-bottom:4px;padding:7px 12px;font-size:14.5px;font-weight:800;line-height:1.25;display:none;position:relative;box-shadow:0 6px 16px #0000004d}.lv-bubble span{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.lv-bubble:after{content:"";background:#fff;border-radius:2px;width:14px;height:14px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.lv-bubble.on{display:block}.lv-bubble.pop,.lv-gift.pop{animation:.35s cubic-bezier(.3,1.6,.5,1) pop}.lv-gift{color:#3b2600;white-space:nowrap;background:linear-gradient(#ffe07a,#f2a81d);border-radius:999px;align-items:center;gap:6px;padding:4px 12px 4px 5px;font-size:14px;font-weight:700;display:none;box-shadow:0 6px 16px #f2a81d73}.lv-gift img{object-fit:contain;width:26px;height:26px}.lv-gift.on{animation:1.4s ease-in-out infinite alternate floaty;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes floaty{0%{transform:translateY(0)}to{transform:translateY(-4px)}}@keyframes blink{50%{opacity:.4}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}.gp-layer{z-index:2;pointer-events:none;position:absolute;inset:0;overflow:hidden}.gp-fx{width:100%;height:100%;position:absolute;inset:0}.gp-stack{place-items:center;display:grid;position:absolute;inset:0}.gp-card{--gp-a:#ff5c8a;--gp-a2:#ffd1e0;--gp-b:#ff8fb1;--gp-c:#fff;--gp-c2:#ffe066;--gp-edge:linear-gradient(135deg, #ff8fb1, #ff3d6e);--gp-glow:#ff5c8a8c;color:#fff;min-width:min(46vmin,90vw);max-width:min(76vmin,92vw);font-family:var(--font-display);text-align:center;box-shadow:0 0 0 .45vmin #ffffff1f inset, 0 2.4vmin 7vmin #00000073, 0 0 9vmin var(--gp-glow);will-change:transform, opacity;background:linear-gradient(#ffffff29,#fff0 45%),radial-gradient(120% 90% at 50% 0,#282e54f5,#101222f0);border-radius:4.5vmin;flex-direction:column;grid-area:1/1;align-items:center;gap:.6vmin;margin-top:-6vmin;padding:3vmin 4.2vmin 3.2vmin;display:flex;position:relative}.gp-card:before{content:"";border-radius:inherit;background:var(--gp-edge);-webkit-mask-composite:xor;padding:.55vmin;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.gp-card.tier-1{--gp-a:#ffb627;--gp-a2:#fff3b0;--gp-b:#ffd23f;--gp-c:#e8323c;--gp-c2:#fff;--gp-edge:linear-gradient(135deg, #fff3b0, #ffb627 45%, #ff8c42);--gp-glow:#ffb6278c}.gp-card.tier-2{--gp-a:#7a5cff;--gp-a2:#c9b8ff;--gp-b:#7bdff2;--gp-c:#ff8fab;--gp-c2:#ffe066;--gp-edge:linear-gradient(135deg, #7bdff2, #b28dff 50%, #ff8fab);--gp-glow:#9678ff99}.gp-card.tier-3{--gp-a:#ff595e;--gp-a2:#ffca3a;--gp-b:#1982c4;--gp-c:#ffca3a;--gp-c2:#fff;--gp-edge:linear-gradient(135deg, #ff595e, #ffca3a, #8ac926, #1982c4, #6a4c93, #ff595e);--gp-glow:#ffca3aa6}.gp-card.tier-3:before{background-size:300% 300%;animation:2.4s linear infinite gp-rainbow}.gp-card.in{animation:.7s cubic-bezier(.2,1.5,.4,1) both gp-in}.gp-card.out{animation:.4s ease-in both gp-out}.gp-media{place-items:center;width:21vmin;height:21vmin;margin-top:-9vmin;display:grid;position:relative}.gp-rays{background:repeating-conic-gradient(from 0deg, color-mix(in srgb, var(--gp-b) 55%, transparent) 0deg 9deg, transparent 9deg 24deg);opacity:.85;border-radius:50%;animation:9s linear infinite gp-spin;position:absolute;inset:-55%;-webkit-mask:radial-gradient(circle,#000 20%,#0000 68%);mask:radial-gradient(circle,#000 20%,#0000 68%)}.gp-halo{background:radial-gradient(circle, #fffffff2, color-mix(in srgb, var(--gp-a2) 70%, transparent) 45%, transparent 70%);border-radius:50%;position:absolute;inset:4%}.gp-icon{filter:drop-shadow(0 1.2vmin 1.4vmin #00000059);place-items:center;width:82%;height:82%;animation:1.6s ease-in-out infinite alternate gp-float;display:grid;position:relative}.gp-icon img,.gp-icon svg{object-fit:contain;width:100%;height:100%}.gp-count{color:#e0245e;background:linear-gradient(#fff,#ffe4ec);border-radius:999px;padding:.5vmin 1.6vmin;font-size:4.4vmin;font-weight:700;line-height:1.1;display:none;position:absolute;bottom:4%;right:-4%;transform:rotate(-8deg);box-shadow:0 .8vmin 1.8vmin #00000059}.gp-count.on{display:block}.gp-count.bump{animation:.4s cubic-bezier(.3,1.8,.5,1) gp-bump}.gp-title{text-shadow:0 .4vmin 1.2vmin #00000073;overflow-wrap:anywhere;justify-content:center;align-items:center;gap:1.4vmin;max-width:100%;font-size:5.2vmin;font-weight:700;line-height:1.12;display:flex}.gp-title span{background:linear-gradient(180deg, #fff 30%, var(--gp-a2));color:#0000;-webkit-background-clip:text;background-clip:text}.gp-avatar{object-fit:cover;border:.45vmin solid var(--gp-b);border-radius:50%;flex:none;width:6.4vmin;height:6.4vmin}.gp-sub{font-family:var(--font-body);color:#ffffffd9;overflow-wrap:anywhere;font-size:3vmin;font-weight:800}.gp-coins{color:#3b2600;background:linear-gradient(#ffe07a,#f2a81d);border-radius:999px;margin-top:.6vmin;padding:.5vmin 2vmin;font-size:2.8vmin;font-weight:700;box-shadow:0 .6vmin 1.6vmin #f2a81d73}@keyframes gp-in{0%{opacity:0;transform:translateY(6vmin)scale(.35)rotate(-6deg)}60%{opacity:1;transform:translateY(-1vmin)scale(1.06)rotate(1.5deg)}to{transform:none}}@keyframes gp-out{to{opacity:0;transform:translateY(-4vmin)scale(.82)}}@keyframes gp-spin{to{transform:rotate(360deg)}}@keyframes gp-float{0%{transform:translateY(.6vmin)rotate(-3deg)}to{transform:translateY(-1.2vmin)rotate(3deg)}}@keyframes gp-bump{0%{transform:rotate(-8deg)scale(1)}50%{transform:rotate(-8deg)scale(1.45)}to{transform:rotate(-8deg)scale(1)}}@keyframes gp-rainbow{to{background-position:300% 0}}.hud{pointer-events:none;z-index:20;transition:opacity .4s;position:fixed;inset:0}.hud>*{pointer-events:auto}.hud.idle .hud-top,.hud.idle .feed,.hud.hidden .hud-top,.hud.hidden .feed,.hud.hidden .demo{opacity:0;pointer-events:none}.hud-top{pointer-events:none;justify-content:space-between;align-items:flex-start;gap:10px;transition:opacity .4s;display:flex;position:absolute;top:12px;left:12px;right:12px}.hud-left,.hud-right{pointer-events:auto;flex-wrap:wrap;gap:8px;display:flex}.hud-left{flex-direction:column;align-items:flex-start}.status-pill{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#141728cc;border-radius:14px;align-items:center;gap:9px;padding:7px 12px 7px 10px;display:flex}.status-pill .dot{background:var(--warn);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #ffb02033}.status-pill[data-state=connected] .dot,.status-pill[data-state=demo] .dot{background:var(--ok);animation:1.6s ease-in-out infinite blink;box-shadow:0 0 0 4px #19c46b38}.status-pill[data-state=error] .dot,.status-pill[data-state=disconnected] .dot{background:var(--danger);box-shadow:0 0 0 4px #ff5a6e38}.status-main{flex-direction:column;line-height:1.15;display:flex}.status-text{font-family:var(--font-display);font-weight:600}.status-main small{color:var(--muted);font-size:12px}.mini{border:1px solid var(--line);background:0 0;border-radius:8px;padding:2px 8px}.stats{flex-wrap:wrap;gap:6px;display:flex}.stat{border:1px solid var(--line);color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#141728b8;border-radius:10px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;display:inline-flex}.stat b{color:var(--text);font-variant-numeric:tabular-nums}.feed{flex-direction:column-reverse;gap:5px;max-width:min(420px,60vw);transition:opacity .4s;display:flex;position:absolute;bottom:12px;left:12px;pointer-events:none!important}.feed-item{white-space:nowrap;text-overflow:ellipsis;background:#141728b8;border-radius:10px;padding:6px 10px;font-size:13px;animation:.25s rise;overflow:hidden}.feed-item:nth-child(n+4){opacity:.55}.feed-item.gift{color:var(--gold)}.feed-item.join{color:#9fe8c0}.drawer{border-left:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:3;background:#161a2cf5;flex-direction:column;width:min(380px,92vw);transition:transform .28s cubic-bezier(.2,.9,.3,1);display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(105%)}.drawer.open{transform:none}.drawer header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.drawer header h3{font-family:var(--font-display);margin:0;font-weight:600}.drawer-body{flex:1;padding:14px 16px 24px;overflow:auto}.drawer-body .ctl-grid{grid-template-columns:1fr;margin-bottom:16px}.drawer-body .ctl-list{margin-bottom:18px}.shortcut{color:var(--muted);font-size:12px}.demo{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#161a2ceb;border-radius:16px;flex-direction:column;gap:10px;width:min(360px,100vw - 24px);padding:12px;transition:opacity .4s;display:none;position:absolute;bottom:12px;right:12px}.demo.open{display:flex}.demo header{flex-direction:column;display:flex}.demo header small{color:var(--muted);font-size:12px}.demo-grid{flex-wrap:wrap;gap:6px;display:flex}.demo-row{align-items:center;gap:8px;display:flex}.demo-row input[type=text]{border:1px solid var(--line);background:#10131f;border-radius:10px;flex:1;min-width:0;padding:8px 10px}.toggle-row{font-size:13px;font-weight:700}.toggle-row input[type=range]{accent-color:var(--accent);flex:1}.toast{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:70px;left:50%;transform:translate(-50%);pointer-events:none!important}.toast-item{border:1px solid var(--line);text-align:center;background:#141728e6;border-radius:12px;max-width:80vw;padding:8px 14px;font-size:13.5px;font-weight:700;transition:opacity .5s;animation:.25s rise}.toast-item.ok{border-color:#19c46b99}.toast-item.warn{border-color:#ffb02099}.toast-item.error{color:#ffc2ca;border-color:#ff5a6eb3}.toast-item.out{opacity:0}.obs-panel{gap:10px;display:grid}.obs-row{align-items:center;gap:8px;display:flex}.obs-url{border:1px solid var(--line);min-width:0;color:var(--text);background:#00000040;border-radius:10px;flex:1;padding:9px 12px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:13px}a.chip{color:inherit;text-decoration:none}.obs-steps{color:var(--muted);margin:0;padding-left:20px;font-size:13px;line-height:1.55}.obs-steps b{color:var(--text)}.obs-panel code{color:var(--text);background:#ffffff14;border-radius:5px;padding:1px 5px}.obs-panel.compact .obs-row{flex-wrap:wrap}.obs-panel.compact .obs-url{flex-basis:100%}.panel.obs{grid-column:1/-1}.panel.obs h2 em{background:var(--brand-cyan);color:#06233a}.obs-secret{color:var(--muted);background:#8b74ff1a;border:1px solid #8b74ff47;border-radius:10px;align-items:flex-start;gap:7px;margin:0;padding:9px 11px;font-size:12.5px;line-height:1.45;display:flex}.obs-secret svg{color:var(--accent);flex:none;margin-top:1px}.obs-secret .link{vertical-align:baseline;padding:0;font-size:12.5px}.obs-secret .link svg{color:inherit;margin:0}body[data-screen=overlay]{background:0 0;overflow:hidden}body[data-screen=overlay] .loading-card{transform:scale(.85)}.auth{background:radial-gradient(820px 540px at 50% -10%, #8b5cff4d, transparent 65%), radial-gradient(620px 440px at 100% 100%, #2fd6ff1f, transparent 60%), radial-gradient(620px 440px at 0% 100%, #d24bff1f, transparent 60%), var(--bg);place-items:center;height:100%;padding:28px 16px 36px;display:grid;overflow:auto}.auth-card{gap:14px;width:min(420px,100%);display:grid}.auth-logo{justify-self:center;width:min(340px,88%);height:auto;margin:-6px 0 -14px;animation:3s ease-in-out infinite alternate floaty}.auth-lead{text-align:center;color:var(--muted);margin:0 0 4px;font-size:15px}.auth-tabs{border:1px solid var(--line);background:#ffffff0a;border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.auth-tab{color:var(--muted);font-family:var(--font-display);background:0 0;border:0;border-radius:10px;padding:9px 12px;font-size:16px;font-weight:600}.auth-tab.on{background:var(--panel-2);color:var(--text);box-shadow:0 6px 16px #00000040}.auth-form{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(180deg, var(--panel), var(--bg-2));gap:14px;padding:20px;display:grid;box-shadow:0 24px 60px #00000059}.auth-form .field,.modal .field{margin:0}.auth-form .field[hidden],.auth-form .hint[hidden]{display:none}.auth-form .form-error,.modal .form-error{margin-top:0}.auth-note{color:var(--muted);gap:8px;margin:0;padding:0 4px;font-size:12.5px;line-height:1.5;display:flex}.auth-note svg{color:var(--accent);flex:none;margin-top:2px}.account{margin-left:auto;position:relative}.account summary{border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0d;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:14px;font-weight:700;list-style:none;display:flex}.account summary::-webkit-details-marker{display:none}.account summary:hover{background:#ffffff1a}.account summary>svg{color:var(--muted);transition:transform .15s}.account[open] summary>svg{transform:rotate(180deg)}.avatar{background:var(--brand-grad);color:#fff;width:30px;height:30px;font-family:var(--font-display);border-radius:50%;place-items:center;font-size:15px;font-weight:700;display:grid}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.account-pop{z-index:20;border:1px solid var(--line);background:var(--panel);border-radius:14px;gap:2px;min-width:240px;padding:6px;animation:.16s rise;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 50px #00000073}.account-head{border-bottom:1px solid var(--line);gap:2px;margin-bottom:4px;padding:8px 10px 10px;display:grid}.account-head small{color:var(--muted)}.account-pop button{text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;font-weight:700;display:flex}.account-pop button:hover{background:#ffffff12}.account-pop button.danger{color:#ff9aa8}.account-pop hr{border:0;border-top:1px solid var(--line);margin:4px 0}.modal{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg, var(--panel), var(--bg-2));width:min(420px,100vw - 32px);color:var(--text);padding:0;box-shadow:0 30px 80px #0000008c}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#060514a8}.modal form{gap:12px;padding:20px;display:grid}.modal h3{font-family:var(--font-display);margin:0;font-size:20px;font-weight:600}.modal-text{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.modal-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.modal-actions .btn{padding:10px 16px;font-size:15px}.flash-host{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%)}.flash{background:#141232f2;border:1px solid #19c46b99;border-radius:12px;padding:9px 14px;font-size:13.5px;font-weight:700;transition:opacity .5s;animation:.25s rise}.flash.error{color:#ffc2ca;border-color:#ff5a6eb3}.flash.out{opacity:0}.overlay-denied{place-items:center;padding:24px;display:grid;position:fixed;inset:0}.overlay-denied-card{text-align:center;background:#0c0b22e6;border:1px solid #ffffff1f;border-radius:20px;justify-items:center;gap:10px;max-width:460px;padding:24px 26px;display:grid;box-shadow:0 24px 60px #00000073}.overlay-denied-card strong{font-family:var(--font-display);color:#ffd1d8;align-items:center;gap:8px;font-size:20px;font-weight:600;display:flex}.overlay-denied-card p{color:var(--muted);margin:0;line-height:1.5}.overlay-denied-card b{color:var(--text)}@media (max-width:860px){.account-name{max-width:110px}.obs-row{flex-wrap:wrap}.obs-url{flex-basis:100%}.setup-body,.ctl-grid{grid-template-columns:1fr}.env-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.hud-right{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
