@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/onest-cyrillic-300-normal-Dcqa6NY4.woff2)format("woff2"),url(/assets/onest-cyrillic-300-normal-C0KwR0uu.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/onest-latin-300-normal-CQb7Hhx7.woff2)format("woff2"),url(/assets/onest-latin-300-normal-BcBQOVFv.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-cyrillic-400-normal-BTdD9fLi.woff2)format("woff2"),url(/assets/onest-cyrillic-400-normal-BQq8x-Ju.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/onest-latin-400-normal-9AYXx_QC.woff2)format("woff2"),url(/assets/onest-latin-400-normal-RaMPE1jb.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-cyrillic-500-normal-CJRUgmys.woff2)format("woff2"),url(/assets/onest-cyrillic-500-normal-BMFE-GJD.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/onest-latin-500-normal-2-RsuwM3.woff2)format("woff2"),url(/assets/onest-latin-500-normal-CVP923du.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-cyrillic-600-normal-BZYKVyuq.woff2)format("woff2"),url(/assets/onest-cyrillic-600-normal-DXk93W_-.woff)format("woff")}@font-face{font-family:Onest;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/onest-latin-600-normal-DM19Lk_j.woff2)format("woff2"),url(/assets/onest-latin-600-normal-D88KJsY0.woff)format("woff")}:root{--bg:#fff;--surface:#fff;--raised-solid:#f0f0f0;--hover-solid:#e6e6e6;--line-solid:#e6e6e6;--text:#1a1a1a;--muted-solid:#737373;--accent:#1a1a1a;--accent-hover:#3a3a3a;--on-accent:#fff;--danger:#d93025;--on-danger:#fff;--scrim:#fff6;--aura-veil:transparent;--raised:var(--raised-solid);--hover:var(--hover-solid);--line:var(--line-solid);--muted:var(--muted-solid);--radius:8px;--display:"Onest", system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.5, 0, .75, 0);--fast:.16s;--mid:.28s;--slow:.52s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-feature-settings:"kern", "calt";-webkit-text-size-adjust:100%;font-family:Onest,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@supports (color:light-dark(#000, #fff)){:root{--bg:light-dark(#fff,#000);--surface:light-dark(#fff,#141414);--raised-solid:light-dark(#f0f0f0,#232323);--hover-solid:light-dark(#e6e6e6,#2e2e2e);--line-solid:light-dark(#e6e6e6,#2a2a2a);--text:light-dark(#1a1a1a,#f2f2f2);--muted-solid:light-dark(#737373,#8c8c8c);--accent:light-dark(#1a1a1a,#f2f2f2);--accent-hover:light-dark(#3a3a3a,#d0d0d0);--on-accent:light-dark(#fff,#000);--danger:light-dark(#d93025,#ff453a);--on-danger:light-dark(#fff,#000);--scrim:light-dark(#fff6,#0000008c);--aura-veil:light-dark(#0000,#00000038)}}html{background:var(--bg);scrollbar-gutter:stable}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{color:var(--text);margin:0}.app{padding:max(12px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) 0 max(20px, env(safe-area-inset-left))}h1,h2,h3,p,ul,ol{margin:0}h1{font-family:var(--display);letter-spacing:-.02em;font-size:1.55rem;font-weight:300;line-height:1.05}h2{font-size:1.15rem;font-weight:500}h3{color:var(--muted);margin:16px 0 4px}button.primary,button.wide,button.small,button.pill,button.chip,button.quiet,.segmented button,.quick-actions button,.dialog-actions button,.tabs button,.field-row button,.join-link button,.problem-actions button,.catalog-foot button,button.unmute,button.lyrics-return,label.upload{letter-spacing:-.005em;font-size:.9375rem;font-weight:500}h3,.bar-sub,.badge,.live-badge,.times,.tab,.field>span,.track-details dt,.status-pill,.share-url{letter-spacing:0;font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:400}h3{font-weight:500}a{color:inherit}::view-transition-old(root){animation:fade-out var(--fast) var(--ease-in) both}::view-transition-new(root){animation:view-in var(--mid) var(--ease) both}.tabbar{view-transition-name:tabbar}.mini-player{view-transition-name:mini-player}.aura{view-transition-name:aura}@supports not (view-transition-name:none){main{animation:view-in var(--mid) var(--ease) both}.mini-player{animation:rise var(--mid) var(--ease)}}.player .now{animation:now-in var(--slow) var(--ease) both}.player .now-text{animation:view-in var(--slow) var(--ease) 60ms both}.queue .row.arrived,.msg.arrived{animation:view-in var(--mid) var(--ease) both}.lead{color:var(--muted)}.eyebrow{color:var(--muted);font-size:.9rem}.fineprint{color:var(--muted);font-size:.8rem}.empty{color:var(--muted);text-align:center;padding:20px 0;font-size:.9rem}.loading{color:var(--muted);text-align:center;padding-top:30vh}.error{color:var(--danger);font-size:.9rem}.center{text-align:center}.grow{flex:1;min-width:0}button,input{font:inherit;color:inherit;touch-action:manipulation;font-size:16px}button{border-radius:var(--radius);background:var(--raised);cursor:pointer;min-height:44px;transition:transform var(--fast) var(--ease), background-color var(--fast), color var(--fast), opacity var(--fast), box-shadow var(--fast);border:0;justify-content:center;align-items:center;gap:6px;padding:0 16px;display:inline-flex}button:hover:not(:disabled){background:var(--hover)}button:active:not(:disabled){transform:scale(.96)}button:disabled{opacity:.45;cursor:default}button svg{flex:none;width:20px;height:20px}button.primary{background:var(--accent);color:var(--on-accent)}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.wide{width:100%;min-height:52px}button.quiet{color:var(--muted);background:0 0}button.quiet:hover:not(:disabled){background:var(--surface);color:var(--text)}button.ghost{min-width:44px;color:var(--muted);background:0 0;flex:none;padding:0 10px}button.ghost:hover:not(:disabled){background:var(--raised);color:var(--text)}button.pill{flex:none;min-height:40px;padding:0 14px}button.link{min-height:0;color:var(--muted);font-size:inherit;text-underline-offset:3px;padding:0;text-decoration:underline;background:0 0!important}button.small{flex:none;min-height:36px;padding:0 12px;font-size:.85rem}button.round{border-radius:50%;flex:none;width:68px;height:68px;padding:0}button.round svg{width:30px;height:30px}button.round.ghost{width:48px;height:48px;color:var(--text)}button.round.ghost svg{width:24px;height:24px}.danger{color:var(--danger)!important}input:not([type=range],[type=checkbox],[type=file]){border-radius:var(--radius);background:var(--raised);width:100%;min-height:48px;transition:border-color var(--fast), background-color var(--fast);border:1.5px solid #0000;outline:none;padding:0 14px}input:not([type=range],[type=checkbox],[type=file]):focus{border-color:var(--accent)}input::placeholder{color:var(--muted)}input[type=file]{width:100%;color:var(--muted);font-size:.9rem}input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent);flex:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{color:var(--muted);gap:6px;font-size:.85rem;display:grid}label.check{align-items:center;gap:10px;display:flex}.stack,.card,.home,.room,.list,.player,.stage,.stage-main,.stage-side,.sheet-body,.catalog-body{grid-template-columns:minmax(0,1fr);display:grid}.stack{gap:12px}.field-row{gap:8px;display:flex}.field-row>input{flex:1;min-width:0}.field-row>button{animation:view-in var(--fast) var(--ease);flex:none}.home{gap:28px;max-width:420px;margin:0 auto;padding:7vh 0 40px}.hero{gap:8px;display:grid}.hero h1{font-size:2.45rem}.card{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:14px;padding:20px}.gate{text-align:center;margin-top:6vh}.gate h1{overflow-wrap:anywhere;font-size:2.2rem}.account{color:var(--muted);text-align:center;font-size:.9rem}.list{padding:0;list-style:none}.row{align-items:center;gap:12px;min-height:60px;padding:6px 0;display:flex}.row .title,.row .sub{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.row .title{font-weight:500}.row .sub{color:var(--muted);font-size:.8rem}.row .note{color:var(--muted);text-overflow:ellipsis;display:block;overflow:hidden}.room-link{border-radius:var(--radius);color:var(--muted);margin:0 -10px;padding:6px 10px;text-decoration:none}.room-link .title{color:var(--text)}.room-link:hover{background:var(--surface)}button.add{border-radius:50%;flex:none;width:44px;padding:0}.row.added button.add{background:var(--text);color:var(--bg);opacity:1}.row.added .title{color:var(--muted)}.avatar{background:var(--raised);width:44px;height:44px;color:var(--text);border-radius:50%;flex:none;place-items:center;font-weight:600;display:grid}.person{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.badge{background:var(--raised);color:var(--muted);border-radius:4px;padding:2px 6px;font-size:.65rem}.badge.accent{background:var(--text);color:var(--bg)}.cover{object-fit:cover;width:48px;height:48px;color:color-mix(in srgb, var(--text) 30%, transparent);border-radius:6px;flex:none;place-items:center;display:grid}.cover svg{width:45%}.cover.large{border-radius:12px;width:min(72vw,300px);height:min(72vw,300px)}.spinner{border:2px solid var(--muted);border-top-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}.skeleton .cover,.bone,.bone-circle,.artist-hero.placeholder{background:linear-gradient(100deg, var(--raised) 30%, var(--hover) 50%, var(--raised) 70%) 0 0 / 300% 100%;animation:1.4s linear infinite shimmer}.bone-circle{border-radius:50%}.skeleton .grow{min-width:0}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.loader{color:var(--muted);justify-content:center;align-items:center;gap:12px;padding:24px 0;display:flex}.loader.page{flex-direction:column;min-height:70dvh}.eq{align-items:flex-end;gap:4px;height:28px;display:flex}.eq i{background:var(--accent);transform-origin:bottom;border-radius:3px;width:5px;height:100%;animation:.9s ease-in-out infinite eq}.eq i:nth-child(2){animation-delay:-.3s}.eq i:nth-child(3){animation-delay:-.6s}.eq i:nth-child(4){animation-delay:-.15s}.bone{border-radius:6px;width:70%;height:12px;margin:6px 0}.bone.short{width:40%}.room{max-width:440px;min-height:calc(100dvh - max(12px, env(safe-area-inset-top)));flex-direction:column;gap:20px;margin:0 auto;display:flex}.room>.stage{flex:1}.room.wide{max-width:980px;padding-bottom:40px}.bar{align-items:center;gap:4px;margin-left:-10px;display:flex}button.invite-btn{background:var(--text);color:var(--bg)}button.invite-btn:hover:not(:disabled){background:var(--accent-hover)}button.invite-btn svg{width:18px;height:18px}@media (width<=599px){button.invite-btn{width:40px;padding:0}.invite-label{display:none}}button.bar-title{min-width:0;color:inherit;text-align:left;background:0 0;flex:1;grid-template-columns:minmax(0,1fr);justify-items:start;gap:0;padding:4px 10px;display:grid}.bar-title h1{white-space:nowrap;align-items:center;max-width:100%;font-size:1.1rem;display:flex;overflow:hidden;font-size:1rem!important}.bar-title h1 svg{width:18px;height:18px;color:var(--muted);flex:none}.bar-sub{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.banner{border-radius:var(--radius);background:var(--surface);color:var(--muted);text-align:center;padding:8px 12px;font-size:.85rem}.stage,.stage-main,.stage-side{align-content:start;gap:20px}.room.wide .stage{grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:48px}.room.wide .stage-main{position:sticky;top:16px}.panel{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.panel .catalog-body{max-height:56vh}.player{text-align:center;justify-items:center;gap:16px}.player>*{max-width:100%}.player .cover.large{width:min(72vw,300px,40dvh);height:min(72vw,300px,40dvh)}.player:has(.lyrics-wrap) .cover.large{width:min(60vw,240px,27dvh);height:min(60vw,240px,27dvh)}.player-empty .cover{color:color-mix(in srgb, var(--text) 18%, transparent);background:var(--raised)!important}.track-title{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:2rem;font-weight:300;line-height:1.05}.track-artist{color:var(--muted);margin-top:2px}.progress{width:100%}.times{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:.75rem;display:flex}.controls{align-items:center;gap:20px;padding-left:68px;display:flex}.status-pill{border-radius:var(--radius);background:var(--surface);color:var(--muted);align-items:center;gap:6px;padding:8px 14px;font-size:.85rem;display:inline-flex}.status-pill svg{width:16px;height:16px}.artist-line{justify-content:center;align-items:center;gap:6px;display:flex}button.info-dot{width:28px;min-height:28px;color:var(--muted);background:0 0;border-radius:50%;padding:0}button.info-dot svg{width:18px;height:18px}button.info-dot:hover{color:var(--text)}button.vote-btn{position:relative}button.vote-btn.voted.ghost{background:var(--text);color:var(--bg)}button.vote-btn.voted.primary{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.vote-count{border:1px solid var(--bg);background:var(--text);color:var(--bg);animation:appear var(--mid) var(--ease);border-radius:6px;padding:1px 7px;font-size:.7rem;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.vote-hint{color:var(--muted);margin-top:-6px;font-size:.8rem}input[type=range]{cursor:pointer;appearance:none;background:0 0;width:100%;height:28px;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--text) var(--played,0%), var(--raised) var(--played,0%));border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{background:var(--text);appearance:none;border-radius:50%;width:14px;height:14px;margin-top:-5px}input[type=range]::-moz-range-track{background:var(--raised);border-radius:2px;height:4px}input[type=range]::-moz-range-progress{background:var(--text);border-radius:2px;height:4px}input[type=range]::-moz-range-thumb{background:var(--text);border:0;border-radius:50%;width:14px;height:14px}input[type=range]:disabled{cursor:default}input[type=range]:disabled::-webkit-slider-thumb{visibility:hidden}input[type=range]:disabled::-moz-range-thumb{visibility:hidden}.lyrics-wrap{justify-items:center;width:100%;display:grid;position:relative}.lyrics{overscroll-behavior:contain;scrollbar-width:none;outline:none;grid-auto-rows:max-content;align-content:start;gap:2px;width:100%;height:7.5em;padding:2.5em 0;display:grid;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000,#000 22% 78%,#0000);mask-image:linear-gradient(#0000,#000 22% 78%,#0000)}.lyrics::-webkit-scrollbar{display:none}.lyrics.full{height:min(52dvh,24em);padding:8em 0}.lyrics.plain{color:var(--muted);padding:1.5em 0;font-size:.95rem}.lyrics.plain .lyric{margin:0;padding:2px 6px}.player-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex;position:relative}button.emoji-toggle{border-radius:50%;width:44px;height:44px;min-height:44px;padding:0}button.emoji-toggle svg{width:24px;height:24px}button.emoji-toggle.active{background:var(--text);color:var(--bg)}.reactions-menu{z-index:16;border:1px solid var(--line-solid);background:var(--surface);transform-origin:50% 100%;animation:menu-in var(--mid) var(--ease);border-radius:999px;gap:2px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;translate:-50%;box-shadow:0 10px 30px #00000024}@keyframes menu-in{0%{opacity:0;transform:translateY(6px)scale(.92)}}button.reaction{background:0 0;border-radius:50%;width:48px;min-height:48px;padding:0;font-size:1.625rem;line-height:1}button.reaction:hover:not(:disabled),button.reaction:focus-visible{background:var(--raised-solid)}button.chat-btn,button.avatar-button{position:relative}.badge-count{background:var(--text);min-width:18px;height:18px;color:var(--bg);box-shadow:0 0 0 2px var(--bg);text-align:center;animation:appear var(--mid) var(--ease);border-radius:9px;padding:0 5px;font-size:.7rem;font-weight:700;line-height:18px;position:absolute;top:-2px;right:-4px}.volume{align-items:center;display:flex}.volume input[type=range]{width:96px}.dock{padding:16px 20px max(16px, env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 70%, transparent);margin:0 -20px;position:sticky;bottom:0}.queue{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.queue h3{margin-top:0}.queue-empty{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:14px 16px;font-size:.9rem}.backdrop{z-index:20;background:var(--scrim);-webkit-backdrop-filter:blur(18px)saturate(1.2);backdrop-filter:blur(18px)saturate(1.2);animation:fade var(--mid) var(--ease);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.backdrop.leaving{animation:fade-out var(--mid) var(--ease-in) forwards}.sheet{border:1px solid var(--line);background:var(--surface);width:100%;max-width:480px;max-height:88dvh;animation:sheet-up var(--slow) var(--ease);border-bottom:0;border-radius:20px 20px 0 0;flex-direction:column;gap:12px;padding:8px 20px 0;display:flex}.leaving .sheet,.sheet.leaving{animation:sheet-down var(--mid) var(--ease-in) forwards}.sheet-head{justify-content:space-between;align-items:center;margin-right:-10px;display:flex}.sheet-body{overscroll-behavior:contain;flex:1;align-content:start;gap:8px;min-height:0;padding-bottom:20px;overflow:hidden auto}@media (width>=600px){.backdrop{align-items:center}.sheet{border-bottom:1px solid var(--line);max-height:min(88dvh,720px);animation-name:sheet-pop;animation-duration:var(--mid);border-radius:20px}.leaving .sheet,.sheet.leaving{animation-name:sheet-unpop;animation-duration:var(--fast)}}.catalog{flex-direction:column;flex:1;gap:12px;min-height:0;display:flex}.search{border-radius:var(--radius);background:var(--raised);color:var(--muted);flex:none;align-items:center;padding-left:14px;display:flex}.search:focus-within{outline:1.5px solid var(--text)}.search svg{flex:none;width:20px;height:20px}.search input{color:var(--text);background:0 0!important;border:0!important}.search input::-webkit-search-cancel-button{display:none}.chips{scrollbar-width:none;flex:none;gap:8px;margin:0 -20px;padding:0 20px 2px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.panel .chips{margin:0;padding:0}.chips::-webkit-scrollbar{display:none}.chip{white-space:nowrap;flex:none;min-height:36px;padding:0 14px}.chip svg{width:16px;height:16px}.chip.active,.chip.active:hover{color:var(--bg);background:var(--text)!important}.chip.upload-chip{border:1px solid var(--muted);background:0 0}.catalog-body{overscroll-behavior:contain;flex:1;align-content:start;min-height:0;overflow:hidden auto}.catalog-body .fineprint{padding:16px 0}.catalog-foot{padding:12px 20px max(12px, env(safe-area-inset-bottom));border-top:1px solid var(--line);flex:none;align-items:center;gap:12px;margin:0 -20px;display:flex}.panel .catalog-foot{margin:0;padding:12px 0 0}.status{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.status b{color:var(--text);font-weight:600}.toast{right:20px;bottom:max(88px, env(safe-area-inset-bottom));z-index:30;border-radius:var(--radius);background:var(--text);max-width:400px;color:var(--bg);text-align:center;overflow-wrap:anywhere;animation:rise var(--mid) var(--ease);margin:0 auto;padding:12px 16px;font-size:.9rem;font-weight:500;position:fixed;left:20px}label.switch{color:var(--text);align-items:flex-start;font-size:.95rem}label.switch small{color:var(--muted);font-size:.8rem;display:block}.flying{z-index:5;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fly{justify-items:center;animation:2.6s ease-out forwards fly;display:grid;position:absolute;bottom:12%}.fly-emoji{font-size:2.4rem}.fly-name{background:var(--text);color:var(--bg);border-radius:4px;padding:1px 8px;font-size:.75rem;font-weight:500}@keyframes fly{0%{opacity:0;transform:translateY(0)scale(.6)}15%{opacity:1;transform:translateY(-8vh)scale(1.1)}to{opacity:0;transform:translateY(-60vh)scale(1)}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes sheet-down{to{transform:translateY(100%)}}@keyframes sheet-pop{0%{opacity:0;transform:translateY(12px)scale(.97)}}@keyframes sheet-unpop{to{opacity:0;transform:scale(.98)}}@keyframes fade-out{to{opacity:0}}@keyframes view-in{0%{opacity:0;transform:translateY(8px)}}@keyframes now-in{0%{opacity:0;transform:scale(.94)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes fade{0%{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-300% 0}}@keyframes eq{0%,to{transform:scaleY(.25)}50%{transform:scaleY(1)}}@keyframes appear{0%{opacity:0;transform:translateY(4px)}}@keyframes pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.problem{border:1px solid var(--danger);border-radius:var(--radius);background:var(--surface);text-align:left;gap:10px;width:100%;padding:12px 14px;font-size:.9rem;display:grid}.problem-actions{flex-wrap:wrap;gap:8px;display:flex}.segmented{border-radius:var(--radius);background:var(--raised);gap:4px;padding:4px;display:flex}.segmented button{min-height:38px;color:var(--muted);background:0 0;flex:1;padding:0 10px;font-size:.9rem}.segmented button.active,.segmented button.active:hover{background:var(--text);color:var(--bg);font-weight:600}button.qvote{min-width:56px;min-height:40px;color:var(--muted);font-variant-numeric:tabular-nums;background:0 0;flex:none;gap:4px;padding:0 10px;font-size:.8125rem;font-weight:500}button.qvote:hover:not(:disabled){background:var(--raised);color:var(--text)}button.qvote svg{width:18px;height:18px}button.qvote.on,button.qvote.on:hover:not(:disabled){background:var(--text);color:var(--bg)}.vote-note{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:.75rem}button.wide.quiet.on{color:var(--text);font-weight:600}button.skip.voted{background:var(--text);color:var(--bg)}button.skip{min-height:40px}.lyric{width:100%;min-height:0;color:var(--text);font:inherit;text-align:center;overflow-wrap:anywhere;border-radius:10px;padding:5px 10px;font-size:1.15rem;font-weight:400;line-height:1.35;transition:opacity .45s,transform .45s cubic-bezier(.2,.7,.2,1),color .45s,text-shadow .45s;display:block;background:0 0!important}.lyric.next{opacity:.42}.lyric.past{opacity:.26}.lyric.now{opacity:1;transform:scale(1.06)}p.lyric{margin:0}button.lyric:hover:not(.now){opacity:.75}button.lyrics-return{background:var(--text);min-height:32px;color:var(--bg);animation:appear var(--mid) var(--ease);position:absolute;bottom:6px}.row.offline{opacity:.55}.dot{background:var(--text);vertical-align:middle;border-radius:50%;flex:none;width:8px;height:8px;margin-left:4px;display:inline-block}img.fade{opacity:0;transition:opacity var(--slow) var(--ease)}img.fade.loaded{opacity:1}.avatar{position:relative;overflow:hidden}.avatar>img,.cover.framed>img{border-radius:inherit;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.cover.framed{background:var(--raised);position:relative;overflow:hidden}.avatar-button{border-radius:50%;padding:0}.hero-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.back{justify-self:start;align-items:center;gap:4px;text-decoration:none;display:inline-flex}.profile-head{align-items:center;gap:20px;display:flex}label.upload{border-radius:var(--radius);background:var(--raised);min-height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;padding:0 16px;display:inline-flex;position:relative}label.upload:hover{background:var(--hover)}label.upload:focus-within{outline:2px solid var(--text);outline-offset:2px}label.upload input{opacity:0;cursor:pointer;position:absolute;inset:0}button.link.artist{color:inherit;text-decoration:none}button.link.artist:hover{text-decoration:underline}.track-artist.link{color:var(--muted);font-size:1rem}.sheet-body.artist{grid-auto-rows:max-content;gap:16px;margin:0 -20px;padding-inline:20px}.artist-hero{aspect-ratio:5/4;background:var(--raised);align-content:end;max-height:340px;margin:-12px -20px 0;display:grid;position:relative;overflow:hidden}.artist-hero.placeholder{animation:1.2s ease-in-out infinite alternate pulse}.artist-hero img{object-fit:cover;object-position:50% 25%;width:100%;height:100%;position:absolute;inset:0}.artist-hero:after{content:"";background:linear-gradient(to bottom, transparent 40%, var(--surface));position:absolute;inset:0}.artist-hero h2{z-index:1;letter-spacing:-.03em;overflow-wrap:anywhere;padding:0 20px 12px;font-size:clamp(2rem,10vw,3.2rem);font-weight:300;line-height:1;position:relative}.artist-hero.bare{aspect-ratio:auto;background:linear-gradient(to bottom, var(--raised), var(--surface));text-align:center;justify-items:center;gap:16px;padding-top:20px}.artist-hero.bare:after{content:none}.artist-initial{border-radius:50%;place-items:center;width:168px;height:168px;font-size:4.5rem;font-weight:600;display:grid}.artist-meta{justify-content:space-between;align-items:center;gap:12px;margin-top:-8px;display:flex}button.play-big{background:var(--accent);width:56px;height:56px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;padding:0;transition:transform .1s;display:grid}button.play-big:hover:not(:disabled){transform:scale(1.05)}button.play-big svg{width:28px;height:28px}.sheet-body.artist section{gap:8px;display:grid}button.link.more{color:var(--muted);justify-self:start;font-weight:600}.album-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px 12px;display:grid}.album-card{min-width:0;color:inherit;text-align:left;background:0 0;place-content:start stretch;gap:4px;margin:-8px;padding:8px;display:grid}.album-card .cover.large{aspect-ratio:1;border-radius:4px;width:100%;height:auto;margin-bottom:4px}.album-card .title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.album-card .sub{color:var(--muted);font-size:.85rem}.album-head{text-align:center;justify-items:center;gap:12px;display:grid}.album-head .cover.large{border-radius:4px;width:200px;height:200px}button.link.back{justify-self:start;align-items:center;gap:4px;display:flex}.photo-credit{color:var(--muted);overflow-wrap:anywhere;font-size:.75rem}.photo-credit a{color:inherit}.artist-hero.placeholder .title-bone{background:var(--hover);width:60%;height:36px;margin:0 20px 16px;animation:none}.artist-meta .bone{width:90px}.sheet.tall{height:88dvh}@media (width>=600px){.sheet.tall{height:min(88dvh,720px)}}.backdrop[hidden]{display:none}.sheet-head h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sheet-head .back-btn{margin-left:-10px}button.row-open{min-width:0;min-height:0;color:inherit;font:inherit;text-align:left;background:0 0;flex:1;justify-content:flex-start;align-items:center;gap:12px;margin:-6px 0 -6px -8px;padding:6px 8px;display:flex}button.row-open:hover:not(:disabled){background:var(--raised)}button.cover-btn{border-radius:6px;min-height:0;padding:0;background:0 0!important}button.link-plain{min-height:0;color:inherit;text-align:center;margin:0 auto;padding:0;display:block;background:0 0!important}button.link-plain:hover{text-underline-offset:4px;text-decoration:underline}.track-status{color:var(--muted);font-variant-numeric:tabular-nums;justify-self:start;font-size:.75rem}.track-card{justify-items:center;gap:16px}.track-card>.cover.large{width:min(56vw,240px);height:min(56vw,240px);margin-top:8px}.track-card-head{align-items:flex-start;gap:12px;width:100%;display:flex}.track-card-head h2{overflow-wrap:anywhere;font-size:1.6rem;font-weight:300;line-height:1.1}.track-card-head .link.artist{color:var(--text);font-size:1rem;text-decoration:none}.track-card-head .link.artist:hover{text-decoration:underline}button.round-small{background:var(--raised);width:36px;height:36px;min-height:36px;color:var(--muted);border-radius:50%;flex:none;padding:0}button.round-small svg{width:20px;height:20px}button.round-small.active{background:var(--text);color:var(--bg)}.track-card>.status-pill{background:var(--raised);justify-self:start}.track-actions{gap:8px;width:100%;display:grid}button.vote-big.voted{background:var(--text);color:var(--bg)}.track-details{border-radius:var(--radius);background:var(--raised);gap:4px;width:100%;margin:0;padding:14px 16px;font-size:.9rem;display:grid}.track-details dt{color:var(--muted);margin-top:6px}.track-details dt:first-child{margin-top:0}.track-details dd{overflow-wrap:anywhere;margin:0}.track-details a{color:var(--text)}.chat{flex-direction:column;flex:1;min-height:0;margin:0 -20px;display:flex}.chat-list{overscroll-behavior:contain;flex-direction:column;flex:1;gap:2px;min-height:0;padding:6px 16px 8px;font-size:.9rem;display:flex;overflow:hidden auto}.chat-empty{color:var(--muted);text-align:center;margin:auto;font-size:.85rem}.msg{align-items:flex-end;gap:8px;display:flex}.msg.first{margin-top:6px}.msg-avatar{flex:none;align-self:flex-start;width:28px;padding-top:16px}.msg.mine{justify-content:flex-end}.msg-body{justify-items:start;gap:2px;min-width:0;max-width:82%;display:grid}.msg.mine .msg-body{justify-items:end}.msg-head{color:var(--muted);padding:0 4px;font-size:.75rem}.msg-head b{color:var(--text);font-weight:600}button.bubble{background:var(--raised);max-width:100%;min-height:0;color:var(--text);font:inherit;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;cursor:default;border-radius:14px 14px 14px 5px;padding:6px 10px;display:block}.msg.mine button.bubble{background:var(--text);color:var(--bg);border-radius:14px 14px 5px}.msg-tools{color:var(--muted);gap:10px;padding:0 4px;font-size:.75rem;display:flex}.poll{border:1px solid var(--line);background:var(--bg);border-radius:16px;gap:6px;width:min(300px,100%);padding:12px;display:grid}.msg.mine .poll{justify-self:end}.poll-question{overflow-wrap:anywhere;align-items:flex-start;gap:6px;font-weight:600;display:flex}.poll-question svg{flex:none;width:18px;height:18px;margin-top:2px}button.poll-option{background:var(--raised);min-height:40px;color:var(--text);text-align:left;border:1.5px solid #0000;border-radius:10px;justify-content:space-between;padding:0 12px;position:relative;overflow:hidden}button.poll-option:disabled{cursor:default;opacity:1}button.poll-option.chosen{border-color:var(--text)}button.poll-option.won{border-color:var(--text);font-weight:600}.poll.closed button.poll-option{background:0 0;min-height:34px}.poll.closed button.poll-option:not(.won){color:var(--muted)}.poll-fill{background:var(--hover);background:color-mix(in srgb, var(--text) 12%, transparent);transition:width var(--mid) var(--ease);position:absolute;inset:0 auto 0 0}.poll-text,.poll-count{overflow-wrap:anywhere;align-items:center;gap:4px;min-width:0;display:flex;position:relative}.poll-text svg{flex:none;width:16px;height:16px}.poll-count{color:var(--muted);flex:none;font-size:.85rem}.poll-foot{color:var(--muted);justify-content:space-between;gap:8px;font-size:.75rem;display:flex}.composer{border-top:1px solid var(--line);align-items:flex-end;gap:4px;padding:6px 6px 6px 2px;display:flex}.composer textarea{background:var(--raised);min-width:0;min-height:40px;max-height:120px;color:inherit;font:inherit;resize:none;border:1.5px solid #0000;border-radius:22px;outline:none;flex:1;padding:9px 14px;font-size:16px;line-height:1.35}.composer textarea:focus{border-color:var(--accent)}button.send{background:var(--accent);width:40px;min-height:40px;color:var(--on-accent);border-radius:50%;flex:none;padding:0}button.send:disabled{background:var(--raised);color:var(--muted)}button.lyrics-size{background:var(--bg);background:color-mix(in srgb, var(--bg) 60%, transparent);width:32px;min-height:32px;color:var(--muted);border-radius:50%;padding:0;position:absolute;top:0;right:0}button.lyrics-size svg{width:18px;height:18px}button.lyrics-size:hover{color:var(--text)}.room-info{gap:10px}.room-settings{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:18px;margin-top:12px;padding-top:16px;display:grid}.room-settings h3{margin:0}.room-exits{border-top:1px solid var(--line);gap:4px;margin-top:12px;padding-top:16px;display:grid}.share-box{gap:12px;display:grid}.share-url{border:1px solid var(--line);border-radius:var(--radius);text-align:center;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;padding:18px 16px;font-size:1.05rem;font-weight:500;display:block}button.avatar-btn{background:0 0;border-radius:50%;min-height:0;padding:0}button.msg-author{min-height:0;color:var(--text);font:inherit;padding:0;font-weight:600;background:0 0!important}button.msg-author:hover{text-decoration:underline}.guest-mark{color:var(--muted);font-weight:400}.typing{min-height:18px;color:var(--muted);padding:0 16px;font-size:.75rem;font-style:italic}.sheet-body.person-card{text-align:center;justify-items:center;gap:10px}.sheet-body.person-card>.avatar{margin-top:8px}.person-bio{max-width:320px;color:var(--muted);overflow-wrap:anywhere}.person-where{border-radius:var(--radius);background:var(--raised);text-align:left;align-items:center;gap:10px;width:100%;padding:12px 14px;display:flex}.person-where .title{font-weight:600}.person-where .sub{color:var(--muted);font-size:.85rem}.person-actions{justify-items:center;gap:8px;width:100%;display:grid}button.danger-text{color:var(--danger)}.profile-sheet{gap:12px}.page{grid-template-columns:minmax(0,1fr);align-content:start;gap:26px;max-width:760px;margin:0 auto;padding:12px 0 32px;display:grid}.page.narrow{max-width:460px}.app.tabbed{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.app.tabbed .toast{bottom:calc(84px + env(safe-area-inset-bottom))}.page-head{justify-content:space-between;align-items:flex-end;gap:12px;padding-top:12px;display:flex}.page-head h1{font-size:2.45rem;line-height:1}.page>section{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.section-title{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:400}.section-head{justify-content:space-between;align-items:baseline;display:flex}.section-head h2{font-size:1.25rem}.tabbar{z-index:10;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg);justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{border-radius:var(--radius);max-width:140px;color:var(--muted);transition:color var(--fast);flex:1;justify-items:center;gap:2px;padding:6px 0;font-size:.65rem;text-decoration:none;display:grid}.tab:hover,.tab.active{color:var(--text)}.tab-icon{place-items:center;height:28px;display:grid;position:relative}.tab-icon svg{width:26px;height:26px}.tab .avatar{font-size:11px!important}.tab.active .avatar{box-shadow:0 0 0 2px var(--text)}.quick-actions{flex-wrap:wrap;gap:10px;display:flex}.quick-actions>button{white-space:nowrap;flex:140px}.quick-actions>button.quiet{flex:0 auto}.join-link{flex:100%;gap:8px;display:flex}.join-link input{min-width:0}.join-link button{flex:none}.room-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px 14px;display:grid}.room-card{min-width:0;color:inherit;transition:background-color var(--fast);border-radius:16px;align-content:start;gap:4px;margin:-8px;padding:8px;text-decoration:none;display:grid}.room-card:hover{background:var(--surface)}.room-card .room-sub+.room-sub{margin-top:-2px}.room-cover{aspect-ratio:1;border-radius:12px;place-items:center;margin-bottom:6px;display:grid;position:relative;overflow:hidden}.room-cover img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.room-poster{letter-spacing:-.04em;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;place-self:start stretch;padding:12px;font-size:clamp(1.25rem,5.8vw,1.75rem);font-weight:300;line-height:1;display:-webkit-box;overflow:hidden}.live-badge{background:var(--text);color:var(--bg);border-radius:4px;align-items:center;gap:6px;padding:3px 9px;display:flex;position:absolute;bottom:8px;left:8px}.live-badge .dot{background:var(--bg);margin:0}.room-name,.room-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-name{font-weight:500}.room-sub{color:var(--muted);font-size:.8rem}.room-card.skeleton .bone{width:70%}.room-card.skeleton .room-cover{box-shadow:none}.avatar-wrap{flex:none;position:relative}.online-dot{border:2px solid var(--bg);width:12px;height:12px;position:absolute;bottom:0;right:0}.relation{color:var(--muted);flex:none;font-size:.8rem}.empty-state{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);align-items:flex-start;gap:14px;padding:16px;font-size:.9rem;display:flex}.empty-state svg{width:28px;height:28px;color:var(--text);flex:none}.empty-state b{color:var(--text);margin-bottom:2px;display:block}.friends-view{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}label.search{cursor:text}.tabs{gap:6px;display:flex}.tabs button{background:var(--raised);min-height:36px;color:var(--muted);padding:0 14px}.tabs button.active{background:var(--text);color:var(--bg)}.badge-inline{background:var(--text);min-width:18px;color:var(--bg);border-radius:9px;margin-left:2px;padding:0 5px;font-size:.7rem;line-height:18px}.invite-link{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;padding:14px 16px;display:flex}.invite-link .grow{min-width:0}.invite-link .title{font-weight:600}.invite-link .sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.me-line{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:8px;display:flex}.me-line .title{font-weight:600}.me-line .sub{color:var(--muted);font-size:.8rem}.handle{color:var(--muted)}.profile-view{text-align:center;justify-items:center;gap:6px;padding-top:16px;display:grid}.profile-view h1{margin-top:6px;font-size:2.2rem}.profile-stats{color:var(--muted);gap:20px;margin-top:4px;display:flex}.profile-stats b{color:var(--text)}.profile-stats .link-plain{color:var(--muted);margin:0;display:inline}.profile-actions{gap:10px;margin-top:8px;display:flex}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:12px;display:grid}.avatar-tile{min-height:0;color:var(--text);background:0 0;justify-items:center;gap:6px;padding:6px;font-size:.8rem;display:grid;position:relative}.avatar-tile>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.avatar-tile .online-dot{top:46px;bottom:auto;right:calc(50% - 30px)}.settings{gap:12px;display:grid}.settings-group{border:1px solid var(--line);border-radius:14px;display:grid;overflow:hidden}.setting{text-align:left;background:0 0;border-radius:0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;min-height:60px;padding:12px 16px;font-size:1rem;font-weight:400;display:flex}.setting+.setting{border-top:1px solid var(--line)}.setting-text{flex:1 1 0;gap:2px;min-width:0;display:grid}.setting svg{flex:none;width:20px;height:20px}.settings-label{color:var(--muted);margin:8px 0 -4px;font-size:.8125rem;font-weight:500}.setting-text small{color:var(--muted);font-size:.8125rem}.setting-text .email{overflow-wrap:anywhere}.setting-action{color:var(--muted);font-size:.9375rem}button.setting-link:hover:not(:disabled){background:var(--raised)}button.setting-link:hover .setting-action{color:var(--text)}button.setting-signout{min-height:44px;color:var(--danger);background:0 0;justify-self:start;padding:0 4px;font-weight:500}button.setting-signout:hover:not(:disabled){text-underline-offset:4px;background:0 0;text-decoration:underline}.settings h2{margin-top:8px}input.code-input{letter-spacing:.3em;font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:500}.email-change .lead b{color:var(--text);overflow-wrap:anywhere;font-weight:500}.email-change-links{flex-wrap:wrap;justify-content:center;gap:8px 20px;display:flex}.profile-editor,.create-room{gap:18px}.profile-editor{display:grid}.photo-edit{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.field{gap:6px;display:grid}.field>span{color:var(--muted)}.field small{color:var(--muted);font-size:.75rem}.field small.ok{color:var(--text)}.field small.bad{color:var(--danger)}.field textarea{border-radius:var(--radius);background:var(--raised);width:100%;color:inherit;font:inherit;resize:vertical;border:1.5px solid #0000;outline:none;padding:12px 14px;font-size:16px}.field textarea:focus{border-color:var(--accent)}.handle-input{border-radius:var(--radius);background:var(--raised);border:1.5px solid #0000;align-items:center;padding-left:14px;display:flex}.handle-input:focus-within{border-color:var(--accent)}.handle-input>span{color:var(--muted)}.handle-input input{background:0 0!important;border:0!important;padding-left:2px!important}@media (width>=900px){.page-head h1{font-size:3rem}}.cover-wrap{place-items:center;display:grid;position:relative}button.unmute{background:var(--accent);min-height:52px;color:var(--on-accent);box-shadow:0 0 0 6px var(--scrim);animation:appear var(--mid) var(--ease), breathe 1.8s ease-in-out .2s infinite;padding:0 22px;position:absolute}@keyframes breathe{50%{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){button.unmute{animation:none}}.mini-player{right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:11;border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:2px;max-width:640px;margin:0 auto;padding:6px 4px 6px 6px;display:flex;position:fixed;left:8px;overflow:visible}.app.tabbed .mini-player{bottom:calc(70px + env(safe-area-inset-bottom))}.app.with-mini{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.app.tabbed.with-mini{padding-bottom:calc(146px + env(safe-area-inset-bottom))}.mini-progress{background:var(--text);border-radius:2px;max-width:calc(100% - 24px);height:2px;transition:width 1s linear;position:absolute;bottom:0;left:12px}button.mini-main{min-width:0;min-height:0;color:inherit;text-align:left;flex:1;justify-content:flex-start;align-items:center;gap:10px;padding:0;display:flex;background:0 0!important}.mini-main .cover{border-radius:8px;width:42px;height:42px}.mini-main .grow{min-width:0;display:grid}.mini-main .title,.mini-main .sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-main .title{font-size:.9rem;font-weight:600}.mini-main .sub{color:var(--muted);font-size:.75rem}button.mini-play{color:var(--text)}button.mini-play.voted{background:var(--text);color:var(--bg)}.volume.pop{position:relative}.volume-pop{z-index:16;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);animation:appear var(--mid) var(--ease);align-items:center;gap:4px;padding:6px 14px 6px 4px;display:flex;position:absolute;bottom:calc(100% + 12px);right:-40px}.volume-pop input[type=range]{width:150px}.dialog-backdrop{z-index:40;align-items:center}.dialog{border:1px solid var(--line);background:var(--surface);width:min(360px,100% - 32px);animation:appear var(--mid) var(--ease);border-radius:20px;gap:18px;padding:22px;display:grid}.dialog p{font-size:1rem;line-height:1.45}.dialog-actions{gap:10px;display:flex}.dialog-actions button{flex:1}button.danger-fill{background:var(--danger);color:var(--on-danger)}button.small.sent{color:var(--muted);font-weight:500}button.small.sent svg{width:16px;height:16px}.people-search .ghost{min-width:40px}.requests{border:1px solid var(--text);border-radius:var(--radius);padding:4px 14px 8px}.requests h3{color:var(--text)}.login{gap:14px;display:grid}.login .email{overflow-wrap:anywhere}.code-input{letter-spacing:.5em;text-align:center;font-variant-numeric:tabular-nums;font-weight:700;font-size:1.6rem!important}.login-links{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.onboarding{z-index:35;padding:0 max(20px, env(safe-area-inset-left));background:var(--bg);animation:fade var(--mid) var(--ease);position:fixed;inset:0;overflow-y:auto}.onboarding-head{gap:8px;padding-top:24px;display:grid}.onboarding-head h1{font-size:2.2rem}button.link.skip{justify-self:center}.track-title,.room-name,.section-head h2,.sheet-head h2,.track-card-head h2,.album-head h2,.sheet-body.person-card h2,.artist-hero h2,.artist-initial,.bar-title h1{font-family:var(--display);letter-spacing:-.02em}.room-name,.section-head h2,.sheet-head h2,.album-head h2,.sheet-body.person-card h2,.bar-title h1{font-weight:500}.artist-hero h2,.artist-initial{font-weight:300}.sheet-head h2{font-size:1.05rem}.dialog p{font-size:1rem;font-weight:500;line-height:1.4}.room-card .room-name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;line-height:1.2;display:-webkit-box}@media (width>=900px){.tabbar{border-top:0;border-bottom:1px solid var(--line);justify-content:flex-end;padding:10px max(24px,50vw - 380px);top:0;bottom:auto}.tab{flex:none;align-items:center;gap:8px;max-width:none;padding:6px 12px;font-size:.9rem;display:flex}.tab-icon svg{width:22px;height:22px}.app.tabbed{padding-top:72px;padding-bottom:0}.app.tabbed.with-mini{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.app.tabbed .mini-player{bottom:calc(8px + env(safe-area-inset-bottom))}.app.tabbed .toast{bottom:88px}}.room .toast{top:calc(max(12px, env(safe-area-inset-top)) + 60px);bottom:auto}.gate-now{border:1px solid var(--line);border-radius:var(--radius);text-align:left;align-items:center;gap:12px;padding:10px;display:flex}.gate-now .title,.gate-now .sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gate-now .title{font-weight:500}.gate-now .sub{color:var(--muted);font-size:.8rem}.member.offline .row{opacity:.55}.member-actions{flex-wrap:wrap;gap:8px;padding:0 0 10px 56px;display:flex}.vote-tally{color:var(--muted);font-variant-numeric:tabular-nums;font-variant-numeric:tabular-nums;justify-content:center;gap:18px;margin-top:-6px;font-size:.72rem;display:flex}.vote-tally .mine{color:var(--text)}button.round.ghost.voted,button.round.ghost.voted:hover{background:var(--text);color:var(--bg)}button.round.primary.voted{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--text)}.row .title,.row-open .title{white-space:normal;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box}.row button.small{min-height:34px;padding:0 10px}.row button.add{width:40px;min-height:40px}@media (width<=380px){.row{gap:10px}.row .cover{width:44px;height:44px}.row button.sent{gap:0;font-size:0}.row button.sent svg{width:18px;height:18px}}.room-grid{grid-template-columns:repeat(auto-fill,minmax(min(150px,50% - 7px),1fr));gap:18px 14px}.room-poster{font-size:clamp(1rem,5vw,1.75rem)}.page-head h1,.hero h1{font-size:clamp(1.9rem,9vw,2.45rem)}.track-title{font-size:clamp(1.45rem,7.5vw,2rem)}@media (width<=480px){.mini-volume{display:none}}@media (height<=720px){.player .cover.large{width:min(64vw,300px,30dvh);height:min(64vw,300px,30dvh)}.player:has(.lyrics-wrap) .cover.large{width:min(50vw,240px,20dvh);height:min(50vw,240px,20dvh)}.lyrics{height:5.2em;padding:1.8em 0}.player{gap:12px}}.track-status .added-by{text-transform:none;letter-spacing:0;font-family:var(--display);margin-top:2px;font-size:.85rem;display:block}@media (width<=420px){.invite-link{flex-direction:column;align-items:stretch}.invite-link .sub{white-space:normal;overflow-wrap:anywhere;overflow:visible}}@media (width<=480px){.player-actions .volume input[type=range]{display:none}}.room-cover,div.cover{background-color:var(--raised)}.aura{--strength:58%;z-index:-1;opacity:0;pointer-events:none;transition:opacity 1.6s var(--ease);position:fixed;inset:0;overflow:hidden}.aura.shown{opacity:1}.aura-layer{opacity:0;transition:opacity 2.4s ease-in-out;position:absolute;inset:0}.aura-layer.on{opacity:1;animation:2.4s ease-in-out fade}.aura-blob{background:radial-gradient(closest-side, color-mix(in oklab, var(--c) var(--strength), transparent), transparent);will-change:transform;border-radius:50%;width:95vmax;height:95vmax;position:absolute}.aura-blob.b1{animation:23s ease-in-out infinite alternate drift-a;top:-45vmax;left:-40vmax}.aura-blob.b2{animation:29s ease-in-out infinite alternate drift-b;top:-10vmax;right:-50vmax}.aura-blob.b3{animation:37s ease-in-out infinite alternate drift-c;bottom:-55vmax;left:-15vmax}.aura.still .aura-blob,:root.sheet-open .aura-blob{animation-play-state:paused}@keyframes drift-a{to{transform:translate(28vmax,18vmax)scale(1.15)}}@keyframes drift-b{to{transform:translate(-30vmax,22vmax)scale(.9)}}@keyframes drift-c{to{transform:translate(18vmax,-26vmax)scale(1.1)}}.aura:after{background:var(--aura-veil);content:"";position:absolute;inset:0}.room.tinted{--raised:color-mix(in srgb, var(--text) 7%, transparent);--hover:color-mix(in srgb, var(--text) 12%, transparent);--line:color-mix(in srgb, var(--text) 12%, transparent);--muted:color-mix(in srgb, var(--text) 66%, transparent)}.room.tinted .dock{background:0 0}.room.tinted .sheet{--raised:var(--raised-solid);--hover:var(--hover-solid);--line:var(--line-solid);--muted:var(--muted-solid)}.vote-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;gap:10px;max-width:320px;padding:14px 16px;display:grid}.vote-card-question{overflow-wrap:anywhere;font-weight:500;line-height:1.3}.vote-meter{background:var(--raised);border-radius:2px;height:4px;overflow:hidden}.vote-meter span{border-radius:inherit;background:var(--text);height:100%;transition:width var(--mid) var(--ease);display:block}.vote-card-foot{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:.8125rem;display:flex}.vote-card-foot button.on{background:var(--text);color:var(--bg)}.vote-card.done .vote-card-question{color:var(--muted)}.vote-card.passed .vote-card-foot{color:var(--text)}
