@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-ext-600-normal-B85nYjL1.woff2)format("woff2"),url(/assets/outfit-latin-ext-600-normal-CWJcPgd7.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/outfit-latin-600-normal-B7SfZ07L.woff2)format("woff2"),url(/assets/outfit-latin-600-normal-BEfTtDA7.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-ext-700-normal-CI4iH74K.woff2)format("woff2"),url(/assets/outfit-latin-ext-700-normal-fjS8-Gm7.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/outfit-latin-700-normal-Cu9v6i1X.woff2)format("woff2"),url(/assets/outfit-latin-700-normal-D4itBLBr.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/outfit-latin-ext-800-normal-DRv2ic_2.woff2)format("woff2"),url(/assets/outfit-latin-ext-800-normal-DyhPHUt-.woff)format("woff");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:Outfit;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/outfit-latin-800-normal-CQna6-G7.woff2)format("woff2"),url(/assets/outfit-latin-800-normal-BRHLSPcU.woff)format("woff");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:#101321;--panel:#1e2437;--panel-light:#2a334b;--text:#f8fafc;--text-2:#bac4d7;--primary:#8b5cf6;--primary-hover:#a78bfa;--coins:#f5b942;--stars:#fde047;--positive:#34d399;--error:#fb7185;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-head:"Outfit", "Inter", system-ui, sans-serif;--s1:8px;--s2:16px;--s3:24px;--s4:32px;--s5:40px;--s6:48px;--radius:16px;--radius-sm:12px;--radius-lg:20px}*,:before,:after{box-sizing:border-box}html,body,#root{background:var(--bg);min-width:1024px;height:100%;min-height:650px;color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.45}#root{position:relative;overflow:hidden}.scene-canvas{z-index:0;inset:0;position:fixed!important}.portrait-canvas{z-index:6;inset:0;pointer-events:none!important;position:fixed!important}.portrait-canvas canvas{pointer-events:none!important}.ui-layer{z-index:5;height:100%;position:relative}h1,h2,h3{font-family:var(--font-head);letter-spacing:.01em;margin:0}.headline{font-size:48px;font-weight:800;line-height:1.05}.screen-title{font-size:32px;font-weight:700}.card-title{font-size:22px;font-weight:700}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:13px;font-weight:600}.muted{color:var(--text-2)}.btn{min-height:52px;padding:0 var(--s3);border-radius:var(--radius-sm);font-family:var(--font-head);letter-spacing:.06em;color:var(--text);background:var(--panel-light);cursor:pointer;justify-content:center;align-items:center;gap:var(--s1);border:none;font-size:18px;font-weight:700;transition:background-color .12s,transform 80ms;display:inline-flex}.btn:hover:not(:disabled){background:#36405c}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{cursor:not-allowed;color:#7c869c;background:#232a3e}.btn-primary{background:var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-ghost{border:2px solid var(--panel-light);background:0 0}.btn-danger{color:var(--error)}.btn-xl{min-height:64px;font-size:22px}.btn-block{width:100%}.btn .soon{font-family:var(--font-body);letter-spacing:.04em;color:var(--text-2);border:1px solid #3a4560;border-radius:8px;padding:2px 8px;font-size:13px;font-weight:600}.panel{background:var(--panel);border-radius:var(--radius-lg);box-shadow:0 16px 40px #00000059}.input{width:100%;min-height:52px;padding:0 var(--s2);border-radius:var(--radius-sm);border:2px solid var(--panel-light);color:var(--text);font-family:var(--font-body);background:#151a2a;font-size:18px}.input:focus{border-color:var(--primary);outline:none}.input[aria-invalid=true]{border-color:var(--error)}.field-error{margin-top:var(--s1);color:var(--error);min-height:20px;font-size:14px;font-weight:600}.swatches{gap:var(--s1);grid-template-columns:repeat(6,44px);display:grid}.swatch{cursor:pointer;border:3px solid #0000;border-radius:50%;width:44px;height:44px;padding:0;position:relative}.swatch[aria-checked=true]{border-color:var(--text);box-shadow:0 0 0 3px var(--primary)}.swatch[aria-checked=true]:after{content:"✓";color:#101321;place-items:center;font-size:18px;font-weight:800;display:grid;position:absolute;inset:0}.logo{top:var(--s5);left:var(--s6);position:absolute}.logo .headline span{color:var(--primary-hover)}.tagline{margin-top:var(--s1);letter-spacing:.14em;color:var(--text-2);font-size:16px;font-weight:600}.topright{top:var(--s4);right:var(--s6);align-items:center;gap:var(--s2);display:flex;position:absolute}.coin-pill{align-items:center;gap:var(--s1);height:44px;padding:0 var(--s2);background:var(--panel);border-radius:22px;font-size:18px;font-weight:700;display:flex}.coin{background:var(--coins);border-radius:50%;width:22px;height:22px;box-shadow:inset 0 -3px #c98f1d}.dev-tag{color:#101321;background:var(--coins);border-radius:6px;padding:1px 6px;font-size:13px;font-weight:700}.avatar-icon{border:3px solid var(--panel-light);cursor:pointer;border-radius:50%;width:44px;height:44px;padding:0;position:relative}.avatar-icon:before,.avatar-icon:after{content:"";background:#0b0d14;border-radius:50%;width:7px;height:9px;position:absolute;top:14px}.avatar-icon:before{left:11px}.avatar-icon:after{right:11px}.menu-card{right:var(--s6);width:400px;min-height:560px;padding:var(--s5) var(--s4);gap:var(--s2);flex-direction:column;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.menu-card h2{margin-bottom:var(--s1)}.menu-card .spacer{flex:1}.divider{align-items:center;gap:var(--s2);color:var(--text-2);margin:var(--s1) 0;font-size:14px;display:flex}.divider:before,.divider:after{content:"";background:var(--panel-light);flex:1;height:1px}.code-input{text-align:center;font-family:var(--font-head);letter-spacing:.3em;text-transform:uppercase;font-size:28px;font-weight:700}.center-wrap{place-items:center;height:100%;display:grid}.profile-card{width:520px;padding:var(--s4)}.profile-row{gap:var(--s3);margin-top:var(--s3);grid-template-columns:1fr 136px;display:grid}.profile-card .swatches{grid-template-columns:repeat(6,40px);gap:8px}.profile-card .swatch{border-radius:14px;width:40px;height:44px}.portrait-mini{border-radius:var(--radius);width:136px;height:200px}.form-group+.form-group{margin-top:var(--s3)}.form-group .label{margin-bottom:var(--s1);display:block}.profile-actions{gap:var(--s2);margin-top:var(--s4);display:flex}.profile-actions .btn{flex:1}.lobby{grid-template-columns:320px 1fr;height:100%;display:grid}.lobby-side{height:100%;padding:var(--s4) var(--s3);gap:var(--s2);border-radius:0;flex-direction:column;display:flex;box-shadow:8px 0 32px #00000059}.lobby-code{font-family:var(--font-head);letter-spacing:.16em;text-align:center;padding:var(--s2) 0;border-radius:var(--radius);border:2px dashed var(--panel-light);background:#151a2a;font-size:44px;font-weight:800}.segmented{gap:var(--s1);grid-template-columns:repeat(3,1fr);display:grid}.segmented .btn[aria-pressed=true]{background:var(--primary);color:var(--text)}.toggle-row{justify-content:space-between;align-items:center;gap:var(--s2);min-height:44px;display:flex}.switch{background:var(--panel-light);cursor:pointer;border:none;border-radius:18px;flex:none;width:64px;height:36px;position:relative}.switch:after{content:"";background:var(--text-2);border-radius:50%;width:28px;height:28px;transition:transform .15s;position:absolute;top:4px;left:4px}.switch[aria-checked=true]{background:var(--primary)}.switch[aria-checked=true]:after{background:var(--text);transform:translate(28px)}.switch:disabled{cursor:not-allowed;opacity:.6}.side-spacer{flex:1}.lobby-main{padding:var(--s4) var(--s5);flex-direction:column;min-height:0;display:flex;position:relative}.lobby-head{margin-bottom:var(--s3);justify-content:space-between;align-items:baseline;display:flex}.player-grid{gap:var(--s2);flex:1;grid-template-columns:repeat(4,232px);align-content:start;min-height:0;display:grid;overflow-y:auto}.player-card{border-radius:var(--radius);border:3px solid var(--panel-light);flex-direction:column;display:flex;overflow:hidden}.player-card.is-ready{border-color:var(--positive)}.player-card.is-me{box-shadow:0 0 0 3px #8b5cf68c}.player-card .portrait{height:196px}.player-card .info{background:var(--panel);padding:var(--s1) var(--s2) var(--s2)}.player-card .status-row{justify-content:space-between;align-items:center;gap:var(--s1);flex-wrap:wrap;min-height:26px;margin-top:4px;display:flex}.player-card .badges{gap:4px;display:flex}.player-card .name{text-overflow:ellipsis;white-space:nowrap;line-height:32px;overflow:hidden}.badge{letter-spacing:.06em;white-space:nowrap;border-radius:8px;padding:2px 8px;font-size:13px;font-weight:700}.badge-host{background:var(--coins);color:#101321}.badge-me{background:var(--primary)}.status{white-space:nowrap;letter-spacing:.06em;font-size:13px;font-weight:700}.status.ready{color:var(--positive)}.status.waiting{color:var(--text-2)}.status.offline{color:var(--error)}.empty-slot{border-radius:var(--radius);border:3px dashed var(--panel-light);min-height:268px;color:var(--text-2);text-align:center;padding:var(--s2);background:var(--panel);place-items:center;font-size:14px;display:grid}.lobby-bottom{margin-top:var(--s3);padding:var(--s2);background:var(--panel);border-radius:var(--radius-lg);align-items:center;gap:var(--s2);display:flex;box-shadow:0 16px 40px #00000059}.lobby-bottom .hint{color:var(--text-2);flex:1;font-size:15px}.start-btn{min-width:320px}.lobby-side .swatches{grid-template-columns:repeat(6,36px);gap:8px}.lobby-side .swatch{border-radius:12px;width:36px;height:44px}.toasts{top:var(--s3);z-index:50;gap:var(--s1);flex-direction:column;width:480px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{background:var(--panel);border-left:6px solid var(--primary);border-radius:var(--radius-sm);padding:12px var(--s2);align-items:center;gap:var(--s2);font-weight:600;display:flex;box-shadow:0 12px 32px #00000073}.toast.error{border-left-color:var(--error)}.toast .x{color:var(--text-2);cursor:pointer;background:0 0;border:none;min-width:44px;min-height:44px;margin-left:auto;font-size:20px}.overlay{z-index:40;background:#101321f0;place-items:center;display:grid;position:fixed;inset:0}.overlay-card{width:520px;padding:var(--s5) var(--s4);text-align:center;border:2px solid var(--error)}.overlay-card p{color:var(--text-2);margin:var(--s2) 0 var(--s4)}.spinner{width:40px;height:40px;margin:0 auto var(--s2);border:4px solid var(--panel-light);border-top-color:var(--primary);border-radius:50%;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.reduced-motion .spinner{animation:none}.reduced-motion .btn{transition:none}.small{font-size:13px}.center{text-align:center}.ok{color:var(--positive);font-weight:700}.bad{color:var(--error);font-weight:700}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.stack{gap:var(--s1);flex-direction:column;display:flex}.inline-form{gap:var(--s1);align-items:center;display:flex}.inline-form .input{flex:1}.card-actions{gap:var(--s2);margin-top:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.side-links{gap:var(--s1);display:grid}.start-group{gap:var(--s1);flex-direction:column;align-items:stretch;display:flex}.show-demos{gap:var(--s1);flex-wrap:wrap;align-items:center;display:flex}.btn-sm{min-height:44px;padding:0 var(--s2);font-size:15px}:focus-visible{outline:3px solid var(--primary-hover);outline-offset:2px}.nametag{white-space:nowrap;font:700 14px var(--font-body);color:var(--text);background:#101321e6;border:2px solid;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;display:inline-flex;transform:translateY(-4px)}.nametag.active{background:var(--primary)}.nametag.offline{opacity:.55}.nametag .dot,.pchip .dot{border-radius:50%;width:10px;height:10px;display:inline-block}.field-symbol{font:800 34px var(--font-head);color:#fff;text-shadow:0 2px 6px #000c}.field-symbol.warn{color:var(--error)}.pchip{background:var(--panel-light);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:15px;font-weight:600;display:inline-flex}.pchip.dim{opacity:.6}.waiting{gap:var(--s1);margin-top:var(--s1);flex-wrap:wrap;display:flex}.announce-wrap,.results-wrap,.summary-wrap{justify-content:center;align-items:center;gap:var(--s2);padding:var(--s3);flex-direction:column;display:flex;position:fixed;inset:0}.announce{text-align:center;width:min(720px,92vw);padding:var(--s4);animation:.35s ease-out pop-in}.announce-round{font:700 18px var(--font-head);letter-spacing:.12em;color:var(--text-2);justify-content:center;gap:var(--s2);align-items:center;display:flex}.cat-tag{background:var(--panel-light);border-radius:999px;padding:2px 10px;font-size:13px}.announce-name{font:800 48px var(--font-head);margin:var(--s1) 0;color:var(--stars)}.announce-rule{margin:0 0 var(--s1);font-size:20px}.announce-controls{color:var(--text-2);margin:0}.announce-unscored{color:var(--coins);font-weight:700}.announce-count{font:800 64px var(--font-head);margin-top:var(--s2);color:var(--primary-hover)}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.starbar{gap:var(--s1);background:var(--panel);padding:var(--s1) var(--s2);border-radius:var(--radius);flex-wrap:wrap;justify-content:center;display:flex}.stars-num{color:var(--stars);margin-left:4px;font-weight:800}.results,.summary{width:min(640px,94vw);padding:var(--s3);animation:.3s ease-out pop-in}.summary-wrap{justify-content:flex-end;align-items:flex-end}.summary{width:520px;max-height:calc(100vh - 48px);overflow:auto}.rank-list{margin:var(--s2) 0;gap:var(--s1);padding:0;list-style:none;display:grid}.rank-row{gap:var(--s2);background:var(--panel-light);padding:8px var(--s2);border-radius:var(--radius-sm);grid-template-columns:40px 1fr auto auto;align-items:center;display:grid}.rank-list.compact .rank-row{grid-template-columns:40px 1fr auto}.rank-row.me{outline:2px solid var(--primary)}.rank-num{font:800 22px var(--font-head)}.rank-pts{color:var(--text-2)}.rank-stars{font:800 20px var(--font-head);color:var(--text-2);text-align:right;min-width:56px}.rank-stars.got{color:var(--stars)}.results-foot{justify-content:space-between;align-items:center;gap:var(--s2);display:flex}.coin-breakdown{background:var(--panel-light);border-radius:var(--radius-sm);padding:var(--s2)}.coin-line{margin:0 0 4px;font-size:17px}.coin-total{color:var(--coins);align-items:center;gap:6px;font-size:22px;display:inline-flex}.summary-actions{gap:var(--s1);margin-top:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.mg-topbar{top:var(--s2);left:var(--s2);right:var(--s2);z-index:3;align-items:center;gap:var(--s2);padding:10px var(--s3);grid-template-columns:1fr 2fr 1fr;display:grid;position:fixed}.mg-top-left{flex-direction:column;display:flex}.mg-name{font:800 20px var(--font-head);letter-spacing:.06em}.mg-task{text-align:center;font:700 20px var(--font-head)}.mg-top-right{justify-content:flex-end;align-items:center;gap:var(--s2);display:flex}.mg-timer{font:800 28px var(--font-head);text-align:right;min-width:64px}.mg-timer.low{color:var(--error)}.mg-score{color:var(--text-2);font-weight:600}.task-alert{color:var(--error)}.mg-card{left:50%;bottom:var(--s3);width:min(650px,94vw);min-width:min(480px,94vw);max-height:58vh;padding:var(--s3);z-index:3;position:fixed;overflow:auto;transform:translate(-50%)}.mg-card.wide{width:min(1100px,96vw)}.arena-controls{bottom:var(--s2);padding:10px var(--s3);color:var(--text-2);z-index:3;font-weight:600;position:fixed;left:50%;transform:translate(-50%)}.secret-q{font:700 22px var(--font-head);margin:4px 0 var(--s2)}.secret-q.big{color:var(--stars);font-size:36px}.answer-text{font-size:20px;font-style:italic}.reveal-q{font:800 28px var(--font-head);margin:4px 0 var(--s2)}.original-q{color:var(--coins);font-size:18px}.mic-row{gap:var(--s2);margin:var(--s1) 0;align-items:center;display:flex}.mic-status{color:var(--error);font-weight:700}.mic-error{border:1px solid var(--error);border-radius:var(--radius-sm);padding:var(--s2);gap:var(--s1);background:#fb71851f;display:grid}.waveform{background:var(--panel-light);border-radius:var(--radius-sm);width:100%;max-width:520px;height:56px}.feed{margin:var(--s2) 0 0;gap:6px;padding:0;list-style:none;display:grid}.feed li.ok{color:var(--positive)}.forbidden{gap:var(--s1);flex-wrap:wrap;display:flex}.forbidden-word{color:var(--error);background:#fb71852e;border-radius:999px;padding:6px 12px;font-weight:700}.vote-list,.vote-grid{gap:var(--s1);margin-top:var(--s1);display:grid}.vote-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.vote-item{text-align:left;padding:12px var(--s2);border-radius:var(--radius-sm);background:var(--panel-light);color:var(--text);cursor:pointer;font:inherit;border:2px solid #0000;gap:4px;min-height:44px;display:grid}.vote-item:hover:not(:disabled){border-color:var(--primary-hover)}.vote-item:disabled{cursor:default;opacity:.75}.vote-item.chosen{border-color:var(--positive);opacity:1}.vote-item.static{cursor:default}.assign-list{gap:var(--s1);display:grid}.assign-row{gap:var(--s2);background:var(--panel-light);padding:8px var(--s2);border-radius:var(--radius-sm);grid-template-columns:1fr 200px auto;align-items:center;display:grid}.assign-text{font-style:italic}.role-box{background:var(--panel-light);border-radius:var(--radius-sm);padding:var(--s2)}.majority-row{gap:var(--s2);margin:var(--s2) 0;grid-template-columns:1fr 1fr;display:grid}.majority-btn{border-radius:var(--radius);background:var(--panel-light);min-height:120px;color:var(--text);font:700 20px var(--font-head);cursor:pointer;padding:var(--s2);border:3px solid #0000;place-items:center;gap:6px;display:grid}.majority-btn.chosen{border-color:var(--primary-hover)}.majority-btn.winner{border-color:var(--positive);background:#34d39926}.majority-key{color:var(--text-2);font-size:14px}.majority-count{color:var(--stars);font-size:15px}.wb-wrap{inset:96px var(--s3) var(--s3);place-items:center;display:grid;position:fixed}.wb-card{width:min(760px,94vw);padding:var(--s4);text-align:center}.wb-rule{font:800 30px var(--font-head);letter-spacing:.08em;background:var(--panel-light);padding:var(--s2);border-radius:var(--radius)}.wb-word{font:800 96px var(--font-head);margin:var(--s3) 0;flex-direction:column;align-items:center;display:flex}.wb-ink-hint{color:var(--text-2);font-size:18px}.wb-options{gap:var(--s2);grid-template-columns:repeat(4,1fr);display:grid}.wb-btn{border-radius:var(--radius);color:#0b0d14;min-height:96px;font:800 20px var(--font-head);cursor:pointer;border:4px solid #0000;place-items:center;gap:2px;display:grid;position:relative}.wb-btn:disabled{cursor:default}.wb-btn.mine{border-color:#fff}.wb-btn.correct{box-shadow:0 0 0 4px var(--positive)}.wb-btn.wrong{opacity:.55}.wb-key{font-size:14px;position:absolute;top:6px;left:10px}.wb-sym{font-size:26px}.wb-label{background:#ffffffbf;border-radius:6px;padding:0 8px;font-size:16px}.wb-status{min-height:32px;margin-top:var(--s2);font:700 20px var(--font-head)}.wb-ready{font:800 40px var(--font-head);color:var(--text-2);padding:var(--s6) 0}.draw-layout{inset:104px var(--s3) var(--s3);gap:var(--s2);z-index:3;grid-template-columns:65fr 35fr;display:grid;position:fixed}.draw-canvas-wrap{padding:var(--s2);place-items:center;min-height:0;display:grid;position:relative}.draw-canvas{aspect-ratio:4/3;border-radius:var(--radius-sm);touch-action:none;background:#fff;max-width:100%;max-height:calc(100vh - 170px)}.draw-sent{bottom:var(--s3);background:var(--panel);padding:8px var(--s2);border-radius:var(--radius-sm);font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.draw-tools{padding:var(--s3);gap:var(--s2);flex-direction:column;display:flex;overflow:auto}.draw-prompt{color:var(--stars);font-size:24px}.tool-row{gap:var(--s1);flex-wrap:wrap;display:flex}.tool-btn{border-radius:var(--radius-sm);background:var(--panel-light);min-width:64px;min-height:52px;color:var(--text);cursor:pointer;border:2px solid #0000;align-items:center;gap:8px;padding:0 12px;font-weight:700;display:inline-flex}.tool-btn[aria-pressed=true],.tool-row .btn[aria-pressed=true]{border-color:var(--primary-hover);background:var(--primary)}.brush-dot{background:var(--text);border-radius:50%;display:inline-block}.tool-colors{gap:var(--s1);grid-template-columns:repeat(6,1fr);display:grid}.color-btn{aspect-ratio:1;border:3px solid var(--panel-light);cursor:pointer;border-radius:50%;min-height:44px}.color-btn[aria-pressed=true]{box-shadow:0 0 0 3px var(--primary);border-color:#fff}.gallery-cards{gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.gallery-card{border-radius:var(--radius-sm);background:var(--panel-light);color:var(--text);cursor:pointer;font:inherit;border:3px solid #0000;gap:6px;padding:8px;display:grid}.gallery-card.chosen{border-color:var(--positive)}.gallery-card.own{opacity:.45;cursor:not-allowed}.gallery-card:disabled:not(.own){cursor:default}.draw-thumb{background:#fff;border-radius:8px;width:100%;height:auto}.gallery-label{font-size:14px;font-weight:700}.emote-bar{gap:var(--s1);padding:var(--s1);width:fit-content;margin-top:var(--s2);display:flex}.summary-wrap .emote-bar{left:var(--s3);bottom:var(--s3);position:fixed}.emote-btn{border-radius:var(--radius-sm);background:var(--panel-light);cursor:pointer;border:none;place-items:center;width:56px;height:56px;display:grid}.emote-btn:hover{background:#36405c}.item-icon{object-fit:contain;display:block}.item-icon.placeholder{background:radial-gradient(circle,#36405c 0%,#0000 70%);border-radius:50%}.chest-screen,.inventory-screen{height:100%;padding:var(--s2) var(--s3);background:#101321c7;flex-direction:column;display:flex}.chest-head{grid-template-columns:1fr auto 1fr;align-items:center;min-height:64px;display:grid}.chest-head .screen-title{text-align:center;margin:0}.chest-head .topright{justify-self:end;position:static}.back-btn{justify-self:start;width:56px;padding:0;font-size:28px}.chest-offer{margin:var(--s2) auto;width:520px;padding:var(--s3);align-items:center;gap:var(--s2);text-align:center;flex-direction:column;display:flex}.chest-3d{border-radius:var(--radius);width:360px;height:240px}.chest-sub{font:700 22px var(--font-head);margin:0}.chest-price{font:800 32px var(--font-head);color:var(--coins);align-items:center;gap:8px;margin:0;display:flex}.reel-stage{justify-content:center;align-items:center;gap:var(--s3);flex-direction:column;flex:1;display:flex}.reel-stage.fade{animation:.4s fade-in}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.reel-viewport{border-top:2px solid var(--panel-light);border-bottom:2px solid var(--panel-light);background:#0b0f1c;width:100vw;height:200px;position:relative;overflow:hidden}.reel-strip{will-change:transform;display:flex;position:absolute;top:20px;left:0}.reel-strip.settle{animation:.35s ease-out settle}@keyframes settle{0%{top:20px}40%{top:26px}to{top:20px}}.reel-card{background:var(--panel);border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:6px;padding:10px 8px 8px;display:flex;position:relative;overflow:hidden}.reel-stripe{height:6px;position:absolute;top:0;left:0;right:0}.reel-name{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:32px;font-size:13px;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.reel-pointer{background:#fff;width:3px;margin-left:-1.5px;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 12px #fff,0 0 4px #fff}.reveal-stage{z-index:1;background:#05060cd1;place-items:center;animation:.3s fade-in;display:grid;position:fixed;inset:0}.reveal-card{width:min(760px,94vw);padding:var(--s3);text-align:center;border:3px solid;animation:.35s ease-out pop-in}.reveal-badges{gap:var(--s1);justify-content:center;display:flex}.rarity-badge{color:#0b0d14;font:800 14px var(--font-head);letter-spacing:.08em;border-radius:999px;padding:4px 12px;display:inline-block}.quality-badge{background:var(--panel-light);border-radius:999px;padding:4px 12px;font-weight:700}.reveal-previews{gap:var(--s2);margin:var(--s2) 0;grid-template-columns:1fr 1fr;display:grid}.reveal-item,.reveal-avatar{border-radius:var(--radius);height:300px}.reveal-stage .card-actions{justify-content:center}.sparkles{pointer-events:none;opacity:.55;background-image:radial-gradient(circle,#fde047 1.5px,#0000 2px),radial-gradient(circle,#fff3c4 1px,#0000 2px);background-size:120px 120px,80px 80px;animation:2.4s linear infinite sparkle;position:fixed;inset:0}@keyframes sparkle{0%{background-position:0 0,40px 60px}to{background-position:0 -240px,40px -100px}}.contents-card{width:min(900px,94vw);max-height:88vh;padding:var(--s3);gap:var(--s2);display:grid;overflow:auto}.chances{gap:var(--s3);grid-template-columns:1fr 1fr;display:grid}.chance-row{border-bottom:1px solid var(--panel-light);justify-content:space-between;align-items:center;padding:6px 0;font-size:16px;display:flex}.contents-list{gap:var(--s2);grid-template-columns:repeat(4,1fr);display:grid}.contents-list ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.contents-list li{align-items:center;gap:8px;font-size:14px;display:flex}.inv-layout{gap:var(--s2);min-height:0;margin-top:var(--s1);flex:1;grid-template-columns:1fr 420px;display:grid}.inv-left{padding:var(--s2);flex-direction:column;min-height:0;display:flex}.inv-filters{gap:var(--s1);margin-bottom:var(--s2);flex-wrap:wrap;align-items:center;display:flex}.inv-filters .segmented{display:flex}.select-sm{width:auto;min-height:44px}.inv-grid{gap:var(--s2);grid-template-columns:repeat(5,148px);align-content:start;padding:4px;display:grid;overflow:auto}.inv-card{border-radius:var(--radius-sm);background:var(--panel-light);width:148px;height:184px;color:var(--text);cursor:pointer;font:inherit;border:3px solid;flex-direction:column;justify-content:flex-end;align-items:center;gap:2px;padding:8px 6px;display:flex;position:relative}.inv-card.selected{box-shadow:0 0 0 3px #fff}.inv-card.equipped{background:#33305a}.inv-rarity{color:#0b0d14;font:800 11px var(--font-head);border-radius:6px;padding:1px 6px;position:absolute;top:6px;left:6px}.inv-name{text-align:center;font-size:14px;font-weight:700;line-height:1.15}.inv-quality{color:var(--text-2);font-size:13px}.inv-eq{background:var(--positive);color:#0b0d14;font:800 10px var(--font-head);border-radius:6px;padding:2px 6px;position:absolute;top:30px;right:4px}.inv-right{padding:var(--s2);gap:var(--s1);flex-direction:column;display:flex;overflow:auto}.inv-avatar-wrap{cursor:grab;touch-action:none}.inv-avatar{border-radius:var(--radius);height:300px}.slot-list{gap:6px;display:grid}.slot-row{gap:var(--s1);background:var(--panel-light);border-radius:10px;grid-template-columns:80px 36px 1fr auto;align-items:center;min-height:48px;padding:4px 10px;display:grid}.slot-row .slot-name{font-size:14px}.slot-row>.muted.slot-name{grid-column:2/span 3}.slot-label{font:800 13px var(--font-head);color:var(--text-2)}.inv-actions{gap:var(--s1);padding:var(--s1) 0;display:grid}.inv-actions .segmented{flex-wrap:wrap;display:flex}.settings-card{width:560px;padding:var(--s3);gap:var(--s2);display:grid}.range{width:100%;accent-color:var(--primary);height:32px}@media (width<=1280px){.inv-grid{grid-template-columns:repeat(4,148px)}.contents-list{grid-template-columns:repeat(2,1fr)}}.reduced-motion .announce,.reduced-motion .results,.reduced-motion .summary,.reduced-motion .reveal-card,.reduced-motion .reel-strip.settle,.reduced-motion .sparkles,.reduced-motion .spinner{animation:none}
