@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-vietnamese-wght-normal-BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-ext-wght-normal-CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/bricolage-grotesque-latin-wght-normal-DLoelf7F.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0e0b1f;--bg-raised: #17132e;--surface: rgba(255, 255, 255, .045);--surface-2: rgba(255, 255, 255, .075);--surface-3: rgba(255, 255, 255, .11);--line: rgba(255, 255, 255, .09);--line-2: rgba(255, 255, 255, .16);--ink: #f6f3ff;--muted: #b7b0da;--quiet: #938cbb;--sun: #ffd23f;--pink: #ff5fa2;--violet: #9d8cff;--teal: #3ee0d0;--red: #ff5a5f;--green: #4be38a;--display: "Bricolage Grotesque Variable", "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--body: "Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--radius: 22px;--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100dvh;font-family:var(--body);font-size:15px;line-height:1.5;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:-20vmax;z-index:-2;pointer-events:none;background:radial-gradient(40vmax 34vmax at 12% 8%,rgba(157,140,255,.28),transparent 60%),radial-gradient(34vmax 30vmax at 92% 4%,rgba(255,95,162,.2),transparent 60%),radial-gradient(40vmax 34vmax at 70% 100%,rgba(62,224,208,.14),transparent 60%),radial-gradient(30vmax 26vmax at 6% 92%,rgba(255,210,63,.1),transparent 60%)}body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}body.in-game{overflow:hidden}body.in-game:before,body.in-game:after{display:none}a{color:inherit}button,input{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--sun);outline-offset:3px}[hidden]{display:none!important}h1,h2,h3{font-family:var(--display);margin:0;letter-spacing:-.02em}#app{min-height:100dvh}.wordmark{display:inline-flex;align-items:center;gap:.32em;text-decoration:none;font-family:var(--display);font-weight:800;letter-spacing:-.04em;line-height:1}.wordmark-mark{display:inline-flex;gap:.09em;align-items:flex-end;height:.62em}.wordmark-mark i{width:.2em;height:.2em;border-radius:50%;background:var(--sun);animation:hop 2.6s var(--ease) infinite}.wordmark-mark i:nth-child(2){background:var(--pink);animation-delay:.18s}.wordmark-mark i:nth-child(3){background:var(--teal);animation-delay:.36s}@keyframes hop{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-.32em)}}.wordmark-text{transform:translateY(-.04em)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:44px;padding:10px 18px;border-radius:14px;border:1px solid var(--line-2);background:var(--surface-2);font-weight:600;letter-spacing:-.005em;white-space:nowrap;transition:transform .18s var(--ease),background .18s,border-color .18s,box-shadow .18s,opacity .18s}.btn:hover:not(:disabled){transform:translateY(-1px);background:var(--surface-3)}.btn:active:not(:disabled){transform:translateY(1px) scale(.98)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary:disabled{background:var(--surface-2);color:var(--muted);border-color:var(--line-2);box-shadow:none;opacity:1}.btn-primary{background:var(--sun);color:#1a1530;border-color:transparent;box-shadow:0 10px 30px -10px #ffd23fb3}.btn-primary:hover:not(:disabled){background:#ffdc66;box-shadow:0 14px 34px -10px #ffd23fcc}.btn-ghost{background:transparent}.btn-danger{background:#ff5a5f1f;border-color:#ff5a5f59;color:#ffb3b5}.btn-xl{min-height:56px;padding:14px 24px;font-size:17px;border-radius:17px}.btn-sm{min-height:36px;padding:6px 12px;font-size:13px;border-radius:11px}.btn-block{width:100%}.btn-ready{background:var(--surface-2);border-color:var(--line-2)}.btn-ready-on{background:#4be38a29;border-color:#4be38a8c;color:#b9ffd4}.icon-btn{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--muted);font-size:15px}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.icon-btn:disabled{opacity:.3;cursor:not-allowed}input:not([type]),input[type=text]{width:100%;min-height:48px;padding:12px 15px;border-radius:14px;border:1px solid var(--line-2);background:#0a08188c;font-size:16px;transition:border-color .18s,box-shadow .18s}input::placeholder{color:var(--quiet)}input:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 4px #9d8cff2e}.chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:12px;color:var(--muted)}.eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 12px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #4be38a2e}.lede{color:var(--muted);font-size:clamp(16px,1.6vw,19px);max-width:34em;margin:18px 0 0}.muted-note{color:var(--quiet);font-size:13px;margin:14px 0 0}.form-error,.banner-error{color:#ffb3b5;font-size:14px;margin:4px 0 0}.banner-error{margin:0 auto;max-width:1240px;padding:12px 20px}.quiet-link{color:var(--quiet);font-size:14px}.row-end{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.avatar{display:inline-grid;place-items:center;flex:none;border-radius:50%;background:var(--c);font-family:var(--display);font-weight:800;line-height:1;box-shadow:inset 0 -3px #0000002e}.avatar.ring{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--green)}.avatar{position:relative}.presence{position:absolute;right:-1px;bottom:-1px;width:30%;height:30%;min-width:9px;min-height:9px;border-radius:50%;border:2px solid var(--bg)}.presence.on{background:var(--green)}.presence.off{background:#6b6690}.is-away .avatar,.match-people .away .avatar{filter:grayscale(.7) brightness(.8);outline:2px dashed #6b6690;outline-offset:2px}.swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:30px;height:30px;border-radius:50%;border:0;background:var(--c);box-shadow:inset 0 -2px #0003;transition:transform .18s var(--ease),box-shadow .18s}.swatch:hover{transform:scale(1.12)}.swatch.on{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--c);transform:scale(1.06)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.card-head h3{font-size:19px}.card-head span{color:var(--quiet);font-size:13px}.emblem{flex:none;display:block}.home,.invite-page{max-width:1240px;margin:0 auto;padding:0 24px}.topnav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:clamp(12px,2.6svh,22px) 0}.topnav-links{display:flex;align-items:center;gap:22px;font-size:14px;color:var(--muted)}.topnav-links a{text-decoration:none}.topnav-links a:hover{color:var(--ink)}.pill-link{padding:8px 14px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line-2);color:var(--ink)!important}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,3vw,48px);align-items:center;min-height:calc(100svh - clamp(58px,7.6svh,82px));padding:clamp(8px,2svh,24px) 0 clamp(16px,4svh,48px)}.hero h1{font-size:clamp(34px,min(5.4vw,8.6svh),84px);line-height:.98;text-wrap:balance;font-weight:800;letter-spacing:-.045em}.hero h1 em,.invite h1 .code{font-style:normal;background:linear-gradient(100deg,var(--sun) 5%,var(--pink) 50%,var(--violet) 95%);-webkit-background-clip:text;background-clip:text;color:transparent}.start-card{margin-top:clamp(16px,3.4svh,30px);display:grid;gap:clamp(12px,2svh,18px);padding:clamp(14px,2.4svh,22px);border-radius:26px;background:linear-gradient(160deg,#ffffff14,#ffffff08);border:1px solid var(--line-2);box-shadow:0 30px 80px -40px #000c;max-width:520px}.profile-fields{display:grid;gap:14px}.field{display:grid;gap:8px}.field>span{font-size:13px;font-weight:600;color:var(--muted)}.name-row{display:flex;align-items:center;gap:12px}.code-form{display:flex;align-items:center;gap:10px;margin-top:clamp(10px,2svh,18px);max-width:520px;color:var(--quiet);font-size:14px}.code-form span{white-space:nowrap}.code-form input{min-height:44px;font-family:ui-monospace,SFMono-Regular,monospace;letter-spacing:.14em;text-transform:uppercase;font-size:15px}.hero-art{position:relative;aspect-ratio:1;width:min(100%,calc(100svh - 170px));justify-self:center;display:grid;place-items:center;container-type:inline-size}.orbit{position:absolute;inset:0;animation:spin 90s linear infinite}.orbit-tile{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px;display:grid;place-items:center;border-radius:20px;background:color-mix(in srgb,var(--c) 14%,var(--bg-raised));border:1px solid color-mix(in srgb,var(--c) 40%,transparent);box-shadow:0 12px 30px -12px color-mix(in srgb,var(--c) 60%,transparent);transform:rotate(calc(var(--i) / var(--n) * 360deg)) translate(42cqw) rotate(calc(var(--i) / var(--n) * -360deg))}.orbit-tile .emblem{animation:spin 90s linear infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}.party-mock{position:relative;width:min(330px,70%);padding:18px;border-radius:26px;background:linear-gradient(165deg,#241e46eb,#14102aeb);border:1px solid var(--line-2);box-shadow:0 40px 90px -30px #000000e6;transform:rotate(-3deg);animation:float 7s ease-in-out infinite}@keyframes float{50%{transform:rotate(-2deg) translateY(-10px)}}.party-mock-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;color:var(--quiet);font-weight:600}.mock-live{display:inline-flex;align-items:center;gap:6px;color:var(--green)}.mock-live i{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse-dot 1.6s ease-in-out infinite}@keyframes pulse-dot{50%{opacity:.35}}.mock-crew{display:flex;margin:16px 0}.mock-crew>span{margin-left:-8px;border-radius:50%;box-shadow:0 0 0 3px #1b1638}.mock-crew>span:first-child{margin-left:0}.mock-crew .talking{position:relative}.mock-crew .talking:after{content:"";position:absolute;inset:-7px;border-radius:50%;border:4px solid rgba(255,95,162,.55);opacity:0;animation:talk 1.4s ease-in-out infinite}@keyframes talk{50%{opacity:1}}.mock-playlist{display:grid;gap:8px}.mock-row{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:14px}.mock-row b{flex:1;font-weight:600}.mock-row small{color:var(--quiet)}.mock-row em{font-style:normal;font-size:11px;font-weight:700;color:#14112a;background:var(--c);padding:3px 8px;border-radius:999px}.mock-row.now{border-color:color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 10%,transparent)}.section{padding:70px 0}.home>.section{content-visibility:auto;contain-intrinsic-size:auto 1400px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px;flex-wrap:wrap}.section-head h2{font-size:clamp(32px,4vw,52px);font-weight:800;letter-spacing:-.035em}.section-head p{color:var(--muted);max-width:30em;margin:0}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;list-style:none;margin:0;padding:0}.game-card{position:relative;display:grid;grid-template-rows:auto 1fr auto;gap:14px;padding:20px;border-radius:var(--radius);text-decoration:none;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--c) 15%,transparent),#ffffff06 55%);border:1px solid var(--line);transition:transform .25s var(--ease),border-color .25s,box-shadow .25s}.game-card:after{content:"";position:absolute;width:180px;height:180px;right:-60px;top:-60px;border-radius:50%;background:var(--c);opacity:.12;filter:blur(30px);transition:opacity .25s}.game-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--c) 55%,transparent);box-shadow:0 24px 50px -24px color-mix(in srgb,var(--c) 70%,transparent)}.game-card:hover:after{opacity:.3}.game-card-art{width:78px;height:78px;display:grid;place-items:center;border-radius:22px;background:color-mix(in srgb,var(--c) 14%,var(--bg));border:1px solid color-mix(in srgb,var(--c) 35%,transparent)}.game-card-body h3{font-size:24px;font-weight:800;letter-spacing:-.02em}.game-card-link{color:inherit;text-decoration:none}.game-card-link:before{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}.game-card-link:focus-visible{outline:none}.game-card:has(.game-card-link:focus-visible){outline:2px solid var(--sun);outline-offset:3px}.game-card-genre{display:block;margin:2px 0 6px;font-size:12px;font-weight:600;letter-spacing:.04em;color:color-mix(in srgb,var(--c) 70%,var(--ink))}.game-card-about{position:relative;z-index:2;display:block;width:max-content;margin-top:8px;font-size:13px;color:var(--muted);text-underline-offset:3px}.game-card-about:hover{color:var(--ink)}.game-card-body>span{color:var(--muted);font-size:14px}.game-card-meta{display:flex;justify-content:space-between;align-items:center}.game-card-go{font-size:13px;font-weight:600;color:var(--c)}.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.steps li{padding:26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.step-n{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:15px;font-family:var(--display);font-weight:800;font-size:22px;color:#14112a;background:var(--sun);margin-bottom:18px}.steps li:nth-child(2) .step-n{background:var(--pink)}.steps li:nth-child(3) .step-n{background:var(--teal)}.steps h3{font-size:22px;margin-bottom:6px}.steps p{color:var(--muted);margin:0}.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.faq-item{padding:24px 26px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line)}.faq-item h3{font-size:19px;margin-bottom:8px;letter-spacing:-.015em}.faq-item p{color:var(--muted);margin:0}.footer a{color:var(--muted);text-underline-offset:3px}.footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:40px 0 50px;margin-top:30px;border-top:1px solid var(--line);color:var(--quiet);font-size:13px;flex-wrap:wrap}.invite{max-width:620px;margin:40px auto 80px}.invite h1{font-size:clamp(38px,6vw,64px);font-weight:800;letter-spacing:-.04em;line-height:1.02}.invite h1 .code{font-family:var(--display)}.invite .quiet-link{display:inline-block;margin-top:22px}.loading,.problem{min-height:100dvh;display:grid;place-items:center;align-content:center;gap:16px;text-align:center;padding:24px}.loading .wordmark{animation:breathe 1.6s ease-in-out infinite}@keyframes breathe{50%{opacity:.5}}.problem h1{font-size:clamp(30px,5vw,48px)}.problem p{color:var(--muted);max-width:30em;margin:0 0 8px}.lounge-page{min-height:100dvh;padding-bottom:120px}.lounge-top{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:16px;padding:14px max(24px,calc((100vw - 1240px)/2));background:#0e0b1fb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.lounge-top .conn{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--quiet)}.lounge-top .conn:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sun)}.lounge-top .conn.on:before{background:var(--green);box-shadow:0 0 0 4px #4be38a29}.lounge{max-width:1240px;margin:0 auto;padding:28px 24px;display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;align-items:start}.lounge-side{display:grid;gap:16px;position:sticky;top:86px}.lounge-main{display:grid;gap:18px;min-width:0}.invite-card{display:flex;gap:16px;align-items:center;background:linear-gradient(150deg,#ffd23f1f,#ff5fa214 60%,#ffffff08);border-color:#ffd23f38}.invite-card-text{flex:1;min-width:0}.party-code{display:flex;gap:8px;font-family:ui-monospace,SFMono-Regular,monospace;font-weight:700;font-size:26px;letter-spacing:.08em}.party-code span:nth-child(2){color:var(--sun)}.invite-link{font-size:12px;color:var(--quiet);margin:4px 0 14px;overflow-wrap:anywhere}.qr{flex:none;border-radius:12px}.crew-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.crew-list li{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:9px 10px;border-radius:16px;transition:background .2s}.crew-list li:hover{background:var(--surface)}.crew-list li.is-away .crew-name b{color:var(--muted)}.crew-list .crew-status.offline,.offline-count{color:#ffb36b;font-weight:600}.offline-tag{font-style:normal;font-size:11px;color:#ffb36b}.icon-btn.remove:hover:not(:disabled){color:#ffb3b5;background:#ff5a5f1f}.crew-list li.is-removing{background:#ff5a5f14;border:1px solid rgba(255,90,95,.25)}.crew-confirm{display:flex;gap:6px;grid-column:1 / -1;justify-content:flex-end}.crew-list li.is-removing{grid-template-columns:auto 1fr;row-gap:8px}.match-people .away{color:var(--muted)}.crew-name{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.crew-name b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-name em{font-style:normal;font-size:11px;color:var(--quiet)}.crown{font-size:11px;font-weight:700;color:var(--sun)}.crew-status{font-size:12px;color:var(--quiet)}.is-ready .crew-status{color:var(--green);font-weight:600}.crew-edit{margin-top:12px;padding:14px;border-radius:16px;background:var(--surface-2);display:grid;gap:12px}.panel-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.panel-head h2{font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.035em}.panel-head .eyebrow{margin-bottom:6px}.panel-note{color:var(--quiet);font-size:13px;font-weight:400}.playlist{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:pl}.playlist li{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:18px;background:linear-gradient(90deg,color-mix(in srgb,var(--c) 12%,transparent),var(--surface) 55%);border:1px solid var(--line);animation:pop-in .35s var(--ease) both}@keyframes pop-in{0%{opacity:0;transform:translateY(6px) scale(.98)}}.pl-index{font-family:ui-monospace,monospace;font-size:12px;color:var(--quiet);width:20px}.pl-body{flex:1;min-width:0}.pl-body b{display:block;font-family:var(--display);font-size:19px;font-weight:700}.pl-body small{color:var(--quiet);font-size:12px}.warn{color:#ffcf7a}.pl-tools{display:flex;gap:2px}.shelf h3{font-size:18px;margin:18px 0 12px}.shelf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.shelf-item{display:flex;align-items:center;gap:12px;padding:12px;text-align:left;border-radius:16px;background:var(--surface);border:1px solid var(--line);transition:transform .18s var(--ease),border-color .18s,background .18s}.shelf-item:hover:not(:disabled){transform:translateY(-2px);border-color:color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 9%,transparent)}.shelf-item:disabled{opacity:.45;cursor:not-allowed}.shelf-item>span:nth-child(2){flex:1;min-width:0}.shelf-item b{display:block;font-weight:600}.shelf-item small{color:var(--quiet);font-size:12px}.shelf-item.short small{color:#ffcf7a}.shelf-add{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--surface-2);font-size:18px;color:var(--c)}.dock{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:14px 24px calc(14px + env(safe-area-inset-bottom));background:#0e0b1fdb;border-top:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.dock-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:12px;justify-content:flex-end}.dock-hint{margin-right:auto;color:var(--muted);font-size:14px}.round-head{display:grid;gap:10px}.round-head .eyebrow{margin:0}.round-title{display:flex;align-items:center;gap:14px}.round-title h2{font-size:clamp(32px,4vw,48px);font-weight:800;letter-spacing:-.035em}.track{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 0;padding:0}.track li{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--surface);border:1px solid var(--line);opacity:.55}.track li.done{opacity:.9}.track li.now{opacity:1;border-color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 18%,transparent)}.round-card{display:grid;gap:6px;padding:24px}.round-card strong{font-family:var(--display);font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.03em}.round-card span{color:var(--muted)}.round-card .btn{justify-self:start;margin-top:10px}.round-card.mine{border-color:#ffd23f73;background:linear-gradient(150deg,rgba(255,210,63,.14),var(--surface))}.round-card.mine strong{color:var(--sun)}.matches{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.match.yours{border-color:#9d8cff73}.match-top{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--quiet);margin-bottom:10px}.match-top .state.done{color:var(--ink);font-weight:600}.match-people{display:flex;flex-wrap:wrap;gap:10px}.match-people>span{display:inline-flex;align-items:center;gap:7px;font-size:14px}.match-people .won{font-weight:700;color:var(--sun)}.standings table{width:100%;border-collapse:collapse;font-size:14px}.standings th{text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--quiet);font-weight:600;padding:0 8px 10px}.standings td{padding:10px 8px;border-top:1px solid var(--line)}.standings .rank{font-family:ui-monospace,monospace;color:var(--quiet);width:28px}.standings .pts{font-family:var(--display);font-size:20px;font-weight:800}.standings tr.me td{background:#9d8cff14}.standings .who{display:inline-flex;align-items:center;gap:10px}.standings em{font-style:normal;color:var(--quiet);font-size:12px}.podium-wrap{text-align:center;padding:10px 0 6px}.podium-title{font-size:clamp(30px,4.4vw,54px);font-weight:800;letter-spacing:-.04em;background:linear-gradient(100deg,var(--sun),var(--pink) 60%,var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}.podium{display:flex;justify-content:center;align-items:end;gap:14px;margin-top:28px}.podium-step{display:grid;justify-items:center;gap:8px;width:min(150px,30%);animation:rise .7s var(--ease) both}.podium-step.p1{animation-delay:.25s}.podium-step.p3{animation-delay:.12s}@keyframes rise{0%{opacity:0;transform:translateY(30px)}}.podium-step b{font-size:14px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-block{width:100%;display:grid;place-items:center;align-content:center;border-radius:18px 18px 6px 6px;background:linear-gradient(180deg,color-mix(in srgb,var(--c) 40%,transparent),color-mix(in srgb,var(--c) 8%,transparent));border:1px solid color-mix(in srgb,var(--c) 50%,transparent)}.p1 .podium-block{height:140px}.p2 .podium-block{height:100px}.p3 .podium-block{height:74px}.place{font-family:var(--display);font-size:40px;font-weight:800;line-height:1}.podium-block small{color:var(--muted)}.stage{position:fixed;inset:0;display:grid;grid-template-rows:56px 1fr;background:var(--bg)}.stage-bar{display:flex;align-items:center;gap:14px;padding:0 14px;background:#0e0b1feb;border-bottom:1px solid var(--line);min-width:0}.stage-logo{display:inline-flex;gap:4px}.stage-logo i{width:8px;height:8px;border-radius:50%;background:var(--sun)}.stage-logo i:nth-child(2){background:var(--pink)}.stage-logo i:nth-child(3){background:var(--teal)}.stage-game{display:inline-flex;align-items:center;gap:8px;min-width:0}.stage-game b{font-family:var(--display);font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage-dots{list-style:none;display:flex;gap:5px;margin:0;padding:0}.stage-dots li{width:8px;height:8px;border-radius:50%;background:var(--surface-3)}.stage-dots li.done{background:color-mix(in srgb,var(--c) 60%,transparent)}.stage-dots li.now{background:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 30%,transparent)}.stage-result{display:inline-flex;align-items:baseline;gap:10px;padding:6px 12px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line-2);min-width:0;animation:pop-in .35s var(--ease) both}.stage-result b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-result small{color:var(--muted);white-space:nowrap}.stage-result.mine{border-color:#ffd23f80;background:#ffd23f1f}.stage-result.mine b{color:var(--sun)}.stage-party{margin-left:auto}.stage-note{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-radius:12px;border:1px solid rgba(255,179,107,.4);background:#ffb36b1a;color:#ffcf9e;font:inherit;font-size:13px;animation:pop-in .35s var(--ease) both}button.stage-note{cursor:pointer}.stage-frame{width:100%;height:100%;border:0;display:block;background:#fff}.announce{position:fixed;top:92px;left:50%;z-index:30;transform:translate(-50%);min-width:min(440px,calc(100% - 32px));max-width:calc(100% - 32px);padding:24px 32px;border-radius:26px;text-align:center;pointer-events:none;background:linear-gradient(160deg,#241e46f7,#14102af7);border:1px solid var(--line-2);box-shadow:0 40px 90px -30px #000000e6;animation:announce 5.5s var(--ease) both}.announce small{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--quiet);font-weight:600}.announce strong{display:block;margin-top:6px;font-family:var(--display);font-size:clamp(28px,5vw,44px);font-weight:800;letter-spacing:-.03em}.announce.mine strong{background:linear-gradient(100deg,var(--sun),var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}@keyframes announce{0%{opacity:0;transform:translate(-50%,-16px) scale(.94)}8%,88%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-6px)}}.sheet-backdrop{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:16px;background:#05040e99;backdrop-filter:blur(6px);animation:fade .2s both}@keyframes fade{0%{opacity:0}}.sheet{width:min(520px,100%);max-height:calc(100dvh - 32px);overflow:auto;padding:22px;border-radius:24px;background:var(--bg-raised);border:1px solid var(--line-2);box-shadow:0 40px 90px -30px #000;animation:pop-in .3s var(--ease) both}.sheet-matches{display:grid;gap:8px;margin:14px 0}.sheet-match{display:grid;grid-template-columns:auto 1fr auto;gap:12px;padding:10px 12px;border-radius:12px;background:var(--surface);font-size:13px}.sheet-match>span:first-child{color:var(--quiet)}.sheet-standings{list-style:none;margin:0;padding:0;display:grid;gap:4px}.sheet-standings li{display:grid;grid-template-columns:24px auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:12px}.sheet-standings li.me{background:#9d8cff1a}.sheet-standings .rank{color:var(--quiet);font-family:ui-monospace,monospace;font-size:12px}.sheet-standings b{font-family:var(--display);font-size:18px}.voice-bubble{position:fixed;left:0;top:0;z-index:50;width:60px;height:60px;padding:0;border-radius:50%;border:0;touch-action:none;user-select:none;-webkit-user-select:none;display:grid;place-items:center;color:var(--ink);background:radial-gradient(circle at 35% 30%,#3a3170,#1c1740 70%);box-shadow:0 0 0 1px #ffffff24,0 14px 34px -10px #000c;cursor:grab;will-change:transform}.voice-bubble-core{display:grid;place-items:center;transition:transform .25s var(--ease)}.voice-bubble:hover .voice-bubble-core{transform:scale(1.08)}.voice-bubble.dragging{cursor:grabbing}.voice-bubble.dragging .voice-bubble-core{transform:scale(1.1)}.voice-bubble.dragging{box-shadow:0 0 0 1px #fff3,0 28px 50px -12px #000000e6}.voice-bubble.live{color:#1a1530;background:radial-gradient(circle at 35% 30%,#ffe27a,var(--sun) 70%);box-shadow:0 0 0 1px #ffffff40,0 14px 34px -10px #ffd23f99}.voice-bubble.muted{color:#fff;background:radial-gradient(circle at 35% 30%,#ff8a8e,var(--red) 70%)}.voice-bubble:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid transparent;transition:border-color .2s;pointer-events:none}.voice-bubble.speaking:before{border-color:var(--green);animation:speak 1.1s ease-in-out infinite}@keyframes speak{50%{transform:scale(1.12);opacity:.4}}.voice-bubble.open:before{border-color:#ffffff59}.voice-bubble-count{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 6px;display:grid;place-items:center;border-radius:999px;font-size:12px;font-weight:700;color:#14112a;background:var(--green);box-shadow:0 0 0 3px var(--bg)}.voice-bubble-spinner{position:absolute;inset:-4px;border-radius:50%;border:3px solid transparent;border-top-color:var(--sun);animation:spin 1s linear infinite}.voice-panel{position:fixed;z-index:49;width:min(310px,calc(100vw - 16px));padding:16px;border-radius:24px;background:#17132ef5;border:1px solid var(--line-2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 40px 90px -30px #000;animation:panel-in .28s var(--ease) both}@keyframes panel-in{0%{opacity:0;transform:scale(.7)}}.voice-panel header{display:grid;gap:2px;margin-bottom:10px}.voice-panel header strong{font-family:var(--display);font-size:19px}.voice-panel header span{font-size:12px;color:var(--quiet)}.voice-people{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:min(260px,45dvh);overflow-y:auto;overscroll-behavior:contain}.voice-people li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:6px 8px;border-radius:14px;opacity:.55}.voice-people li.in{opacity:1}.voice-people li .avatar{transition:box-shadow .2s}.voice-people li.speaking .avatar{box-shadow:0 0 0 3px #17132e,0 0 0 5px var(--green)}.voice-person-name{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-person-name em{font-style:normal;color:var(--quiet);font-weight:400}.voice-person-status{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--quiet)}.voice-person-status svg{width:13px;height:13px;color:var(--red)}.voice-message{margin:10px 0 0;font-size:13px;color:#ffcf7a}.voice-actions{display:flex;gap:8px;margin-top:14px}.voice-actions .btn-primary{flex:1}.voice-actions .btn-danger{margin-left:auto}.btn-round{width:46px;padding:0;border-radius:50%}.btn-round.on{background:#ff5a5f2e;border-color:#ff5a5f80;color:#ffb3b5}.start-inline{max-width:560px}.start-inline .name-row{flex-wrap:wrap}.start-inline .name-row input{flex:1 1 180px;min-width:0}.start-inline .name-row .btn-xl{flex:none;min-height:50px;padding-inline:22px;font-size:16px}.hero .lede{font-size:clamp(15px,min(1.4vw,2.4svh),19px);margin-top:clamp(10px,2.2svh,22px);max-width:34em}.hero .eyebrow{margin-bottom:clamp(8px,1.6svh,16px)}@media(max-width:1000px){.hero{grid-template-columns:1fr;padding-top:10px;min-height:0}.hero-art{max-width:460px;width:100%;margin:0 auto}.hero h1{font-size:clamp(36px,min(8vw,7svh),72px)}.lounge{grid-template-columns:1fr}.lounge-side{position:static}.steps,.faq-list{grid-template-columns:1fr}}@media(max-width:640px){.home,.invite-page{padding:0 16px}.topnav-links a:not(.pill-link):not(.lang-link){display:none}.hero h1{font-size:clamp(34px,min(11vw,6.2svh),52px)}.start-inline .name-row .btn-xl{flex:1 1 100%}.start-card .swatches{gap:6px}.start-card .swatch{width:25px;height:25px}.start-card{padding:16px;border-radius:22px}.hero-art{max-width:340px}.orbit-tile{width:48px;height:48px;margin:-24px;border-radius:15px}.orbit-tile .emblem{width:26px;height:26px}.section{padding:46px 0}.code-form{flex-wrap:wrap}.code-form span{width:100%}.code-form input{flex:1;min-width:0;width:auto}.game-grid{gap:10px}.game-card{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:6px 14px;padding:14px}.game-card-art{width:56px;height:56px;border-radius:16px;grid-row:span 2}.game-card-art .emblem{width:38px;height:38px}.game-card-body h3{font-size:19px}.game-card-genre{margin-bottom:2px}.game-card-body>span{font-size:13px}.lounge-page{padding-bottom:140px}.lounge{padding:18px 16px}.lounge-top{padding:12px 16px;gap:10px}.invite-card .qr{display:none}.dock{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.dock-inner{flex-wrap:wrap}.dock-hint{width:100%;font-size:13px;text-align:center}.dock .btn-xl{flex:1;min-height:52px;font-size:16px;padding:12px 14px}.crew-list li{grid-template-columns:auto 1fr auto}.crew-status{display:none}.crew-status.offline{display:block;grid-column:2;grid-row:2;margin-top:-10px;font-size:11px}.crew-list li.is-removing .crew-confirm{grid-column:1 / -1}.standings th:nth-child(5),.standings td:nth-child(5),.standings th:nth-child(6),.standings td:nth-child(6){display:none}.stage{grid-template-rows:50px 1fr}.stage-bar{gap:10px;padding:0 10px}.stage-dots,.stage-logo{display:none}.stage-result{flex-direction:column;gap:0;padding:4px 9px}.stage-result small{font-size:10px}.stage-result:not([hidden])~.stage-party{margin-left:0}.stage:has(.stage-result) .stage-game b{display:none}.announce{top:70px;padding:18px 20px}}@media(max-height:520px)and (min-width:640px){.hero{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);min-height:calc(100svh - 58px)}.hero .lede,.hero .eyebrow{display:none}.hero h1{font-size:clamp(28px,4.4vw,44px)}.hero-art{width:min(100%,calc(100svh - 90px))}.party-mock{display:none}.start-card{margin-top:12px;padding:12px 14px;gap:10px}.start-inline .name-row .btn-xl{min-height:44px;flex:none}.swatch{width:24px;height:24px}.start-card .field>span{display:none}.invite-card .qr{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}.bot-tag{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;background:#3ee0d024;color:var(--teal);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-left:6px}.crew-list li.is-bot .crew-status.bot-skill{color:var(--teal);font-weight:600}.crew-list li.is-bot .avatar{border-radius:14px}.crew-list li .bot-edit{grid-column:1 / -1;margin-top:4px}.crew-actions{display:flex;gap:2px}.add-bot{width:100%;margin-top:8px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:9px 12px 9px 10px;border-radius:16px;border:1px dashed var(--line-2);background:transparent;color:var(--ink);text-align:left;cursor:pointer;transition:background .2s,border-color .2s,transform .2s var(--ease)}.add-bot:hover:not(:disabled){background:#3ee0d012;border-color:#3ee0d080;transform:translateY(-1px)}.add-bot:disabled{opacity:.5;cursor:not-allowed}.add-bot .avatar{border-radius:12px;color:var(--teal)}.add-bot span{display:grid;gap:2px;min-width:0}.add-bot b{font-weight:700;font-size:14px}.add-bot small{color:var(--quiet);font-size:12px}.add-bot i{font-style:normal;font-size:22px;color:var(--teal);width:30px;text-align:center}.skill-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border-radius:12px;background:#00000040}.skill-pick button{border:0;border-radius:9px;padding:8px 0;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:13px;cursor:pointer;transition:background .2s,color .2s}.skill-pick button.on{background:var(--teal);color:#0e0b1f}.who .bot-tag,.match-people .bot-tag{margin-left:4px}.tag-skill{display:none}.tag-skill:before{content:"·";margin:0 .35em}@media(max-width:640px){.tag-skill{display:inline}}.voice-tip{margin:0;padding:0 16px 4px;font-size:12px;color:var(--quiet)}@media(pointer:coarse){.game-card-link{display:inline-block;padding:6px 0;margin:-6px 0}.game-card-about{padding:11px 0;margin:-3px 0 -11px}.icon-btn{width:40px;height:40px}.btn-sm{min-height:40px}.swatches,.start-card .swatches{gap:4px}.swatch,.start-card .swatch{width:28px;height:28px;position:relative}.swatch:after{content:"";position:absolute;inset:-6px;border-radius:50%}.skill-pick button{padding:11px 0}}.sheet-stuck{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px}@media(max-width:640px),(max-height:520px){body.in-game .voice-bubble{width:48px;height:48px;margin:6px}body.in-game .voice-bubble:not(.open):not(.speaking):not(.dragging){opacity:.78}}
