@font-face{font-family:MuseoModerno;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/museo-moderno-600.ttf) format("truetype")}@font-face{font-family:MuseoModerno;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/museo-moderno-700.ttf) format("truetype")}:root{--background: #080b11;--foreground: #f4f5f7;--card: #12171d;--card-foreground: #f4f5f7;--primary: #26ff00;--primary-foreground: #161b08;--secondary: #1b2027;--secondary-foreground: #f4f5f7;--muted: #1b2027;--muted-foreground: #9298a3;--accent: #86a8ff;--accent-foreground: #f4f5f7;--destructive: #ff686d;--border: #3a4048;--input: #3a4048;--ring: #26ff00;--success: #55d982;--bg: var(--background);--surface: var(--card);--surface-2: var(--secondary);--line: var(--border);--ink: var(--foreground);--lime: var(--primary);--lime-ink: var(--primary-foreground);--cobalt: var(--accent);--danger: var(--destructive);--ok: var(--success);--tabbar-bg: #0e1116;--friends-surface: #12161c;--avatar-surface: #191e25;--avatar-border: #555d67;--home-avatar-surface: #151a21;--home-avatar-border: #626a75;--row-separator: #272c33;--icon-outline: #e9ebee;--selected-surface: rgba(255, 255, 255, .012);--radius-inset: 8px;--radius-control: 12px;--radius-card: 16px;--radius-sheet: 24px;--radius: var(--radius-card);--tabbar-height: 60px;--tabbar-link-height: 52px;--tabbar-icon-size: 32px;--tabbar-bottom: 24px;--tabbar-clearance: max(var(--tabbar-bottom), var(--safe-bottom));--tabbar-occupied: calc(var(--tabbar-clearance) + var(--tabbar-height));--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px);--viewport-height: 100vh;color-scheme:dark}@supports (height: 100dvh){:root{--viewport-height: 100dvh}}@media(display-mode:standalone){:root{--viewport-height: 100vh}.home-app,.home-screen{min-height:100%}}:root[data-theme=light]{--background: #f2f3ef;--foreground: #1b1d20;--card: #ffffff;--card-foreground: #1b1d20;--primary: #597300;--primary-foreground: #ffffff;--secondary: #e9ebe6;--secondary-foreground: #1b1d20;--muted: #e9ebe6;--muted-foreground: #686e75;--accent: #365fcf;--accent-foreground: #ffffff;--destructive: #b82f39;--border: #d7dad3;--input: #d7dad3;--ring: #597300;--success: #188447;--bg: var(--background);--surface: var(--card);--surface-2: var(--secondary);--line: var(--border);--ink: var(--foreground);--lime: var(--primary);--lime-ink: var(--primary-foreground);--cobalt: var(--accent);--danger: var(--destructive);--ok: var(--success);--tabbar-bg: #ffffff;--friends-surface: #ffffff;--avatar-surface: #f2f3ef;--avatar-border: #9ca19a;--home-avatar-surface: #ffffff;--home-avatar-border: #91978f;--row-separator: #dfe2dc;--icon-outline: #737a72;--selected-surface: rgba(89, 115, 0, .07);color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,system-ui,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior:none}.game-iframe{display:block;width:100%;height:100%;border:0;background:#0b0e17}button{font:inherit;color:inherit}a{color:var(--cobalt)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.app{min-height:100%;display:flex;flex-direction:column}.home-app{position:relative;height:var(--viewport-height);min-height:var(--viewport-height);overflow:hidden;background:var(--bg)}.screen{flex:1;padding:calc(18px + var(--safe-top)) 16px calc(var(--tabbar-occupied) + 24px);max-width:560px;width:100%;margin:0 auto}.screen.bare{padding-bottom:calc(24px + var(--safe-bottom))}.tabbar{position:fixed;z-index:50;left:50%;bottom:var(--tabbar-clearance);width:237px;height:var(--tabbar-height);box-sizing:border-box;padding:4px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));transform:translate(-50%);border:0;border-radius:999px;background:#9292928a;box-shadow:inset 0 .5px #ffffff47,0 10px 32px #0000005c;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.tabbar a{position:relative;z-index:1;width:auto;height:var(--tabbar-link-height);display:grid;place-items:center;align-items:center;justify-content:center;border-radius:calc(var(--tabbar-link-height) / 2);color:#fff;text-decoration:none;transition:transform .16s ease}.tabbar-indicator{position:absolute;z-index:0;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / 3);border-radius:calc(var(--tabbar-link-height) / 2);background:#00000075;transform:translate(calc(var(--active-index) * 100%));transition:transform .24s cubic-bezier(.22,1,.36,1)}.tabbar[data-active-index="0"]{--active-index: 0}.tabbar[data-active-index="1"]{--active-index: 1}.tabbar[data-active-index="2"]{--active-index: 2}.nav-tab-icon{display:block;width:var(--tabbar-icon-size);height:var(--tabbar-icon-size)}.tabbar a:first-of-type:not(.active) .nav-tab-icon{filter:grayscale(1) brightness(0) invert(1)}.tabbar a:not(:first-of-type).active .nav-tab-icon{filter:brightness(0) saturate(100%) invert(75%) sepia(94%) saturate(3719%) hue-rotate(66deg) brightness(112%) contrast(123%)}@media(prefers-reduced-motion:reduce){.tabbar-indicator{transition:none}}h1{font-size:26px;line-height:1.15;margin:6px 0 18px;letter-spacing:-.01em}h2{font-size:15px;margin:22px 0 10px;color:var(--muted-foreground);font-weight:600;letter-spacing:.01em}.brand{font-weight:800;font-size:20px;letter-spacing:-.01em}.brand small{color:var(--muted-foreground);font-weight:500;font-size:12px;margin-left:8px}.card{background:var(--card);border:1px solid var(--border);color:var(--card-foreground);border-radius:var(--radius-card);padding:14px 16px}.card+.card{margin-top:10px}.row{display:flex;align-items:center;gap:12px}.row .grow{flex:1;min-width:0}.muted{color:var(--muted-foreground)}.small{font-size:13px}.btn{appearance:none;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:var(--radius-control);padding:12px 16px;font-weight:600;cursor:pointer;touch-action:manipulation}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--lime);border-color:var(--lime);color:var(--lime-ink)}.btn.block{display:block;width:100%}.btn.ghost{background:transparent}.btn.danger{color:var(--danger)}.btn.sm{padding:8px 12px;font-size:14px;border-radius:var(--radius-inset)}.stack{display:grid;gap:10px;align-content:start}.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:22px;background:var(--surface-2);flex:none}.avatar.lg{width:64px;height:64px;font-size:36px}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted-foreground);display:inline-block;margin-right:6px}.dot.on{background:var(--ok)}.pill{font-size:12px;padding:2px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted-foreground)}.pill.lime{background:var(--lime);color:var(--lime-ink)}input,textarea{width:100%;font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-control);padding:12px 14px;outline:none}input:focus,textarea:focus{border-color:var(--cobalt)}input:focus-visible,textarea:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:34px;letter-spacing:.18em;font-weight:700;text-align:center}.qr{width:160px;height:160px;border-radius:12px;background:#fff;padding:8px;display:block;margin:0 auto}.avatars{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.avatars button{aspect-ratio:1;border-radius:var(--radius-inset);border:1px solid var(--line);background:var(--surface-2);font-size:22px;cursor:pointer}.avatars button.on{border-color:var(--lime);box-shadow:0 0 0 2px var(--lime) inset}.onboarding{position:fixed;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;background:var(--bg)}.onboarding .panel{width:100%;max-width:560px;padding:24px 20px calc(24px + var(--safe-bottom));background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;animation:sheet-up .22s cubic-bezier(.2,.9,.3,1) both}.onboarding.auth-modal{background:color-mix(in srgb,var(--bg) 76%,transparent)}.game{position:fixed;inset:0;background:#13172b;touch-action:none;overflow:hidden}.game .stage,.game canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.game .topbar{position:absolute;top:calc(10px + var(--safe-top));left:12px;right:12px;display:flex;justify-content:space-between;pointer-events:none;font-size:13px;color:var(--muted-foreground)}.game .topbar .pill{pointer-events:auto}.ponpon-overlay{position:absolute;z-index:30;top:var(--safe-top);left:50%;width:min(380px,calc(100vw - 24px));transform:translate(-50%);pointer-events:none}.ponpon-overlay-tab,.ponpon-overlay-panel{pointer-events:auto}.ponpon-overlay-tab{display:flex;align-items:center;gap:9px;min-height:42px;margin:0 auto;padding:7px 12px 8px;border:1px solid rgba(255,255,255,.15);border-top:0;border-radius:0 0 15px 15px;background:#0f1426d6;box-shadow:0 8px 24px #00000038;backdrop-filter:blur(16px);color:var(--ink);cursor:pointer;text-align:left}.ponpon-overlay-tab:hover,.ponpon-overlay-tab:focus-visible,.ponpon-overlay.is-open .ponpon-overlay-tab{background:#1f2745f0;border-color:#c6f4328c}.ponpon-overlay-mark{display:grid;width:23px;height:23px;place-items:center;border:1px solid rgba(198,244,50,.72);border-radius:50%;color:var(--primary);font-size:19px;line-height:1}.ponpon-overlay-tab-copy{display:grid;gap:0;min-width:0;flex:1}.ponpon-overlay-tab-copy b{font-size:12px;letter-spacing:.02em;line-height:1.1}.ponpon-overlay-tab-copy small,.ponpon-overlay-heading small{overflow:hidden;color:var(--muted-foreground);font-size:11px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.ponpon-overlay-chevron{color:var(--primary);font-size:17px;line-height:1}.ponpon-overlay-panel{display:grid;gap:12px;margin:6px 0 0;padding:14px;border:1px solid rgba(198,244,50,.48);border-radius:16px;background:#0f1426f0;box-shadow:0 18px 36px #0000005c;backdrop-filter:blur(20px)}.ponpon-overlay-heading,.ponpon-overlay-facts,.ponpon-overlay-actions{display:flex;align-items:center;gap:10px}.ponpon-overlay-heading>div{display:grid;min-width:0;flex:1;gap:2px}.ponpon-overlay-heading strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.ponpon-overlay-close{width:32px;height:32px;border:0;border-radius:9px;background:transparent;color:var(--muted-foreground);cursor:pointer;font-size:22px;line-height:1}.ponpon-overlay-close:hover,.ponpon-overlay-close:focus-visible{background:var(--secondary);color:var(--ink)}.ponpon-overlay-facts{justify-content:space-between;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#1f274599;color:var(--muted-foreground);font-size:12px}.ponpon-overlay-facts b{margin-left:4px;color:var(--ink);font-variant-numeric:tabular-nums}.ponpon-overlay-actions .btn{flex:1}.ponpon-overlay-actions .btn.danger{color:var(--destructive)}.game-room-waiting{position:absolute;z-index:10;inset:0;display:grid;align-content:center;justify-items:center;gap:8px;padding:72px 28px 28px;background:radial-gradient(circle at 50% 35%,rgba(91,140,255,.18),transparent 42%),#0b0e17;color:var(--ink);text-align:center}.game-room-waiting strong{font-size:20px}.game-room-waiting span{max-width:320px;color:var(--muted-foreground);font-size:14px}.joystick{position:absolute;left:22px;bottom:calc(34px + var(--safe-bottom));width:130px;height:130px;border-radius:50%;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);touch-action:none}.joystick .joystick-handle{--stick-x: 0px;--stick-y: 0px;position:absolute;top:50%;left:50%;width:56px;height:56px;transform:translate(calc(-50% + var(--stick-x)),calc(-50% + var(--stick-y)));pointer-events:none}.joystick .knob{position:absolute;inset:0;border-radius:50%;background:#c6f432d9;pointer-events:none}.abuttons{position:absolute;right:22px;bottom:calc(34px + var(--safe-bottom));display:flex;gap:14px;align-items:flex-end}.abuttons button{width:72px;height:72px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#ffffff14;color:var(--ink);font-weight:800;font-size:20px;touch-action:none;user-select:none;-webkit-user-select:none}.abuttons button.b{width:58px;height:58px;margin-bottom:40px}.abuttons button.down{background:#c6f432d9;color:var(--lime-ink)}.formation-arcade{display:grid;place-items:center;box-sizing:border-box;padding:max(2px,var(--safe-top)) max(2px,env(safe-area-inset-right)) max(2px,var(--safe-bottom)) max(2px,env(safe-area-inset-left));background:radial-gradient(circle at 50% 12%,rgba(48,91,145,.34),transparent 38%),radial-gradient(circle at 18% 76%,rgba(191,119,32,.08),transparent 26%),repeating-linear-gradient(90deg,rgba(255,255,255,.014) 0 1px,transparent 1px 7px),#02030a}.arcade-cabinet{--monitor-padding: clamp(8px, 2.3vw, 16px);--screen-radius: clamp(18px, 5.64vw, 26px);--monitor-radius: calc(var(--screen-radius) + var(--monitor-padding) + 2px);position:relative;display:grid;grid-template-rows:clamp(48px,7dvh,68px) minmax(0,1fr) clamp(176px,27dvh,244px) clamp(24px,3.6dvh,34px);width:min(100%,620px);height:100%;max-height:1000px;min-height:0;overflow:hidden;border:clamp(3px,.8vw,7px) solid #11131c;border-radius:clamp(18px,4vw,30px);background:radial-gradient(circle at 8% 34%,rgba(199,164,94,.12) 0 1px,transparent 2px),radial-gradient(circle at 91% 72%,rgba(220,190,117,.1) 0 1px,transparent 2px),repeating-linear-gradient(98deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),linear-gradient(110deg,#254f72,#173c5c 42%,#102a46);box-shadow:0 0 0 2px #65677b,0 0 0 4px #080a10,0 18px 65px #000000b8,inset 0 0 0 2px #ffffff17,inset 8px 0 18px #ffffff06,inset -8px 0 18px #0000003d;corner-shape:squircle;isolation:isolate}.arcade-cabinet:before,.arcade-cabinet:after{position:absolute;top:0;bottom:0;z-index:8;width:clamp(4px,1.2vw,10px);background:repeating-linear-gradient(0deg,transparent 0 30px,rgba(231,202,134,.12) 30px 31px),linear-gradient(90deg,#090a10,#777989 38%,#272936 56%,#11131d 76%,#05060a);box-shadow:inset 1px 0 #ffffff2e;content:"";pointer-events:none}.arcade-cabinet:before{left:0}.arcade-cabinet:after{right:0;transform:scaleX(-1)}.arcade-marquee{position:relative;z-index:4;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(7px,2vw,16px);min-width:0;padding:5px clamp(12px,4vw,24px);border-bottom:3px solid #070910;color:#e9fff5;background:radial-gradient(circle at 4% 18%,rgba(227,190,111,.28) 0 1px,transparent 2px),radial-gradient(circle at 86% 78%,rgba(211,176,98,.2) 0 1px,transparent 2px),linear-gradient(100deg,transparent 0 24%,rgba(229,178,54,.2) 24% 24.7%,transparent 25%),repeating-linear-gradient(92deg,rgba(255,255,255,.018) 0 1px,transparent 1px 7px),linear-gradient(180deg,#28577d,#173c61 58%,#102942);box-shadow:inset 0 1px #ffffff24,inset 0 -8px 14px #00000047}.arcade-lamps{display:flex;gap:5px}.arcade-lamps i{width:clamp(6px,1.7vw,10px);height:clamp(6px,1.7vw,10px);border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#ff4f63;box-shadow:0 0 8px #ff4f63}.arcade-lamps i:nth-child(2){background:#ffd84a;box-shadow:0 0 8px #ffd84a}.arcade-lamps i:nth-child(3){background:#53ff9a;box-shadow:0 0 8px #53ff9a}.arcade-title{display:flex;min-width:0;flex-direction:column;align-items:center;line-height:1;text-align:center;text-shadow:2px 0 rgba(255,54,86,.7),-2px 0 rgba(50,238,255,.62),0 0 10px rgba(232,255,246,.5)}.arcade-title strong{overflow:hidden;max-width:100%;font-family:Courier New,ui-monospace,monospace;font-size:clamp(13px,4.4vw,24px);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap}.arcade-title small{overflow:hidden;max-width:100%;margin-top:4px;color:#ffd84a;font-family:Courier New,ui-monospace,monospace;font-size:clamp(7px,2.1vw,10px);font-weight:700;letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap}.arcade-marquee-actions{display:flex;align-items:center;gap:7px}.arcade-exit{min-width:42px;min-height:30px;padding:5px 8px;border:1px solid rgba(255,255,255,.32);border-radius:5px;color:#e9fff5;background:#0a2039;box-shadow:0 3px #050b13,inset 0 1px #ffffff26;font-family:Courier New,ui-monospace,monospace;font-size:11px;font-weight:800}.arcade-exit:active{box-shadow:0 1px #050b13;transform:translateY(2px)}.arcade-monitor-shell{position:relative;min-width:0;min-height:0;margin:0 clamp(6px,2.3vw,16px);padding:var(--monitor-padding);border:2px solid #020307;border-radius:var(--monitor-radius);background:linear-gradient(115deg,rgba(255,255,255,.16),transparent 13% 77%,rgba(255,255,255,.035)),repeating-linear-gradient(96deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px),linear-gradient(145deg,#424650,#0b0c10 48%,#292c32 82%,#111217);box-shadow:inset 0 0 0 3px #07080b,inset 0 -10px 22px #ffffff0e,0 4px #050609,0 7px 14px #00000052;corner-shape:squircle}.arcade-screen{position:relative;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border:2px solid #000;border-radius:var(--screen-radius);background:#000302;box-shadow:inset 0 0 24px 10px #000,inset 0 0 70px #23ff821a,0 0 0 2px #303239;corner-shape:squircle;isolation:isolate}.arcade-screen .stage{z-index:0}.arcade-screen canvas{filter:contrast(1.12) saturate(1.08)}.crt-phosphor,.crt-glass{position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none}.crt-phosphor{opacity:.24;background:repeating-linear-gradient(0deg,rgba(0,0,0,.6) 0,rgba(0,0,0,.6) 1px,transparent 1px,transparent 4px),repeating-linear-gradient(90deg,#ff32411a 0 1px,#4aff9d14 1px 2px,#45cbff1a 2px 3px);mix-blend-mode:screen}.crt-glass{z-index:3;background:linear-gradient(114deg,rgba(255,255,255,.12),transparent 16% 78%,rgba(255,255,255,.04)),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.58) 100%);box-shadow:inset 0 0 18px 8px #0009}.arcade-control-deck{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;min-width:0;min-height:0;overflow:hidden;padding:20px clamp(14px,3vw,20px) 7px;border-top:5px solid #070810;background:linear-gradient(108deg,rgba(213,159,39,.94) 0 1.6%,transparent 1.8% 41.8%,rgba(206,160,59,.42) 42% 42.45%,transparent 42.7%),radial-gradient(circle at 14% 25%,rgba(223,190,113,.1) 0 1px,transparent 2px),radial-gradient(circle at 83% 68%,rgba(223,190,113,.08) 0 1px,transparent 2px),repeating-linear-gradient(94deg,rgba(255,255,255,.016) 0 1px,transparent 1px 6px),linear-gradient(180deg,#285479,#173e62 58%,#102d4c);box-shadow:inset 0 4px #ffffff1a,inset 0 -10px 24px #0000004d,inset 10px 0 18px #ffffff06,inset -10px 0 18px #00000029}.arcade-control-deck:before,.arcade-control-deck:after{position:absolute;inset:0;content:"";pointer-events:none}.arcade-control-deck:before{z-index:0;background:radial-gradient(circle at 3.5% 14%,#131416 0 2px,#b6a271 2.5px 3.5px,transparent 4px),radial-gradient(circle at 96.5% 14%,#131416 0 2px,#b6a271 2.5px 3.5px,transparent 4px),radial-gradient(circle at 3.5% 88%,#131416 0 2px,#b6a271 2.5px 3.5px,transparent 4px),radial-gradient(circle at 96.5% 88%,#131416 0 2px,#b6a271 2.5px 3.5px,transparent 4px);opacity:.78}.arcade-control-deck:after{z-index:0;inset:7px;border:1px solid rgba(225,181,72,.28);box-shadow:inset 0 0 0 1px #05121f70}.deck-grid{position:absolute;inset:0;opacity:.23;background:linear-gradient(90deg,transparent 49.75%,rgba(224,179,66,.9) 50%,transparent 50.25%),repeating-linear-gradient(90deg,transparent 0 38px,rgba(207,226,235,.09) 38px 39px),repeating-linear-gradient(0deg,transparent 0 38px,rgba(207,226,235,.06) 38px 39px);pointer-events:none}.deck-legend{position:absolute;top:7px;color:#ffd84a;font-family:Courier New,ui-monospace,monospace;font-size:clamp(8px,2.3vw,11px);font-weight:900;letter-spacing:.12em;text-shadow:0 1px #000}.deck-legend-stick{left:25%;transform:translate(-50%)}.deck-legend-fire{right:25%;transform:translate(50%)}.arcade-control-deck .formation-joystick{position:relative;left:auto;bottom:auto;z-index:1;justify-self:center;width:clamp(100px,29vw,146px);height:clamp(100px,29vw,146px);border:2px solid #17130b;background:radial-gradient(circle at 17% 17%,#232323 0 2px,#d6c390 2.5px 4px,transparent 4.5px),radial-gradient(circle at 83% 17%,#232323 0 2px,#d6c390 2.5px 4px,transparent 4.5px),radial-gradient(circle at 17% 83%,#232323 0 2px,#d6c390 2.5px 4px,transparent 4.5px),radial-gradient(circle at 83% 83%,#232323 0 2px,#d6c390 2.5px 4px,transparent 4.5px),radial-gradient(circle at 50% 45%,rgba(255,244,186,.28) 0 10%,transparent 38%),repeating-conic-gradient(from 8deg,rgba(87,56,9,.09) 0 1deg,transparent 1deg 8deg),radial-gradient(circle,#d8a522 0 68%,#a86e0d 69% 75%,#17130c 76% 80%,#6d4b14 81%);box-shadow:0 5px #07101c,0 11px 20px #0000006b,inset 0 2px 2px #fff6c457,inset 0 -7px 12px #52310438}.formation-joystick .joystick-gate{position:absolute;inset:19%;border:3px solid #08090c;border-radius:50%;background:radial-gradient(circle at 48% 54%,#060708 0 56%,#15181c 58% 71%,#62656a 72% 76%,#1e2125 78% 100%);box-shadow:inset 0 7px 12px #000,inset 0 -2px 3px #ffffff24,0 2px #ffffff24,0 0 0 2px #5c3e0cb8}.formation-joystick .joystick-handle{z-index:3;width:clamp(48px,14vw,66px);height:clamp(48px,14vw,66px);filter:drop-shadow(0 3px 3px rgba(0,0,0,.58));will-change:transform}.formation-joystick[data-active=false] .joystick-handle{transition:transform .12s cubic-bezier(.2,.92,.28,1.18)}.formation-joystick[data-active=true] .joystick-handle{transition:none}.formation-joystick .knob{z-index:2;border:2px solid #8e201e;background:radial-gradient(circle at 34% 23%,rgba(255,255,255,.88) 0 6%,transparent 7% 17%),radial-gradient(circle at 42% 36%,#f87860 0,#d94435 42%,#9c1f29 75%,#45101a);box-shadow:inset -8px -9px 14px #3b000c6b,inset 6px 5px 10px #ffae973d,0 3px #400d17,0 0 0 3px #07080a,0 8px 9px #00000052}.formation-controls{position:relative;right:auto;bottom:auto;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;align-items:center;justify-self:stretch;justify-items:center;width:100%;height:100%;gap:0}.formation-controls button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:visible;border-width:2px;color:#15243a;font-family:Courier New,ui-monospace,monospace;isolation:isolate;transition:transform 75ms cubic-bezier(.2,.8,.2,1),filter .12s ease,box-shadow 75ms ease}.formation-controls button:after{position:absolute;inset:7px;z-index:-1;border:1px solid rgba(255,255,255,.72);border-radius:inherit;content:""}.formation-controls button.action-fire{width:clamp(68px,19vw,86px);height:clamp(68px,19vw,86px);border-color:#8f969d;background:radial-gradient(circle at 40% 28%,#fff 0 8%,transparent 9% 22%),radial-gradient(circle at 48% 42%,#f8f7ef 0 48%,#d7d8d4 68%,#91969a);box-shadow:0 7px #5d646b,0 11px 18px #00000075,0 0 0 6px #b9bec1,0 0 0 9px #25292d,inset 0 5px 7px #fffc,inset 0 -8px 12px #454b502e}.formation-controls button.action-fire:before{position:absolute;inset:-10px;z-index:-3;border-radius:50%;background:repeating-conic-gradient(from 4deg,rgba(255,255,255,.1) 0 2deg,transparent 2deg 8deg),radial-gradient(circle,transparent 62%,#858b90 63% 68%,#33383d 69% 75%,transparent 76%);content:""}.formation-controls button.action-pulse{width:clamp(52px,14vw,64px);height:clamp(52px,14vw,64px);margin:0;border-color:#1b626e;color:#eaffff;background:radial-gradient(circle at 40% 28%,rgba(255,255,255,.72) 0 8%,transparent 9% 22%),radial-gradient(circle at 48% 42%,#34c7c8 0 48%,#168290 68%,#0b3a51);box-shadow:0 6px #0d3948,0 9px 14px #0006,0 0 0 5px #c6c9c8,0 0 0 8px #20242a,inset 0 4px 7px #ffffff70}.formation-controls button.action-pulse:before{position:absolute;inset:-9px;z-index:-2;border-radius:inherit;background:conic-gradient(#69eef2 var(--cooldown-angle),rgba(53,61,65,.9) 0);content:"";-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 0)}.formation-controls button.action-pulse.cooling{filter:saturate(.45) brightness(.72)}.formation-controls button.down{filter:brightness(.94);transform:translateY(6px) scale(.97)}.formation-controls button.action-fire.down{box-shadow:0 2px #626972,0 5px 9px #00000075,0 0 0 6px #b9bec1,0 0 0 9px #25292d,inset 0 3px 12px #41464c52}.formation-controls button.action-pulse.down{box-shadow:0 1px #0d3948,0 4px 8px #0006,0 0 0 5px #c6c9c8,0 0 0 8px #20242a,inset 0 3px 10px #00142061}.arcade-base{position:relative;z-index:3;display:flex;align-items:center;justify-content:center;gap:clamp(7px,2vw,14px);border-top:3px solid #05070c;color:#7f90a2;background:linear-gradient(#131722,#07090f);font-family:Courier New,ui-monospace,monospace;font-size:clamp(7px,2vw,10px);font-weight:800;letter-spacing:.08em}.speaker{width:clamp(30px,9vw,54px);height:6px;opacity:.65;background:repeating-linear-gradient(90deg,#050608 0 3px,#4d5260 3px 4px)}.coin-slot{width:6px;height:14px;border:1px solid #9f2d37;border-radius:2px;background:#ff4256;box-shadow:0 0 8px #ff4256b3}@media(orientation:landscape)and (max-height:560px){.arcade-cabinet{--monitor-padding: clamp(6px, 1.5vw, 10px);--screen-radius: 18px;grid-template-rows:clamp(44px,12dvh,52px) minmax(0,1fr) 24px;grid-template-columns:minmax(0,1fr) clamp(260px,34vw,330px);width:min(100%,980px);max-height:none;border-radius:18px}.arcade-marquee{grid-column:1;grid-row:1}.arcade-monitor-shell{grid-column:1;grid-row:2;margin:0 4px 0 7px;padding:var(--monitor-padding)}.arcade-control-deck{grid-column:2;grid-row:1 / 4;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);padding:28px 10px 8px;border-top:0;border-left:5px solid #070810}.arcade-base{grid-column:1;grid-row:3}.arcade-control-deck .formation-joystick{width:clamp(94px,15vw,116px);height:clamp(94px,15vw,116px);transform:translate(4px)}.formation-joystick .joystick-handle{width:clamp(46px,8vw,58px);height:clamp(46px,8vw,58px)}.formation-controls button.action-fire{width:70px;height:70px}.formation-controls button.action-pulse{width:48px;height:48px}.arcade-year{display:none}}@media(max-width:349px)and (orientation:portrait){.arcade-cabinet{grid-template-rows:46px minmax(0,1fr) 172px 24px}.arcade-marquee{gap:5px;padding-inline:10px}.arcade-control-deck .formation-joystick{width:98px;height:98px}.formation-joystick .joystick-handle{width:48px;height:48px}.formation-controls button.action-fire{width:66px;height:66px}.formation-controls button.action-pulse{width:48px;height:48px}}.center{text-align:center}.banner{background:#6b86ff1f;border:1px solid rgba(107,134,255,.35);border-radius:12px;padding:10px 12px;font-size:14px}.banner.warn{background:#ff5a5f1a;border-color:#ff5a5f66}.hero{background:linear-gradient(135deg,#1c2447,#121833);border:1px solid var(--line);border-radius:18px;padding:18px}.hero .title{font-size:20px;font-weight:700;margin-bottom:4px}.scores{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.scores td{padding:8px 4px;border-bottom:1px solid var(--line)}.scores td:last-child{text-align:right;font-weight:700}.invite-banner{position:fixed;top:calc(10px + var(--safe-top));left:12px;right:12px;z-index:30;display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface);border:1px solid var(--lime);border-radius:14px;box-shadow:0 10px 30px #00000073}.invite-banner .grow{flex:1;min-width:0}.game-card{border-left:4px solid var(--game-accent);padding-left:12px}.game-icon{width:44px;height:44px;border-radius:var(--radius-inset);display:grid;place-items:center;background:color-mix(in srgb,var(--game-accent) 18%,var(--surface-2));color:var(--game-accent);flex:none}.game .overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;pointer-events:none;text-align:center;padding:0 24px}.game .overlay.countdown{background:radial-gradient(60% 40% at 50% 45%,#0f14268c,#0f142600)}.game .overlay .count{font-size:140px;font-weight:900;line-height:1;letter-spacing:-4px;color:#fff;text-shadow:0 8px 40px rgba(0,0,0,.5);animation:count-pop .9s cubic-bezier(.2,.9,.3,1.2) both}.game .overlay .count.go{color:var(--lime);animation:go-pop .7s cubic-bezier(.2,.9,.3,1.2) both}.game .overlay .hint{max-width:340px;font-size:15px;line-height:1.45;color:#e8ecf5;background:#0f1426b8;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:10px 14px;animation:fade-up .5s ease both}.game .overlay.roundover{background:#0f14268c;animation:fade-in .25s ease both}.game .overlay.roundover .flag{font-size:56px;animation:count-pop .6s cubic-bezier(.2,.9,.3,1.2) both}.game .overlay.roundover .big{font-size:40px;font-weight:900;letter-spacing:-1px;color:#fff;text-shadow:0 6px 30px rgba(0,0,0,.5);animation:count-pop .6s .08s cubic-bezier(.2,.9,.3,1.2) both}.fade-in{animation:fade-up .35s ease both}@keyframes count-pop{0%{opacity:0;transform:scale(1.8)}60%{opacity:1;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes go-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.15)}to{opacity:.9;transform:scale(1.05)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.game .overlay .count,.game .overlay .count.go,.game .overlay .hint,.game .overlay.roundover,.game .overlay.roundover .flag,.game .overlay.roundover .big,.podium .step,.fade-in{animation:none}}.game-hero{display:flex;gap:14px;align-items:center;padding:16px;border-radius:18px;border:1px solid var(--line);background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--game-accent) 28%,transparent),transparent 60%),var(--surface)}.game-hero-icon{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;font-size:36px;background:color-mix(in srgb,var(--game-accent) 22%,var(--surface-2));border:1px solid color-mix(in srgb,var(--game-accent) 45%,transparent);flex:none}.game-hero-name{font-size:22px;font-weight:800;letter-spacing:-.3px}.lobby>.row .pill{display:inline-flex;align-items:center;gap:4px}.icon-label,.recap-kicker{display:inline-flex;align-items:center;justify-content:center;gap:6px}.game-hero-desc{color:var(--ink);opacity:.85;margin-top:4px}.seats{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.seat{display:grid;justify-items:center;gap:6px;padding:12px 8px 10px;border-radius:16px;background:var(--surface);border:1px solid var(--line);text-align:center;min-height:120px}.seat.away{opacity:.5}.seat.bot .avatar,.seat.open .avatar{background:transparent;border:2px dashed var(--line);color:var(--muted-foreground)}.seat.open{border-style:dashed;background:transparent}.seat-name{font-size:14px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite .code{font-size:28px;text-align:left;letter-spacing:.14em}.invite .qr{width:180px;height:180px}.btn.lg{padding:16px 18px;font-size:17px;border-radius:14px}.btn.grow{flex:1}.lobby .cta{position:sticky;bottom:calc(12px + var(--safe-bottom));display:grid;gap:8px;padding:10px 0 0;background:linear-gradient(180deg,transparent,var(--bg) 30%)}.podium{display:flex;align-items:flex-end;justify-content:center;gap:10px;margin:14px 0 10px}.podium .step{display:grid;justify-items:center;gap:4px;width:96px;padding:10px 6px 12px;border-radius:14px;background:#ffffff0a;border:1px solid var(--line);animation:fade-up .45s ease both}.podium .step.place-1{padding-top:18px;padding-bottom:22px;background:#c6f4321a;border-color:#c6f43273;animation-delay:.1s}.podium .step.place-3{animation-delay:.2s}.podium .medal{font-size:20px;line-height:1}.podium .medal svg{display:block}.podium .place-1 .medal{color:#d9aa2e}.podium .place-2 .medal{color:#aeb6c0}.podium .place-3 .medal{color:#bd744d}.podium .place-1 .medal{font-size:26px}.podium .name{font-size:13px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium .score{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}.podium .place-1 .score{font-size:28px;color:var(--lime)}html:has(.home-screen){background:var(--bg)}.home-screen{position:relative;width:100%;height:var(--viewport-height);min-height:var(--viewport-height);flex:0 0 var(--viewport-height);max-width:none;padding:0;overflow:hidden;overscroll-behavior:none;background:var(--bg)}.figma-home-stage{--featured-card-height: 400px;--featured-card-quarter-height: 100px;--featured-card-center-offset-half: 0px;position:relative;width:100%;max-width:402px;height:100%;min-height:0;margin:0 auto;overflow:hidden;overscroll-behavior:none;background:var(--bg)}.figma-home-brand{position:absolute;top:calc(var(--safe-top) + 16px);left:20px;width:48px;height:48px}.figma-home-brand img{display:block;width:48px;height:48px}.room-code-trigger{position:absolute;z-index:60;top:calc(var(--safe-top) + 16px);right:20px;width:44px;height:44px;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:#303034b8;box-shadow:inset 0 .5px #ffffff38,0 8px 22px #00000047;color:#fff;cursor:pointer;backdrop-filter:blur(18px) saturate(1.25);-webkit-backdrop-filter:blur(18px) saturate(1.25);touch-action:manipulation}.room-code-trigger:focus-visible{outline:2px solid #26ff00;outline-offset:3px}.room-code-dialog{position:fixed;top:var(--room-code-dialog-top, 50dvh);left:50%;width:min(352px,calc(100vw - 32px));max-width:none;max-height:calc(var(--room-code-dialog-height, 100dvh) - 32px);margin:0;padding:16px;overflow-x:hidden;overflow-y:auto;border:1px solid rgba(255,255,255,.12);border-radius:28px;corner-shape:squircle;background:#1e1e22d6;box-shadow:inset 0 .5px #ffffff2e,0 18px 46px #00000080;color:#fff;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35);transform:translate(-50%,-50%);animation:room-code-dialog-in .18s cubic-bezier(.2,.8,.2,1)}.room-code-dialog::backdrop{background:#00000085;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.room-code-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.room-code-dialog-header strong{font-size:16px;line-height:20px}.room-code-close{width:32px;height:32px;padding:0;display:grid;place-items:center;flex:none;border:0;border-radius:50%;background:#ffffff1a;color:inherit;cursor:pointer}.room-code-hint{margin:4px 0 0;color:#ffffff9e;font-size:13px;line-height:18px}.room-code-form{position:relative;margin-top:12px;border-radius:16px;corner-shape:squircle;cursor:text}.room-code-cells{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.room-code-cell{min-width:0;height:48px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);border-radius:14px;corner-shape:squircle;background:#ffffff17;color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:20px;font-weight:700;line-height:1;transition:border-color .14s ease,background-color .14s ease,transform .14s ease}.room-code-form:focus-within .room-code-cell[data-active]{border-color:#26ff00b8;background:#26ff001a;transform:translateY(-1px)}.room-code-cell[data-filled]{background:#ffffff21}.room-code-input{position:absolute;z-index:1;inset:0;width:100%;min-width:0;height:48px;padding:0;border:0;border-radius:16px;corner-shape:squircle;background:transparent;color:transparent;caret-color:transparent;font-size:16px;letter-spacing:0;opacity:.02}.room-code-input:focus,.room-code-input:focus-visible{border:0;outline:none;box-shadow:none}.room-code-form[aria-busy=true] .room-code-cell{opacity:.68}.room-code-error{margin-top:10px}.room-code-ongoing{margin-top:14px;display:grid;gap:8px}.room-code-round{min-height:48px;padding:8px 10px;display:flex;align-items:center;gap:8px;border-radius:14px;background:#ffffff12;color:inherit;text-decoration:none}.room-code-round strong,.room-code-round small{display:block}.room-code-round small{margin-top:1px;color:#ffffff9e;font-size:11px}.figma-friends-section{position:absolute;top:calc(var(--safe-top) + 94px);left:0;width:100%}.figma-friends-section h1{margin:0 0 11px 20px;color:#fff;font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:20px;font-weight:600;line-height:24px;letter-spacing:-.015em}.figma-friends-strip{display:flex;gap:12px;width:100%;padding:3px 16px;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;overscroll-behavior-x:contain;scrollbar-width:none;scroll-padding-inline:16px;touch-action:pan-x;cursor:grab;user-select:none;-webkit-overflow-scrolling:touch}.figma-friends-strip:active{cursor:grabbing}.figma-friends-strip::-webkit-scrollbar{display:none}.figma-friend-card{padding:0;border:0;background:transparent;width:88px;flex:none;display:flex;flex-direction:column;align-items:center;color:#fff;text-align:center;text-decoration:none;cursor:pointer}.figma-friend-photo{position:relative;width:88px;height:88px}.figma-friend-avatar{position:relative;display:grid;place-items:center;width:88px;height:88px;border-radius:20px;corner-shape:squircle;clip-path:path("M 23 0 C 8 0 0 8 0 23 L 0 65 C 0 80 8 88 23 88 L 65 88 C 80 88 88 80 88 65 L 88 23 C 88 8 80 0 65 0 Z");background:radial-gradient(circle at 35% 28%,rgba(255,255,255,.18),transparent 38%),var(--home-avatar-surface);color:#fff;font-size:42px;line-height:1}.figma-friend-card.playing .figma-friend-photo:before{position:absolute;inset:-3px;padding:2px;border:0;border-radius:23px;corner-shape:squircle;clip-path:path("M 26 0 C 9 0 0 9 0 26 L 0 68 C 0 85 9 94 26 94 L 68 94 C 85 94 94 85 94 68 L 94 26 C 94 9 85 0 68 0 Z");background:conic-gradient(from 215deg,#00c3e3,#6c5ce7,#e60012,#33d17a,#00c3e3);content:"";filter:drop-shadow(0 0 5px rgba(0,195,227,.48)) drop-shadow(0 0 8px rgba(108,92,231,.3));pointer-events:none;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask-composite:xor}.figma-friend-card.contact .figma-friend-avatar{position:relative;isolation:isolate;border-radius:50%;corner-shape:round;clip-path:none;background:radial-gradient(circle at 0% 10%,rgba(102,180,255,.09),transparent 42%),radial-gradient(circle at 100% 90%,rgba(217,130,255,.07),transparent 44%),linear-gradient(145deg,#181d25,#12171e);box-shadow:inset 0 0 22px #66b4ff09,0 8px 22px #0003}.figma-friend-card.contact .figma-friend-avatar:before{position:absolute;inset:0;padding:1px;border-radius:inherit;background:conic-gradient(from 210deg,#68c2ff5c,#ffffff1f,#e28bff57,#7bffe033,#68c2ff5c);content:"";opacity:.48;pointer-events:none;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-mask-composite:xor}.figma-friend-card strong{width:100%;margin-top:5px;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:14px;font-weight:650;line-height:17px;text-overflow:ellipsis;white-space:nowrap}.figma-friend-card small{width:100%;overflow:hidden;color:#ffffffb3;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:11px;font-weight:500;line-height:15px;text-overflow:ellipsis;white-space:nowrap}.figma-friend-card.playing small{display:flex;align-items:center;gap:3px;color:#26ff00;text-overflow:clip}.figma-friend-game-icon{width:10px;height:10px;flex:none;background-color:currentcolor;mask:url(/figma/home/play.svg) center / contain no-repeat;-webkit-mask:url(/figma/home/play.svg) center / contain no-repeat}.figma-friend-activity-viewport{min-width:0;overflow:hidden;flex:1}.figma-friend-activity-track{display:flex;width:max-content;animation:friend-activity-marquee 6s linear infinite}.figma-friend-activity-track>span{padding-right:8px}.figma-game-carousel{position:absolute;top:calc(var(--safe-top) + 242px);bottom:var(--tabbar-occupied);left:0;width:100%;height:auto;perspective:1100px;container:game-band / size;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.figma-game-carousel.dragging{cursor:grabbing}.home-load-error{position:absolute;top:calc(50% + 72px);left:50%;z-index:4;display:grid;width:min(300px,calc(100% - 48px));gap:10px;padding:22px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:24px;corner-shape:squircle;color:var(--foreground);text-align:center;background:color-mix(in srgb,var(--card) 88%,transparent);backdrop-filter:blur(22px) saturate(1.2);transform:translate(-50%,-50%)}.home-load-error span{color:var(--muted-foreground);font-size:14px}.home-load-error .btn{min-height:44px}.featured-game-card{--featured-card-inset: 16px;--featured-card-radius: 36px;--featured-card-path: path( "M 36 0 C 14 0 0 14 0 36 L 0 364 C 0 386 14 400 36 400 L 264 400 C 286 400 300 386 300 364 L 300 36 C 300 14 286 0 264 0 Z" );position:absolute;top:50%;left:calc(50% + 2px);width:300px;height:var(--featured-card-height);overflow:hidden;border-radius:var(--featured-card-radius);corner-shape:squircle;background:#181818;clip-path:var(--featured-card-path);filter:drop-shadow(0 18px 26px rgba(0,0,0,.38));opacity:var(--carousel-card-opacity, 1);transform:translate(calc(-50% + var(--carousel-card-x, 0px))) translateY(calc(-50% + var(--carousel-card-y, 0px))) rotate(var(--carousel-card-rotation, 0deg)) scale(var(--carousel-card-scale, 1));transform-origin:center;transition:transform .38s cubic-bezier(.2,.8,.2,1),opacity .26s ease,filter .26s ease;will-change:transform}.featured-game-edge{position:absolute;z-index:5;inset:0;width:100%;height:100%;display:none;overflow:visible;pointer-events:none}.featured-game-edge-standard{display:block}.featured-game-edge path{d:var(--featured-card-path);fill:none;stroke:#ffffff1a;stroke-width:2px;vector-effect:non-scaling-stroke}.featured-game-card.active{z-index:3}.featured-game-card.previous{z-index:1}.featured-game-card.next{z-index:2}.figma-game-carousel.dragging .featured-game-card{transition:none}.figma-game-carousel .featured-game-card.recycled{opacity:0;transition:none}.figma-game-carousel .featured-game-card.entering{animation:carousel-card-enter .32s cubic-bezier(.2,.8,.2,1) both}.game-carousel-indicator{position:absolute;z-index:5;top:calc(75% + var(--featured-card-quarter-height) + var(--featured-card-center-offset-half));left:50%;height:8px;display:flex;align-items:center;gap:7px;pointer-events:none;transform:translate(-50%,-50%)}.game-carousel-dot{width:6px;height:6px;flex:none;border-radius:50%;background:#fff;opacity:var(--carousel-dot-opacity, .3);transform:scale(var(--carousel-dot-scale, .82));transition:opacity .18s ease,transform .18s ease}.figma-game-carousel.dragging .game-carousel-dot{transition:none}.game-card-select{appearance:none;position:absolute;z-index:1;inset:0;width:100%;height:100%;padding:0;overflow:hidden;border:0;border-radius:inherit;corner-shape:inherit;background:transparent;cursor:pointer}.game-card-select:focus-visible{outline:2px solid #26ff00;outline-offset:-4px}.game-card-select:disabled{cursor:default}.featured-game-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.featured-game-glass{position:absolute;z-index:2;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;filter:blur(14px) saturate(1.16);mask-image:linear-gradient(180deg,transparent 0%,transparent 43%,rgba(0,0,0,.14) 55%,rgba(0,0,0,.72) 72%,#000 88%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,transparent 43%,rgba(0,0,0,.14) 55%,rgba(0,0,0,.72) 72%,#000 88%);pointer-events:none;transform:scale(1.09);transform-origin:center}.featured-game-details{position:absolute;z-index:4;right:0;bottom:0;left:0;height:172px;padding:14px 16px 16px;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;background:transparent}.featured-game-details:before{position:absolute;z-index:-1;inset:-86px -1px -1px;background-image:linear-gradient(180deg,#191d2200,#191d220a 25%,#191d2224 58%,#191d224d);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 30%,#000 54%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.5) 30%,#000 54%);content:"";pointer-events:none}.featured-game-details.preview{height:150px;padding:52px 18px 22px;justify-content:flex-end;pointer-events:none}.featured-game-copy{text-align:center;pointer-events:none}.featured-game-copy h1{margin:0;color:#fff;font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:24px;font-weight:750;line-height:28px;letter-spacing:-.025em}.featured-game-copy p{margin:2px 0 0;display:-webkit-box;max-height:2lh;overflow:hidden;color:#fffc;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:13px;font-weight:500;line-height:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.featured-game-meta{margin-top:7px;display:flex;align-items:center;justify-content:center;gap:16px;color:#fffc;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:13px;font-weight:550;line-height:16px}.featured-game-meta span{display:inline-flex;align-items:center;gap:4px}.featured-game-meta img{width:14px;height:14px}.featured-game-details.preview .featured-game-copy p,.featured-game-details.preview .featured-game-meta{display:none}.featured-game-play{appearance:none;margin-top:8px;width:100%;height:48px;flex:none;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:calc(var(--featured-card-radius) - var(--featured-card-inset));corner-shape:squircle;background:#26ff00;color:#000;font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:20px;font-weight:700;line-height:24px;cursor:pointer;touch-action:manipulation}.featured-game-play img{width:24px;height:24px}.featured-game-play:active:not(:disabled){transform:scale(.985)}.featured-game-play:disabled{cursor:default;opacity:.58}.featured-game-skeleton{position:absolute;top:50%;left:50%;width:300px;height:var(--featured-card-height);border-radius:36px;background:#171717;transform:translate(-50%,-50%);animation:pulse 1.2s ease-in-out infinite alternate}:root[data-theme=light] .home-screen,:root[data-theme=light] .figma-home-stage{background:#f2f3ef}:root[data-theme=light] .room-code-trigger{background:#ffffffbd;color:#161718}:root[data-theme=light] .room-code-dialog{border-color:#00000014;background:#fafaf8e0;color:#161718;box-shadow:inset 0 .5px #fffc,0 18px 46px #1f231f2e}:root[data-theme=light] .room-code-hint{color:#16171894}:root[data-theme=light] .room-code-round{border-color:#00000014;background:#0000000e}:root[data-theme=light] .room-code-cell{border-color:#0000001a;background:#0000000e;color:#161718}:root[data-theme=light] .room-code-form:focus-within .room-code-cell[data-active]{border-color:#1eb800b8;background:#26ff001f}:root[data-theme=light] .room-code-cell[data-filled]{background:#00000017}:root[data-theme=light] .room-code-round small{color:#16171894}:root[data-theme=light] .figma-friends-section h1,:root[data-theme=light] .figma-friend-card{color:#161718}:root[data-theme=light] .figma-friend-card small{color:#1617189e}:root[data-theme=light] .figma-friend-card.playing small{color:#178b00}:root[data-theme=light] .figma-friend-card.contact .figma-friend-avatar{background:radial-gradient(circle at 0% 10%,rgba(75,151,217,.1),transparent 42%),radial-gradient(circle at 100% 90%,rgba(173,99,208,.08),transparent 44%),linear-gradient(145deg,#f3f5f5,#e9edef);box-shadow:inset 0 0 22px #4b97d909,0 8px 22px #1c232a1a}:root[data-theme=light] .figma-friend-card.contact .figma-friend-avatar:before{opacity:.4}:root[data-theme=light] .game-carousel-dot{background:#161718}@keyframes pulse{0%{opacity:.55}to{opacity:.9}}@keyframes friend-activity-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes carousel-card-enter{0%{opacity:0;transform:translate(calc(-50% + var(--carousel-card-x, 0px) + var(--carousel-entry-x, 0px))) translateY(calc(-50% + var(--carousel-card-y, 0px) + 8px)) rotate(var(--carousel-card-rotation, 0deg)) scale(.91)}to{opacity:var(--carousel-card-opacity, 1);transform:translate(calc(-50% + var(--carousel-card-x, 0px))) translateY(calc(-50% + var(--carousel-card-y, 0px))) rotate(var(--carousel-card-rotation, 0deg)) scale(var(--carousel-card-scale, 1))}}@keyframes room-code-dialog-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px)) scale(.97)}}@media(prefers-reduced-motion:reduce){.featured-game-card,.featured-game-skeleton,.game-carousel-dot,.tabbar a{transition:none;animation:none}.figma-game-carousel .featured-game-card.entering,.figma-friend-activity-track{animation:none}}@container game-band (max-height: 434px){.figma-game-carousel>*{--featured-card-height: 300px;--featured-card-quarter-height: 75px}.featured-game-card{--featured-card-path: path( "M 36 0 C 14 0 0 14 0 36 L 0 264 C 0 286 14 300 36 300 L 264 300 C 286 300 300 286 300 264 L 300 36 C 300 14 286 0 264 0 Z" )}.featured-game-edge-standard{display:none}.featured-game-edge-compact{display:block}}@container game-band (min-height: 545px){.figma-game-carousel>*{--featured-card-height: 480px;--featured-card-quarter-height: 120px;--featured-card-center-offset-half: -5px}.featured-game-card{--featured-card-path: path( "M 36 0 C 14 0 0 14 0 36 L 0 444 C 0 466 14 480 36 480 L 264 480 C 286 480 300 466 300 444 L 300 36 C 300 14 286 0 264 0 Z" );top:calc(50% - 10px)}.featured-game-edge-standard{display:none}.featured-game-edge-tall{display:block}}@media(display-mode:browser){:root{--tabbar-height: 52px;--tabbar-link-height: 44px;--tabbar-icon-size: 28px;--tabbar-bottom: 12px}}.friends-page,.me-page{max-width:560px;padding-right:20px;padding-left:20px;background:var(--bg);color:var(--ink)}.page-heading{margin:10px 0 32px}.page-heading h1{margin:0 0 8px;font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:28px;line-height:1.15}.page-heading p,.page-heading small{display:block;margin:0;color:var(--muted-foreground)}.page-heading small{margin-top:6px}.friends-group+.friends-group{margin-top:32px}.friends-group h2{margin:0 0 14px;color:var(--ink);font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:18px}.friends-playing-grid{margin-inline:-20px;padding:4px 20px 8px;display:flex;gap:14px;overflow-x:auto;overflow-y:visible;scroll-padding-inline:20px;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}.friends-playing-grid::-webkit-scrollbar{display:none}.friends-offline-list{display:grid;gap:1px;overflow:hidden;border-radius:22px;background:var(--line)}.friend-row{min-width:0;padding:14px;display:flex;align-items:center;gap:12px;background:var(--surface)}.friends-playing-grid .friend-row{width:136px;flex:0 0 136px;flex-direction:column;align-items:stretch;text-align:center}.friend-row.playing{border-radius:22px}.friend-avatar-ring{width:60px;height:60px;flex:none;padding:3px;border-radius:19px;background:conic-gradient(from 220deg,#00c3e3,#7b61ff,#ff4554,#fc0,#00c3e3);box-shadow:0 0 14px #00c3e342}.friend-avatar{width:100%;height:100%;display:grid;place-items:center;border-radius:16px;background:var(--surface-2);font-size:30px}.friend-row.offline .friend-avatar-ring{padding:0;border-radius:50%;background:transparent;box-shadow:none}.friend-row.offline .friend-avatar{border:1px solid var(--avatar-border);border-radius:50%}.friend-row strong{display:block;overflow:hidden;color:var(--ink);text-overflow:ellipsis;white-space:nowrap}.friend-status{margin-top:3px;overflow:hidden;color:var(--muted-foreground);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.friend-row.playing .friend-status{color:#26ff00}.friend-row.playing .btn{margin-top:10px}.friends-empty{min-height:220px;padding:36px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted-foreground)}.friends-empty strong{color:var(--ink);font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:18px}.friends-empty span{max-width:290px}.friends-empty .btn{margin-top:10px;text-decoration:none}.profile-panel,.surface-group,.device-details,.match-history-row,.empty-row{border:1px solid var(--line);border-radius:22px;background:var(--surface)}.profile-panel{padding:16px}.me-section{margin-top:32px}.me-section h2{margin:0 0 12px;color:var(--ink);font-family:MuseoModerno,-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;font-size:18px}.match-history-list{display:grid;gap:10px}.match-history-row,.empty-row{padding:14px}.device-details{margin-top:12px;padding:14px;display:grid;gap:10px}.language-options{padding:2px;display:flex;gap:2px;border-radius:var(--radius-control);background:var(--surface-2)}.language-options button{min-height:36px;padding:7px 10px;border:0;border-radius:var(--radius-inset);background:transparent;color:var(--muted-foreground);cursor:pointer;font-weight:650}.language-options button.selected{background:#fff;color:#000}.home-app .tabbar{position:absolute}.viewport-row{align-items:flex-start;gap:10px;min-height:0;padding:10px 14px}.viewport-value{flex:none;max-width:62%;text-align:right;overflow-wrap:anywhere}.menu-list,.settings-card{padding:0;overflow:hidden}.menu-row,.settings-row{display:flex;align-items:center;gap:12px;min-height:64px;padding:12px 14px}.menu-row{color:inherit;text-decoration:none}.menu-row+.menu-row,.settings-row+.settings-row{border-top:1px solid var(--line)}.menu-row .grow,.settings-row .grow{flex:1;min-width:0}.settings-row>:last-child{flex:none;margin-left:auto}.menu-icon{width:40px;height:40px;display:grid;place-items:center;flex:none;border-radius:var(--radius-inset);background:var(--surface-2);color:var(--ink)}.menu-title,.menu-row .small{display:block}.setting-label{display:flex;align-items:center;gap:10px}.theme-options{display:flex;gap:2px;padding:2px;border-radius:var(--radius-control);background:var(--surface-2)}.theme-choice{min-height:40px;display:flex;align-items:center;gap:5px;padding:7px 9px;border:0;border-radius:var(--radius-inset);background:transparent;color:var(--muted-foreground);cursor:pointer;font-size:13px;font-weight:600}.theme-choice.selected{background:var(--ink);color:var(--bg)}.setting-switch{width:52px;min-width:52px;height:44px;padding:6px 0;display:grid;place-items:center;appearance:none;border:0;border-radius:999px;background:transparent;cursor:pointer;touch-action:manipulation}.setting-switch-track{position:relative;width:50px;height:30px;display:block;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);transition:background-color .18s cubic-bezier(.22,1,.36,1),border-color .18s cubic-bezier(.22,1,.36,1),transform .12s ease}.setting-switch-thumb{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--ink);box-shadow:0 1px 3px #00000047;transform:translate(0);transition:background-color .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1)}.setting-switch[aria-checked=true] .setting-switch-track{border-color:var(--lime);background:var(--lime)}.setting-switch[aria-checked=true] .setting-switch-thumb{background:var(--lime-ink);transform:translate(20px)}.language-options button:focus-visible,.theme-choice:focus-visible,.setting-switch:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.setting-switch:active .setting-switch-track{transform:scale(.96)}@media(max-width:359px){.friend-avatar:nth-child(4){display:none}.settings-row{gap:8px;padding-right:10px;padding-left:10px}.language-options button,.theme-choice{min-height:36px;padding-right:7px;padding-left:7px;font-size:12px}}@media(prefers-reduced-motion:reduce){.setting-switch-track,.setting-switch-thumb{transition:none}}.roundbar{position:absolute;top:calc(52px + var(--safe-top));left:12px;right:12px;display:flex;gap:6px;justify-content:flex-end;pointer-events:none;z-index:5}.roundbar .chip{position:relative;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:16px;background:#171e36d9;border:1.5px solid var(--line)}.roundbar .chip.you{box-shadow:0 0 0 2px var(--lime)}.roundbar .chip.off{opacity:.4}.roundbar .chip .crown{position:absolute;top:-9px;right:-4px;font-size:11px;font-style:normal}.roundbar .chip.watch{width:auto;padding:0 8px;border-radius:999px;font-size:12px;color:var(--muted-foreground)}.arcade-marquee .roundbar{position:static;gap:3px;justify-content:flex-start}.arcade-marquee .roundbar .chip{width:24px;height:24px;border-color:#ffffff47;font-size:13px;background:#0a2039}.game-status-banner{top:60px}.arcade-screen>.overlay,.arcade-screen>.banner{z-index:4}.arcade-screen>.game-status-banner{top:14px}.arcade-screen .overlay .count{font-family:Courier New,ui-monospace,monospace;font-size:clamp(64px,22vw,130px);text-shadow:3px 0 rgba(255,54,86,.78),-3px 0 rgba(50,238,255,.7),0 0 20px #fff}.arcade-screen .overlay .hint{max-width:min(82%,320px);border-radius:4px;color:#dffff6;background:#000807db;font-family:Courier New,ui-monospace,monospace}@media(max-width:349px)and (orientation:portrait){.arcade-marquee .roundbar{display:none}}.sheet-backdrop{position:fixed;inset:0;z-index:40;background:#080b1699;display:flex;align-items:flex-end;animation:fade-in .15s ease both}dialog.sheet-backdrop{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;color:inherit}dialog.sheet-backdrop::backdrop{background:transparent}.sheet{width:100%;max-width:560px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:20px 20px 0 0;padding:16px 16px calc(16px + var(--safe-bottom));display:grid;gap:12px;animation:sheet-up .22s cubic-bezier(.2,.9,.3,1) both}.sheet-title{font-size:16px;text-align:center}.sheet-game{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);cursor:pointer}.sheet-game:active{transform:scale(.98)}.sheet-game-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:22px;background:color-mix(in srgb,var(--game-accent) 24%,var(--surface));border:1px solid color-mix(in srgb,var(--game-accent) 45%,transparent)}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){.sheet,.sheet-backdrop,.onboarding .panel{animation:none}}@media(hover:hover)and (pointer:fine){.btn:not(:disabled):hover{border-color:var(--muted-foreground)}.btn.primary:not(:disabled):hover{border-color:var(--primary);filter:brightness(1.08)}.btn.ghost:not(:disabled):hover{background:var(--surface-2);border-color:var(--line)}.tabbar a:not(.active):hover{background:#0000003d}.menu-row:hover{background:var(--surface-2)}.sheet-game:not(:disabled):hover,.avatars button:hover{border-color:var(--muted-foreground)}.theme-choice:not(.selected):hover{color:var(--ink)}.room-code-trigger:hover{background:#404046d1}:root[data-theme=light] .room-code-trigger:hover{background:#ffffffeb}.room-code-close:hover{background:#ffffff2e}.room-code-round:hover{background:#ffffff1f}:root[data-theme=light] .room-code-round:hover{background:#00000017}.featured-game-play:not(:disabled):hover,.game-card-select:not(:disabled):hover{filter:brightness(1.07)}}@media(min-width:768px){html{scrollbar-gutter:stable}.screen{max-width:640px;padding-top:32px;padding-left:24px;padding-right:24px}.screen.home-screen{max-width:none;padding:0}.invite-banner{left:50%;right:auto;width:min(560px,calc(100vw - 48px));transform:translate(-50%)}.onboarding{align-items:center;padding:24px}.onboarding .panel{max-width:460px;border-bottom:1px solid var(--line);border-radius:24px;padding:28px 28px 24px}.sheet-backdrop{align-items:center}.sheet{max-width:460px;border-bottom:1px solid var(--line);border-radius:24px}.figma-home-stage{max-width:none}.figma-home-brand{top:24px;left:24px}.room-code-trigger{top:24px;right:24px}.figma-friends-section{top:104px}.figma-friends-section h1{margin-left:0;text-align:center}.figma-friends-strip{width:fit-content;max-width:100%;padding-inline:0;margin-inline:auto}.figma-game-carousel{top:268px}}.lobby-columns,.lobby-main,.lobby-side{display:contents}.invite .qr-collapsed{display:none}@media(min-width:960px){.screen.lobby{max-width:1000px}.lobby-columns{display:grid;grid-template-columns:minmax(0,1fr) 360px;column-gap:28px;align-items:start}.lobby-main,.lobby-side{display:grid;gap:10px;align-content:start}.lobby-side{position:sticky;top:24px}.lobby-side h2:first-child{margin-top:0}.lobby .cta{width:100%;max-width:640px;margin-inline:auto}.invite .qr{width:220px;height:220px}.invite .qr-collapsed{display:block}.invite .qr-toggle{display:none}}
