@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-cyrillic-DqGufNeO.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/inter-latin-Dx4kXJAl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff8ec;--surface:#fff;--chip:#ffe7c2;--line:#f3dfc4;--fg:#3b2a1e;--muted:#7a6150;--accent:#ff8a3d;--on-accent:#2b1608;--accent-edge:#c4561b;--accent-ink:#a8460f;--sun:#ffd84d;--on-sun:var(--fg);--ok:#1e9e6a;--ok-ink:#0e6b47;--danger:#b3261e;--field-line:#9a7f6a;--motion-fast:80ms;--motion-base:.2s;--motion-slow:.6s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--r-card:22px;--r-btn:18px;--r-chip:14px;background:var(--bg);color:var(--fg);line-height:1.5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1f1915;--surface:#2e2520;--chip:#4a3a2e;--line:#43352b;--fg:#fbebdd;--muted:#cdb5a2;--accent:#ff9a55;--on-accent:#2b1608;--accent-edge:#a9481a;--accent-ink:#ffb27a;--sun:#f2c94c;--on-sun:var(--on-accent);--ok:#4ed69a;--ok-ink:#4ed69a;--danger:#ff8a80;--field-line:#8f7b6c}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#1f1915;--surface:#2e2520;--chip:#4a3a2e;--line:#43352b;--fg:#fbebdd;--muted:#cdb5a2;--accent:#ff9a55;--on-accent:#2b1608;--accent-edge:#a9481a;--accent-ink:#ffb27a;--sun:#f2c94c;--on-sun:var(--on-accent);--ok:#4ed69a;--ok-ink:#4ed69a;--danger:#ff8a80;--field-line:#8f7b6c}*,:before,:after{box-sizing:border-box}select option{color:var(--fg);background:var(--surface)}body{min-height:100dvh;color:var(--fg);background:var(--bg);margin:0;font-family:Inter,system-ui,sans-serif;font-size:1rem}button,input,select,textarea{font-family:inherit}.page,.status{max-width:40rem;margin:0 auto;padding:1rem}.status{color:var(--muted)}h1{margin:0 0 1rem;font-size:1.625rem;font-weight:700}a{color:var(--accent-ink)}.muted{color:var(--muted)}.error{color:var(--danger);margin:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent-ink);outline-offset:2px}.btn{min-height:2.75rem;font:inherit;color:var(--fg);text-align:center;background:var(--chip);border-radius:var(--r-btn);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out), box-shadow var(--motion-fast) var(--ease-out), filter var(--motion-fast) var(--ease-out);border:0;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1.125rem;font-size:1rem;font-weight:700;line-height:1.5rem;text-decoration:none;display:inline-flex}.btn.primary{color:var(--on-accent);background:var(--accent);box-shadow:0 5px 0 var(--accent-edge)}.btn.ghost{color:var(--accent-ink);background:0 0}.btn.danger{color:var(--danger);background:var(--surface);border:2px solid var(--danger)}.btn.big{min-height:3.25rem;padding:.75rem 1.5rem;font-size:1.125rem}.btn.icon{width:2.75rem;padding:0}.btn:not(:disabled):active{filter:brightness(.96);transform:translateY(.25rem)}.btn.primary:not(:disabled):active{box-shadow:0 1px 0 var(--accent-edge)}.btn:disabled{opacity:.5;cursor:not-allowed}:root[data-motion=reduced] .btn{transition:none}:root[data-motion=reduced] .btn:not(:disabled):active{filter:brightness(.9);transform:none}:root[data-motion=reduced] .btn.primary:not(:disabled):active{box-shadow:0 5px 0 var(--accent-edge)}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .btn{transition:none}:root:not([data-motion=full]) .btn:not(:disabled):active{filter:brightness(.9);transform:none}:root:not([data-motion=full]) .btn.primary:not(:disabled):active{box-shadow:0 5px 0 var(--accent-edge)}}.card{background:var(--surface);border:2px solid var(--line);border-radius:var(--r-card);box-shadow:0 4px 0 var(--line);padding:1rem}.chip{background:var(--chip);border-radius:var(--r-chip);align-items:center;gap:.375rem;padding:.25rem .75rem;font-weight:600;display:inline-flex}.badge{color:var(--fg);background:var(--chip);border-radius:999px;align-items:center;gap:.25rem;padding:.125rem .625rem;font-size:.8125rem;font-weight:700;line-height:1.25rem;display:inline-flex}.badge.sun{color:var(--on-sun);background:var(--sun)}.member-name{flex-wrap:wrap;align-items:center;gap:.25rem;display:inline-flex}.role-mark{cursor:help;display:inline-flex}.section-title{color:var(--muted);align-items:center;gap:.5rem;margin:0;font-size:1rem;font-weight:700;display:flex}.field{width:100%;min-height:2.75rem;font:inherit;color:var(--fg);background:var(--surface);border:2px solid var(--field-line);border-radius:var(--r-chip);padding:.5rem .75rem;font-size:1rem}.field::placeholder{color:var(--muted)}.field:disabled{opacity:.6;cursor:not-allowed}.segmented{border:0;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;display:flex}.segmented label{background:var(--chip);border-radius:var(--r-chip);cursor:pointer;border:2px solid #0000;align-items:center;gap:.375rem;min-height:2.75rem;padding:.5rem 1rem;font-weight:700;display:inline-flex;position:relative}.segmented input{cursor:pointer;opacity:0;border-radius:inherit;width:100%;height:100%;margin:0;position:absolute;inset:0}.segmented label:has(input:checked){color:var(--accent-ink);background:var(--surface);border-color:var(--accent-ink)}.segmented label:has(input:focus-visible){outline:3px solid var(--accent-ink);outline-offset:2px}.check{appearance:none;background:var(--surface) center / 1rem no-repeat;border:2px solid var(--field-line);cursor:pointer;border-radius:8px;flex:none;width:1.5rem;height:1.5rem;margin:0}.check:checked{background-color:var(--accent);border-color:var(--accent-edge);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%232b1608' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.6'/%3E%3C/svg%3E")}.check:disabled{opacity:.5;cursor:not-allowed}.sun-card,.notice{color:var(--on-sun);background:var(--sun);border-color:var(--sun)}.sun-card .section-title,.sun-card .muted,.sun-card .status-ok,.sun-card .error{color:var(--on-sun)}.sun-card .status-ok,.sun-card .error{font-weight:600}.notice{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:0;font-weight:600;display:flex}.notice a{color:inherit}.notice .btn{background:var(--surface);margin-inline-start:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.status-ok{color:var(--ok-ink);margin:0}.emoji{vertical-align:-.15em;display:inline-block}:root{--float:0 8px 24px #00000038}.frame.has-tabbar{padding-bottom:calc(4rem + env(safe-area-inset-bottom))}.app-header{background:var(--surface);border-bottom:2px solid var(--line);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}.brand{min-height:2.75rem;color:var(--fg);align-items:center;gap:.5rem;margin-inline-end:auto;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.avatar-button{background:var(--chip);cursor:pointer;border:0;border-radius:999px;flex:none;place-items:center;width:2.75rem;height:2.75rem;padding:0;display:grid}.tab{min-width:0;min-height:2.75rem;font:inherit;color:var(--fg);border-radius:var(--r-chip);cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:.25rem .75rem;font-weight:600;text-decoration:none;display:inline-flex}.tab[aria-current=page]{color:var(--accent-ink);background:var(--chip)}.tab-icon{flex:none;display:inline-flex}.tab-label{overflow-wrap:anywhere}.header-tabs{display:none}.tab-bar{z-index:10;height:calc(4rem + env(safe-area-inset-bottom));padding:.25rem .5rem env(safe-area-inset-bottom);background:var(--surface);border-top:2px solid var(--line);gap:.25rem;display:flex;position:fixed;inset:auto 0 0}.tab-bar .tab{text-align:center;flex-direction:column;flex:1 1 0;justify-content:center;gap:.125rem;padding:.25rem;font-size:.8125rem;line-height:1.2}@media (width>=48rem){.frame.has-tabbar{padding-bottom:0}.tab-bar{display:none}.header-tabs{align-items:center;gap:.25rem;display:flex}}.frame-error{max-width:40rem;margin:0 auto;padding:.5rem 1rem 0}.menu-account{align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.menu-account-text{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.more-list{flex-direction:column;gap:.125rem;display:flex}.not-found{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.not-found h1{margin:0}.menu{display:inline-block;position:relative}.menu-list{z-index:20;background:var(--surface);border:2px solid var(--line);border-radius:var(--r-card);min-width:14rem;max-width:calc(100vw - 2rem);box-shadow:var(--float);animation:menu-drop var(--motion-base) var(--ease-out);flex-direction:column;gap:.125rem;padding:.5rem;display:flex;position:absolute;top:calc(100% + .5rem)}.menu.start .menu-list{inset-inline-start:0}.menu.end .menu-list{inset-inline-end:0}.menu-item{width:100%;min-height:2.75rem;font:inherit;color:var(--fg);text-align:start;border-radius:var(--r-chip);cursor:pointer;background:0 0;border:0;align-items:center;gap:.75rem;padding:.5rem .75rem;font-size:1rem;font-weight:600;text-decoration:none;display:flex}.menu-item:hover{background:var(--chip)}.menu-item.danger{color:var(--danger)}.menu-divider{background:var(--line);height:2px;margin:.25rem .5rem}.sheet,.dialog{color:var(--fg);background:var(--surface);box-shadow:var(--float);border:0;padding:0}.sheet[open],.dialog[open]{flex-direction:column;display:flex}.sheet::backdrop,.dialog::backdrop{animation:sheet-fade var(--motion-base) linear;background:#00000080}.dialog{border-radius:var(--r-card);width:min(24rem,100vw - 2rem);max-height:calc(100dvh - 2rem);animation:sheet-pop var(--motion-base) var(--ease-out)}.sheet{border-radius:var(--r-card) var(--r-card) 0 0;width:100%;max-width:none;max-height:90dvh;animation:sheet-up var(--motion-base) var(--ease-out);margin:auto 0 0}@media (width>=48rem){.sheet{border-radius:var(--r-card);width:min(32rem,100vw - 2rem);margin:auto;animation-name:sheet-pop}.sheet-grip{display:none}}.sheet-grip{color:var(--field-line);flex:none;justify-content:center;padding-top:.5rem;display:flex}.sheet-title{flex:none;margin:0;padding:1rem 1rem 0;font-size:1.25rem;font-weight:700}.sheet-content{flex:auto;min-height:0;padding:1rem;overflow-y:auto}.sheet-footer{padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:var(--surface);border-top:2px solid var(--line);flex-direction:column;flex:none;gap:.5rem;display:flex}.sheet-content form{flex-direction:column;gap:.75rem;display:flex}:where(.sheet-content) label{font-weight:600}.sheet-content p.muted{margin:0}.sheet-content .row,.sheet-footer .row{flex-wrap:wrap;gap:.75rem;display:flex}@keyframes menu-drop{0%{opacity:0;transform:translateY(-.5rem)}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-pop{0%{opacity:0;transform:translateY(1rem)}}@keyframes sheet-fade{0%{opacity:0}}:root[data-motion=reduced] .menu-list,:root[data-motion=reduced] .sheet,:root[data-motion=reduced] .dialog{animation:.12s linear sheet-fade}:root[data-motion=reduced] .sheet::backdrop,:root[data-motion=reduced] .dialog::backdrop{animation-duration:.12s}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .menu-list,:root:not([data-motion=full]) .sheet,:root:not([data-motion=full]) .dialog{animation:.12s linear sheet-fade}:root:not([data-motion=full]) .sheet::backdrop,:root:not([data-motion=full]) .dialog::backdrop{animation-duration:.12s}}.auth{padding-top:1.5rem}.auth-card{text-align:center;flex-direction:column;align-items:center;gap:.75rem;max-width:26rem;margin:0 auto;padding:1.5rem 1.25rem;display:flex}.auth-card h1{justify-content:center;align-items:center;gap:.5rem;margin:0;display:flex}.auth-card p{margin:0}.auth form{text-align:start;flex-direction:column;gap:.75rem;width:100%;display:flex}.auth label{font-weight:600}.auth .btn.primary{width:100%}.auth .row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;display:flex}.auth .code-input{font-variant-numeric:tabular-nums;letter-spacing:.5em;text-align:center;align-self:center;width:14ch;max-width:100%;min-height:3.5rem;padding-inline:.5em 0;font-size:2rem;font-weight:700}.avatar{vertical-align:middle;background:color-mix(in srgb, var(--muted) 20%, transparent);border-radius:50%;flex:none;display:inline-block;overflow:hidden}.avatar img{display:block}.profile form{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.profile .section-title{margin-top:.5rem}.profile label{font-weight:600}.avatar-tab{padding-inline:.75rem}.avatar-tab[aria-selected=true]{color:var(--accent-ink);background:var(--surface);box-shadow:inset 0 0 0 2px var(--accent-ink)}.profile .row{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.avatar-editor{flex-direction:column;gap:1rem;display:flex}.avatar-preview{justify-content:center;display:flex}.avatar-tabs,.avatar-history,.avatar-backgrounds{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.avatar-history .btn{gap:.25rem;padding-inline:.5rem;font-size:.9375rem}@media (width>=24rem){.avatar-history{flex-wrap:nowrap;gap:.25rem}}.avatar-options{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.5rem;display:grid}.avatar-cycler{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.avatar-cycler button{min-width:2.75rem}.avatar-cycler-label{text-align:center;flex:1}.profile .avatar-backgrounds .swatch{border:2px solid var(--field-line);cursor:pointer;border-radius:50%;width:2.75rem;height:2.75rem;padding:0}.profile .swatch[aria-pressed=true]{outline:3px solid var(--accent-ink);outline-offset:2px}.rooms{flex-direction:column;gap:1rem;display:flex}.rooms-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.rooms-header h1{margin:0}.rooms-empty{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;display:flex}.rooms-empty h2{margin:0;font-size:1.25rem}.rooms-empty p{margin:0}.room-list{flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none;display:flex}.room-card{min-height:2.75rem;color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:flex}.room-card:hover,.room-card:focus-visible{border-color:var(--accent)}.room-tile{background:var(--chip);border-radius:var(--r-chip);flex:none;justify-content:center;align-items:center;width:3rem;height:3rem;display:flex}.room-body{flex-direction:column;flex:auto;gap:.25rem;min-width:0;display:flex}.room-name{overflow-wrap:anywhere;font-size:1.1rem;font-weight:700}.room-meta{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.room-avatars{display:flex}.room-avatars .avatar{border:2px solid var(--surface)}.room-avatars .avatar+.avatar{margin-inline-start:-.5rem}.room-online{color:var(--muted);align-items:center;gap:.375rem;font-size:.9375rem;display:inline-flex}.online-dot{border:2px solid var(--muted);border-radius:50%;flex:none;width:.625rem;height:.625rem}.online-dot.on{background:var(--ok);border-color:var(--ok)}.room-card>svg{color:var(--muted);flex:none}.game-on{animation:2s ease-in-out infinite game-on-pulse}@keyframes game-on-pulse{50%{transform:scale(1.06)}}:root[data-motion=reduced] .game-on{animation:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .game-on{animation:none}}.rooms-create{width:100%}.emoji-picker-label{font-weight:600}.emoji-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:.25rem;display:grid}@media (width>=22rem){.emoji-picker{grid-template-columns:repeat(6,minmax(0,1fr))}}.emoji-option{cursor:pointer;border-radius:var(--r-chip);background:0 0;border:0;justify-content:center;align-items:center;width:100%;height:2.75rem;padding:0;display:flex}.emoji-option:hover{background:var(--chip)}.emoji-option[aria-checked=true]{background:var(--chip);box-shadow:0 0 0 3px var(--accent-ink)}.join-card{text-align:center;flex-direction:column;align-items:center;gap:1rem;max-width:28rem;margin:1rem auto 0;padding:1.5rem 1.25rem;display:flex}.join-card h1{overflow-wrap:anywhere;margin:0}.join-card p{margin:0}.join-card .room-tile{width:4.5rem;height:4.5rem}.join-card .btn.primary{width:100%;max-width:20rem}.about{flex-direction:column;gap:1rem;display:flex}.about h1{margin:0}.about .card{flex-direction:column;gap:.5rem;display:flex}.about p,.about ul{margin:0}.about ul{padding-inline-start:1.25rem}.about li+li{margin-top:.25rem}.lobby{flex-direction:column;gap:1rem;display:flex}@media (width>=64rem){.lobby.wide{max-width:56rem}}.lobby h2{margin:0 0 .5rem;font-size:1.15rem}.lobby .section-title{margin:0 0 .75rem;font-size:1rem}.lobby-head{align-items:center;gap:.75rem;display:flex}.lobby-head h1{overflow-wrap:anywhere;flex:auto;min-width:0;margin:0}.lobby-head .btn.icon{flex:none}.lobby-invite{flex-direction:column;gap:.75rem;display:flex}.lobby-invite .section-title,.lobby-invite p{margin:0}.lobby-columns,.lobby-side{flex-direction:column;gap:1rem;display:flex}@media (width>=64rem){.lobby.wide .lobby-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.lobby-start{align-self:flex-start;min-width:16rem}}.lobby-members{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.lobby-members li{align-items:center;gap:.75rem;min-height:2.75rem;display:flex}.lobby-avatar{display:inline-flex;position:relative}.presence-dot{background:var(--muted);border:2px solid var(--surface);border-radius:50%;width:.75rem;height:.75rem;position:absolute;bottom:0;right:0}.presence-dot.inRoom{background:var(--ok)}.presence-dot.online{background:var(--surface);border-color:var(--ok)}.presence-busy{line-height:1;position:absolute;bottom:-.25rem;right:-.25rem}.presence-dot:not(.offline),.presence-busy{animation:presence-hop var(--motion-slow) var(--ease-bounce)}@keyframes presence-hop{40%{transform:translateY(-.5rem)scale(1.3)}}:root[data-motion=reduced] .presence-dot,:root[data-motion=reduced] .presence-busy{animation:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .presence-dot,:root:not([data-motion=full]) .presence-busy{animation:none}}.presence-label{font-size:.8125rem;display:block}.lobby-nickname{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:600}.leaderboard,.leaderboard tbody{display:block}.leaderboard tbody{flex-direction:column;gap:.5rem;display:flex}.leaderboard tr{background:var(--bg);border:2px solid var(--line);border-radius:var(--r-chip);flex-wrap:wrap;align-items:center;gap:.125rem 1rem;padding:.5rem .75rem .5rem 3.25rem;display:flex;position:relative}.leaderboard th{text-align:start;flex:100%;align-items:center;gap:.75rem;min-width:0;font-weight:700;display:flex}.leaderboard-name{overflow-wrap:anywhere;min-width:0}.rank{inset-inline-start:.5rem;background:var(--chip);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-weight:700;display:grid;position:absolute;top:50%;translate:0 -50%}.leaderboard td{font-weight:700}.leaderboard td:before{color:var(--muted);content:attr(data-label);content:attr(data-label) / "";margin-inline-end:.375rem;font-size:.8125rem;font-weight:600}.lobby .lobby-recent summary{cursor:pointer;min-height:2.75rem;margin:0}.lobby .lobby-recent[open] summary{margin-bottom:.75rem}.lobby-recent summary:after{content:"+" / "";margin-inline-start:auto;font-size:1.25rem;line-height:1}.lobby-recent[open] summary:after{content:"−" / ""}.lobby-recent ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.lobby-recent li{align-items:center;gap:.75rem;display:flex}.lobby-recent p{margin:0}.recent-game{background:var(--chip);border-radius:var(--r-chip);flex:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.recent-text{overflow-wrap:anywhere;flex-direction:column;flex:auto;min-width:0;display:flex}.recent-title{font-weight:700}.recent-date{flex:none;font-size:.8125rem}.invite-banner{width:calc(100% - 2rem);max-width:38rem;animation:invite-drop var(--motion-base) var(--ease-out);flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin:.75rem auto 0;display:flex}.invite-banner .btn.ghost{color:var(--on-sun)}@keyframes invite-drop{0%{opacity:0;transform:translateY(-1rem)}}@keyframes invite-fade{0%{opacity:0}}:root[data-motion=reduced] .invite-banner{animation:.12s linear invite-fade}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .invite-banner{animation:.12s linear invite-fade}}.invite-text{overflow-wrap:anywhere;flex-direction:column;flex:14rem;display:flex}.room-settings{flex-direction:column;gap:1rem;display:flex}.room-settings h1{margin:0}.back-link{overflow-wrap:anywhere;align-self:flex-start;align-items:center;gap:.25rem;min-height:2.75rem;font-weight:700;text-decoration:none;display:inline-flex}.settings-card{flex-direction:column;gap:.75rem;scroll-margin-top:1rem;display:flex}.settings-card .section-title,.settings-card p{margin:0}.settings-card .btn{align-self:flex-start}.settings-card .row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.settings-card .row .field{flex:12rem;width:auto}.danger-card{border-color:var(--danger);box-shadow:0 4px 0 color-mix(in srgb, var(--danger) 45%, transparent)}.danger-card .section-title{color:var(--danger)}.room-form,.invite-section{flex-direction:column;gap:.75rem;display:flex}.invite-section p{margin:0}.invite-section .row{flex-wrap:wrap;gap:.5rem;display:flex}.settings-members{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.settings-members li{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.settings-nickname{overflow-wrap:anywhere;min-width:0;font-weight:600}.settings-member-actions{flex-wrap:wrap;gap:.5rem;margin-inline-start:auto;display:flex}.prefs{flex-direction:column;gap:1rem;display:flex}.prefs h1{margin:0}.prefs-card{flex-direction:column;gap:.75rem;display:flex}.prefs-card .btn{align-self:flex-start}.shell{flex-direction:column;gap:.5rem;width:100%;max-width:28rem;margin-inline:auto;display:flex}.shell-board{position:relative}.shell-placeholder{aspect-ratio:1}.shell-overlay{z-index:1;text-align:center;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:absolute;inset:0}.shell-overlay p{margin:0}.shell-countdown{background:var(--bg)}.shell-go{pointer-events:none}.shell-count{font-size:3rem;font-weight:600}.shell-penalty{background:color-mix(in srgb, var(--bg) 60%, transparent)}.shell-ring{aspect-ratio:1;background:conic-gradient(var(--danger) calc(var(--left) * 1turn), color-mix(in srgb, var(--muted) 30%, transparent) 0);border-radius:50%;place-items:center;width:6rem;display:grid}.shell-ring span{aspect-ratio:1;background:var(--bg);border-radius:50%;place-items:center;width:calc(100% - 1.2rem);font-size:1.5rem;font-weight:600;display:grid}.shell-done{text-align:center}.shell-finale{justify-content:center;display:flex}.sheet fieldset{border:0;flex-direction:column;gap:.75rem;min-width:0;margin:0;padding:0;display:flex}.sheet legend{color:var(--muted);margin-bottom:.5rem;padding:0;font-weight:700}.sheet-games{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.5rem;display:grid}.game-tile{min-height:6rem;font:inherit;color:var(--fg);text-align:center;overflow-wrap:anywhere;background:var(--surface);border:2px solid var(--field-line);border-radius:var(--r-card);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-weight:700;display:flex}.game-tile[aria-pressed=true]{background:var(--chip);border-color:var(--accent-ink);box-shadow:0 0 0 1px var(--accent-ink)}.sheet .row label{flex-direction:column;flex:9rem;gap:.25rem;display:flex}.sheet-players{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.sheet-players label{cursor:pointer;background:var(--surface);border:2px solid var(--line);border-radius:var(--r-chip);align-items:center;gap:.75rem;min-height:2.75rem;padding:.375rem .75rem;font-weight:600;display:flex}.sheet-players label.muted{cursor:not-allowed}.sheet-player-name{overflow-wrap:anywhere;min-width:0}.sheet-players .presence-label{align-items:center;gap:.25rem;font-weight:400;display:flex}.round{flex-direction:column;gap:.75rem;display:flex}.round-bar{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;display:flex}.round-timers{flex-wrap:wrap;gap:.25rem 1.25rem;display:flex}.round-bar .btn{margin-inline-start:auto}.round-header{position:relative}.round-header .round-bar{flex-wrap:nowrap;flex:auto;min-width:0}.round-header .round-timers{flex-direction:column;flex:none;gap:0;line-height:1.25}.round-header .progress{flex:auto;min-width:0}.round-header .menu{flex:none;margin-inline-start:auto}.progress-scroll{padding:.3125rem;overflow-x:auto}.round-header .progress-row{border:0;flex-wrap:nowrap;width:max-content;min-width:100%;padding:.25rem}.round-header .progress-list{z-index:15;background:var(--surface);border-bottom:2px solid var(--line);box-shadow:var(--float);margin:0;padding:.75rem 1rem;position:absolute;inset:100% 0 auto}.round-side{display:none}@media (width>=64rem){.round-header .progress{display:none}.round-play{grid-template-columns:minmax(0,1fr) 16rem;align-items:start;gap:1rem;display:grid}.round-side{display:block}.round-side .progress-list{margin:0}}.round-countdown{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex}.round-countdown h2{margin:0;font-size:1.75rem}.round-countdown p{margin:0}.round-count{animation:count-pop var(--motion-slow) var(--ease-out);font-size:5rem;font-weight:700;line-height:1.1}@keyframes count-pop{0%{transform:scale(.6)}60%{transform:scale(1.1)}to{transform:scale(1)}}.round-go{animation-duration:var(--motion-base);color:var(--accent-ink);background:var(--surface);border-radius:var(--r-card);box-shadow:var(--float);padding:0 1.5rem}.round-board{position:relative}.round-unknown{flex-direction:column;align-items:center;gap:.75rem;display:flex}.round-unknown p{margin:0}.round-timeup{background:color-mix(in srgb, var(--bg) 80%, transparent)}.round-timeup .shell-count,.round-timeup-line{justify-content:center;align-items:center;gap:.5rem;display:flex}.round-timeup-line{margin:0}.round-me{text-align:center;margin:0;font-size:1.5rem}.round-me.finished{animation:finish-pop var(--motion-slow) var(--ease-out);justify-content:center;align-items:center;gap:.5rem;display:flex}@keyframes finish-pop{0%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1.1)rotate(-3deg)}60%{transform:scale(1)rotate(3deg)}80%{transform:rotate(-2deg)}to{transform:none}}:root[data-motion=reduced] .round-count,:root[data-motion=reduced] .round-me.finished{animation:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .round-count,:root:not([data-motion=full]) .round-me.finished{animation:none}}.progress-row{width:100%;font:inherit;color:inherit;border:1px solid color-mix(in srgb, var(--muted) 40%, transparent);cursor:pointer;background:0 0;border-radius:.75rem;flex-wrap:wrap;gap:.75rem;padding:.5rem;display:flex}.progress-ring{background:conic-gradient(var(--ok) calc(var(--done) * 1turn), color-mix(in srgb, var(--muted) 30%, transparent) 0);border-radius:50%;padding:3px;display:inline-flex;position:relative}.progress-ring .avatar{border:2px solid var(--bg)}.progress-mark{white-space:nowrap;background:var(--bg);border-radius:.5rem;align-items:center;gap:.125rem;padding:0 .2rem;font-size:.8rem;font-weight:600;line-height:1.3;display:inline-flex;position:absolute;bottom:-.35rem;right:-.35rem}.progress-mark.finished{color:var(--ok-ink)}.progress-list{flex-direction:column;gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.progress-list li{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;display:flex}.progress-name{overflow-wrap:anywhere;flex:1}.progress-status{font-variant-numeric:tabular-nums;align-items:center;gap:.25rem;display:inline-flex}.progress-list .out{color:var(--muted)}.results{flex-direction:column;gap:1rem;display:flex}.results h2,.results h3,.results>p{margin:0}.results-note{text-align:center;align-items:center}.results-title{align-items:center;gap:.5rem;display:flex}.results .row{flex-wrap:wrap;gap:.75rem;display:flex}.results-note .row{justify-content:center}.podium{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:2rem .75rem;margin:0;padding:2rem 0 0;list-style:none;display:flex}.podium-step{flex-direction:column;flex:0 8rem;align-items:center;gap:.25rem;min-width:0;display:flex;position:relative}.podium-step.place-1{--delay:.4s;order:1}.podium-step.place-2{--delay:.2s;order:0}.podium-step.place-3{--delay:0s;order:2}.podium-avatar{animation:podium-bounce var(--motion-slow) var(--ease-out) var(--delay,0s) backwards;display:inline-block}@keyframes podium-bounce{0%{opacity:0;transform:translateY(3rem)}55%{opacity:1;transform:translateY(-1rem)}80%{transform:translateY(.25rem)}to{transform:none}}@keyframes podium-fade{0%{opacity:0}}.podium-name{text-align:center;overflow-wrap:anywhere;max-width:100%;font-weight:600}.podium-block{width:100%;color:var(--fg);border-radius:.75rem .75rem 0 0;flex-direction:column;justify-content:center;align-items:center;gap:.125rem;font-size:1.25rem;font-weight:700;line-height:1.2;display:flex}.place-1 .podium-block{height:6rem;color:var(--on-sun);background:var(--sun)}.place-2 .podium-block{background:color-mix(in srgb, var(--muted) 35%, var(--surface));height:5rem}.place-3 .podium-block{background:color-mix(in srgb, var(--accent) 45%, var(--surface));height:4.25rem}@media (width<=30rem){.podium-avatar .avatar,.podium-avatar img{width:24vw!important;height:24vw!important}}.podium:has(>:nth-child(4)) .podium-avatar .avatar{width:min(96px,20vw)!important;height:min(96px,20vw)!important}.podium:has(>:nth-child(4)) .podium-avatar img{width:min(96px,20vw)!important;height:min(96px,20vw)!important}.confetti{pointer-events:none;height:12rem;position:absolute;inset:-2rem -1rem auto;overflow:hidden}.confetti i{top:-1rem;left:calc(var(--i) * 6.25%);background:var(--accent);width:.5rem;height:.8rem;animation:2.4s linear infinite confetti-fall;animation-delay:calc(var(--i) * -.37s);border-radius:.1rem;position:absolute}.confetti i:nth-child(4n+1){background:#f79009}.confetti i:nth-child(4n+2){background:#12b76a}.confetti i:nth-child(4n+3){background:#ee46bc}@keyframes confetti-fall{0%{transform:translateY(0)rotate(0)}to{transform:translateY(13rem)rotate(540deg)}}.results-table .place{inset-inline-start:.5rem;background:var(--chip);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;display:grid;position:absolute;top:50%;translate:0 -50%}.results-table td.place:before{content:none}.results-table .emoji{margin-inline-end:.375rem}.results-table tr.out{color:var(--muted);background:0 0;border-style:dashed}.results-table tr.out .avatar{filter:grayscale()}.delta{color:var(--ok-ink);animation:delta-float var(--motion-slow) var(--ease-out) backwards;margin-inline-start:.25rem;font-weight:700;display:inline-block}@keyframes delta-float{0%{opacity:0;transform:translateY(.75rem)}}:root[data-motion=reduced] .podium-avatar{animation:podium-fade var(--motion-base) linear}:root[data-motion=reduced] .delta{animation:none}:root[data-motion=reduced] .confetti{display:none}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]) .podium-avatar{animation:podium-fade var(--motion-base) linear}:root:not([data-motion=full]) .delta{animation:none}:root:not([data-motion=full]) .confetti{display:none}}.tap-board{gap:.25rem;width:100%;max-width:28rem;margin-inline:auto;display:grid}.tap-cell{aspect-ratio:1;border:1px solid var(--muted);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;min-width:0;padding:0;display:flex}.tap-target:after{aspect-ratio:1;content:"";background:var(--accent);width:75%;box-shadow:inset 0 0 0 .2rem var(--bg);border-radius:50%}.tap-board.locked{opacity:.5}.tap-cell:disabled{cursor:not-allowed}.snake-play{flex-direction:column;gap:.5rem;display:flex}.board-zoom{justify-content:flex-end;gap:.5rem;display:flex}.snake-board{aspect-ratio:1;width:100%;position:relative}.snake-board canvas{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:.5rem;width:100%;height:100%;display:block}.snake-keys{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;list-style:none;position:absolute;overflow:hidden}.shell-board:has(.snake-board) .shell-penalty{pointer-events:none}.snake-finale{border-radius:.5rem;display:block}
