:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;box-sizing:border-box;flex-direction:column;width:100%;min-height:100svh;margin:0 auto;display:flex}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.app{text-align:center;box-sizing:border-box;width:100%;max-width:720px;margin:2.5rem auto;padding:0 1.25rem}header{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.app.room header{justify-content:space-between}.header-meta{align-items:center;gap:.75rem;display:flex}header h1{letter-spacing:-.5px;margin:0;font-size:2rem;line-height:1}header h1 a{color:inherit;align-items:center;gap:.5rem;text-decoration:none;display:inline-flex}header h1 a:hover{color:var(--accent)}.logo-mark{width:auto;height:1.4rem;position:relative}.wordmark{font-size:inherit;font-weight:inherit;text-box:trim-both cap alphabetic;line-height:1}@supports not (text-box:trim-both cap alphabetic){.logo-mark{top:-.065em}}.landing-logo{width:auto;height:4.5rem;margin:0 auto 1.5rem;display:block}header span{font-size:.85rem}.ok{color:#22c55e}.bad{color:#ef4444}input{font:inherit;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:8px;min-width:0;padding:.55rem .9rem}input:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg);outline:none}input::placeholder{color:var(--text);opacity:.7}button{font:inherit;cursor:pointer;border:1px solid var(--accent-border);background:var(--accent);color:var(--bg);border-radius:8px;padding:.55rem 1.1rem;font-weight:600;transition:filter .15s,transform .12s,background .15s,border-color .15s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}button:active:not(:disabled){transition-duration:60ms;transform:translateY(0)scale(.97)}button:focus-visible,.meta-chip:focus-visible,.under-tab:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.queue-item,.search-result-row,.end-tile,.user-chip{transition:background .15s,transform .12s,border-color .15s}.search-result-row.is-active,.queue-item:hover,.search-result-row:hover{background:var(--accent-bg);border-radius:10px}.end-tile:active,.queue-action:active,.search-result:active{transform:scale(.97)}.queue-action,.search-result-queue,.search-results-close,.report-link,.emoji-toggle{transition:background .15s,color .15s,transform .12s}@media (prefers-reduced-motion:reduce){button,.queue-item,.end-tile,.meta-chip{transition:none!important;transform:none!important}}button:disabled{opacity:.6;cursor:default}.load-bar{gap:.5rem;margin-bottom:1.5rem;display:flex}.load-bar input{flex:1}.load-bar button{white-space:nowrap}.search-results{border:1px solid var(--border);background:var(--bg);box-shadow:var(--shadow);border-radius:12px;margin:-.75rem 0 1.5rem;padding:.4rem}.search-results-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;padding:.15rem .4rem .4rem;font-size:.8rem;display:flex}.search-results-close{color:var(--text);white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:.2rem .5rem;font-size:.8rem;font-weight:500}.search-results-close:hover:not(:disabled){background:var(--accent-bg);color:var(--accent);filter:none}.search-results-list{flex-direction:column;gap:.15rem;max-height:20rem;margin:0;padding:.4rem 0 0;list-style:none;display:flex;overflow-y:auto}.search-result-row{align-items:center;gap:.25rem;display:flex}.search-result-row .search-result{flex:1;min-width:0}.search-result-queue{width:2rem;height:2rem;color:var(--accent);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex}.search-result-queue:hover:not(:disabled){background:var(--accent-bg);filter:none}.queue-link{color:var(--accent);border-color:var(--border);white-space:nowrap;background:0 0}.queue-link:hover:not(:disabled){background:var(--accent-bg);filter:none}.search-result{width:100%;color:inherit;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.75rem;padding:.4rem;font-weight:400;display:flex}.search-result:hover{background:var(--accent-bg);filter:none}.search-result img{aspect-ratio:16/9;object-fit:cover;background:var(--code-bg);border-radius:6px;flex-shrink:0;width:110px}.search-result-info{flex-direction:column;gap:.15rem;min-width:0;display:flex}.search-result-title{color:var(--text-h);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.search-result-meta{font-size:.8rem}#yt-player{--yt-clip:clamp(64px, 14%, 150px);aspect-ratio:16/9;border-radius:12px;width:100%;max-width:640px;margin:0 auto;position:relative;overflow:hidden}.player-frame{width:100%;max-width:640px;margin:0 auto;position:relative}.unmute-nudge{z-index:2;color:#fff;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;border:0;border-radius:999px;padding:.45rem .8rem;font-size:.85rem;position:absolute;top:.75rem;left:.75rem}.unmute-nudge:hover{background:#000000e6}#yt-player iframe{left:0;top:calc(-1 * var(--yt-clip));width:100%;height:calc(100% + 2 * var(--yt-clip));border:0;border-radius:0;display:block;position:absolute}.load-error.player-error{max-width:640px;margin:.75rem auto 0}.player-frame.is-fullscreen{background:#000;justify-content:center;align-items:center;max-width:none;display:flex}.player-frame.is-fullscreen #yt-player{aspect-ratio:auto;border-radius:0;width:100%;max-width:none;height:100%}.player-frame.is-fullscreen #yt-player iframe{border-radius:0;width:100%!important;height:calc(100% + 2 * var(--yt-clip))!important;aspect-ratio:auto!important}.player-fs-button{border-color:var(--border);color:var(--text);background:0 0;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.85rem;font-weight:500;display:inline-flex}.player-fs-button:hover:not(:disabled){background:var(--accent-bg);color:var(--accent);filter:none}.fs-chat-toggle{z-index:4;color:#fff;cursor:pointer;background:#0009;border:0;border-radius:8px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;display:flex;position:absolute;bottom:4rem;right:.75rem}.fs-chat-toggle:hover{background:#000000d9}.queue-item.queue-radio{opacity:.85}.fs-chat-toggle{opacity:1;transition:opacity .25s}.player-frame .fs-chat-toggle{opacity:.4}.player-frame .fs-chat-toggle:hover,.player-frame .fs-chat-toggle:focus-visible{opacity:1}.fs-chat-badge{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.7rem;font-weight:700;line-height:1.1rem;position:absolute;top:-.35rem;right:-.35rem}.fs-chat{z-index:3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:left;background:#000000a6;border-radius:12px;flex-direction:column;gap:.5rem;width:320px;max-width:80vw;padding:.6rem;display:flex;position:absolute;top:.75rem;bottom:9.5rem;right:.75rem}.fs-chat .chat-messages{flex:1;min-height:0;max-height:none;overflow-y:auto}.fs-chat .chat-bubble{color:#fff;background:#ffffff24}.fs-chat .chat-msg.own .chat-bubble{background:#6366f180}.fs-chat .chat-empty{color:#fff}.fs-chat-bar{gap:.4rem;display:flex}.fs-chat-bar input{color:#fff;min-width:0;font:inherit;background:#00000080;border:1px solid #ffffff40;border-radius:8px;flex:1;padding:.45rem .6rem;font-size:.85rem}.fs-chat-bar button{padding:.45rem .7rem;font-size:.85rem}.fs-chat .emoji-panel{box-shadow:none;background:#0000008c;border-color:#fff3;flex-shrink:0;position:static}.fs-chat .emoji-panel .emoji-grid{max-height:9rem}.fs-chat .emoji-search{color:#fff;background:#00000080;border-color:#ffffff40}.fs-chat .emoji-panel button{color:#fff}.player-frame.is-idle,.player-frame.is-idle .player-click{cursor:none}.player-title{z-index:2;color:#fff;text-align:left;text-shadow:0 1px 3px #0009;opacity:0;pointer-events:none;background:linear-gradient(#000000b8,#0000);border-radius:12px 12px 0 0;padding:.7rem .9rem 2rem;font-size:.9rem;font-weight:600;transition:opacity .12s;position:absolute;top:0;left:0;right:0}.player-title.is-shown{opacity:1}.player-title span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.pbar-autoplay{color:#fff;cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:.35rem;height:30px;padding:0 .5rem;font-size:.78rem;font-weight:600;display:inline-flex}.pbar-autoplay:hover{background:#ffffff29}.pbar-autoplay input{cursor:pointer;margin:0}.pbar-settings{display:inline-flex;position:relative}.pbar-menu{text-align:left;background:#0c0c10f5;border-radius:10px;flex-direction:column;gap:.1rem;min-width:8.5rem;padding:.3rem;display:flex;position:absolute;bottom:calc(100% + .4rem);right:0;box-shadow:0 10px 30px #00000073}.pbar-menu-head{letter-spacing:.08em;text-transform:uppercase;opacity:.6;margin:.2rem .5rem .3rem;font-size:.68rem}.pbar-menu-item{color:#fff;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;padding:.35rem .5rem;font-size:.82rem;font-weight:500;display:flex}.pbar-menu-item:hover{background:#ffffff24}.pbar-menu-item.is-on:after{content:"✓";opacity:.9;font-size:.8rem}.pbar-btn.is-on{background:#ffffff2e}.meta-chip{box-sizing:border-box;border:1px solid var(--border);min-height:1.85rem;font:inherit;color:var(--text-h);background:var(--bg);cursor:pointer;border-radius:999px;align-self:center;align-items:center;gap:0;padding:.3rem .7rem;font-size:.78rem;font-weight:600;line-height:1;transition:border-color .15s,background .15s,transform .12s;display:inline-flex;position:relative}.meta-chip:hover:not(:disabled),.meta-chip:focus-visible{border-color:var(--accent-border);background:var(--accent-bg);color:var(--accent);filter:none}.meta-chip.is-copied,.meta-chip.is-copied:hover{color:#fff;background:#22c55e;border-color:#22c55e}.meta-chip.is-copied .meta-value{color:#fff}.chip-lap{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.chip-lap rect{x:0;y:0;ry:50%;fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-dasharray:12 88;stroke-dashoffset:0;width:100%;height:100%;animation:1s linear forwards chip-lap}@keyframes chip-lap{0%{stroke-dashoffset:0;opacity:1}92%{opacity:1}to{stroke-dashoffset:-100px;opacity:0}}.meta-inner{min-width:0;font-size:inherit;align-items:baseline;display:inline-flex}.meta-label,.meta-value{font-size:inherit;white-space:nowrap;align-items:center;line-height:1;display:inline-flex}.meta-value{max-width:0;font-size:inherit;white-space:nowrap;font-family:var(--mono);letter-spacing:.04em;color:var(--accent);opacity:0;margin-left:0;transition:max-width .22s,margin .22s,opacity .18s;overflow:hidden}.meta-chip:hover .meta-value,.meta-chip:focus-visible .meta-value{opacity:1;max-width:9rem;margin-left:.4rem}.meta-chip:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.meta-chip:before{animation:none}}.conn{cursor:default;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;display:inline-flex}.conn.is-live{color:#22c55e}.conn.is-connecting{color:#eab308}.conn.is-down{color:#ef4444}.conn-dot{background:currentColor;border-radius:50%;flex:none;width:.5rem;height:.5rem;position:relative}.conn.is-live .conn-dot:after{content:"";background:currentColor;border-radius:50%;width:100%;height:100%;margin:-50% 0 0 -50%;animation:1.9s ease-out infinite conn-pulse;position:absolute;top:50%;left:50%}.conn.is-connecting .conn-dot:after{content:"";background:currentColor;border-radius:50%;width:100%;height:100%;margin:-50% 0 0 -50%;animation:1.1s ease-out infinite conn-pulse;position:absolute;top:50%;left:50%}@keyframes conn-pulse{0%{opacity:.45;transform:scale(1)}to{opacity:0;transform:scale(2.1)}}@media (prefers-reduced-motion:reduce){.conn-dot:after{animation:none!important}}.report-kind{gap:.5rem;margin:0 0 .75rem;display:flex}.report-kind button{border:1px solid var(--border);color:var(--text);background:0 0;flex:1;padding:.5rem .6rem;font-size:.85rem;font-weight:600}.report-kind button:hover{border-color:var(--accent-border);color:var(--text-h);filter:none}.report-kind button.is-on{border-color:var(--accent-border);background:var(--accent-bg);color:var(--accent)}.player-click{z-index:1;cursor:pointer;position:absolute;inset:0}.player-bar{z-index:2;color:#fff;opacity:0;pointer-events:none;background:linear-gradient(#0000,#000000d1);border-radius:0 0 12px 12px;flex-direction:column;gap:.15rem;padding:1.6rem .6rem .35rem;transition:opacity .12s,transform .12s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(6px)}.player-bar.is-shown{opacity:1;pointer-events:auto;transform:none}@media (prefers-reduced-motion:reduce){.player-bar{transition:none}}.pbar-track{cursor:pointer;touch-action:none;align-items:center;height:14px;display:flex;position:relative}.pbar-rail,.pbar-buffered,.pbar-played{border-radius:3px;height:3px;position:absolute;left:0}.pbar-rail{background:#ffffff47;right:0}.pbar-buffered{background:#ffffff73}.pbar-played{background:var(--accent,#8b5cf6)}.pbar-knob{background:var(--accent,#8b5cf6);opacity:0;border-radius:50%;width:11px;height:11px;margin-left:-5.5px;transition:opacity 90ms;position:absolute}.pbar-track:hover .pbar-knob,.pbar-track:active .pbar-knob{opacity:1}.pbar-row{align-items:center;gap:.35rem;display:flex}.pbar-btn{color:#fff;min-width:30px;height:30px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:0 .35rem;font-size:.75rem;font-weight:700;display:inline-flex}.pbar-btn:hover{background:#ffffff29}.pbar-cc{letter-spacing:.03em;opacity:.75}.pbar-cc.is-empty{opacity:.42}.pbar-cc.is-on{opacity:1;box-shadow:inset 0 -2px}.pbar-volume{align-items:center;display:flex}.pbar-slider{cursor:pointer;touch-action:none;opacity:0;width:0;height:30px;margin-left:0;transition:width .16s,opacity .14s,margin .16s;position:relative;overflow:hidden}.pbar-volume:hover .pbar-slider{opacity:1;width:78px;margin-left:.4rem;margin-right:.2rem}.pbar-volume:has(:focus-visible) .pbar-slider{opacity:1;width:78px;margin-left:.4rem;margin-right:.2rem}.pbar-slider-rail{background:#ffffff40;border-radius:999px;height:4px;margin-top:-2px;position:absolute;top:50%;left:6px;right:6px}.pbar-slider-fill{background:var(--accent,#8b5cf6);pointer-events:none;border-radius:999px;height:4px;margin-top:-2px;position:absolute;top:50%;left:6px}.pbar-slider-thumb{pointer-events:none;background:#fff;border-radius:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;position:absolute;top:50%}.hover-menu{margin-bottom:-.5rem;padding-bottom:.5rem;display:inline-flex;position:relative}.friends-popover,.invite-popover,.feedback-popover{z-index:40;border:1px solid var(--border);background:var(--bg);min-width:15rem;box-shadow:var(--shadow);text-align:left;border-radius:12px;margin-top:0;padding:.75rem;animation:.13s ease-out menu-in;position:absolute;top:100%;right:0}.friends-popover:before,.invite-popover:before,.feedback-popover:before{content:"";height:.55rem;position:absolute;bottom:100%;left:0;right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.invite-head{letter-spacing:.02em;color:var(--text-h);margin:0 0 .5rem;font-size:.78rem;font-weight:700}.invite-row{align-items:stretch;gap:.4rem;margin-bottom:.6rem;display:flex}.invite-link{background:var(--code-bg);min-width:0;font-family:var(--mono);white-space:nowrap;text-overflow:ellipsis;border-radius:8px;flex:1;align-items:center;padding:.35rem .5rem;font-size:.72rem;display:flex;overflow:hidden}.invite-copy{white-space:nowrap;align-items:center;padding:.35rem .7rem;font-size:.76rem;line-height:1;display:inline-flex}.invite-qr{background:#fff;border-radius:10px;width:9.5rem;height:9.5rem;margin:.85rem auto .6rem;padding:.35rem;display:block}.invite-note{color:var(--text);text-align:center;margin:0;font-size:.72rem}.feedback-popover{width:21rem;padding:0}.feedback-popover .report-dialog{width:100%;max-height:min(28rem,70svh);box-shadow:none;border:0;border-radius:12px;gap:.4rem;padding:.85rem}.feedback-popover .report-title{font-size:.95rem}.feedback-popover .report-lead{font-size:.78rem}.feedback-popover .report-text{min-height:5rem}.feedback-popover .report-kind button{padding:.35rem .4rem;font-size:.76rem}.emoji-tabs{border-bottom:1px solid var(--border);gap:.1rem;margin-bottom:.4rem;padding-bottom:.3rem;display:flex;overflow-x:auto}.emoji-tabs button{opacity:.55;background:0 0;border:0;border-radius:8px;flex:none;padding:.25rem .35rem;font-size:1rem;line-height:1;transition:opacity .12s,background .12s}.emoji-tabs button:hover{opacity:1;background:var(--accent-bg);filter:none}.emoji-tabs button.is-active{opacity:1;background:var(--accent-bg)}.emoji-empty{color:var(--text);text-align:center;grid-column:1/-1;margin:.5rem 0;font-size:.8rem}.pbar-switch{appearance:none;box-sizing:content-box;cursor:pointer;background:#ffffff4d;border:0;border-radius:999px;flex:none;width:30px;min-width:0;height:16px;margin:0;padding:0;transition:background .18s;position:relative}.pbar-switch:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .18s;position:absolute;top:2px;left:2px}.pbar-switch:checked{background:var(--accent,#8b5cf6)}.pbar-switch:checked:after{transform:translate(14px)}.pbar-switch:focus-visible{outline-offset:2px;outline:2px solid #fff}.pbar-time{font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:.35rem;padding-left:.2rem;font-size:.75rem}.pbar-dim{opacity:.7}.pbar-gap{flex:1}.end-overlay-close{z-index:1;color:#fff;background:#ffffff1f;border:0;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;line-height:0;display:flex;position:absolute;top:.5rem;right:.6rem}.end-overlay-close:hover{filter:none;background:#ffffff40}.end-overlay{z-index:3;color:#fff;text-align:center;background:#0a0a0ef7;border-radius:12px;padding:1rem;position:absolute;inset:0;overflow-y:auto}.player-frame.is-fullscreen .end-overlay{border-radius:0}.end-overlay-head{margin:.5rem 0 .25rem;font-size:1.05rem;font-weight:700}.end-overlay-sub{opacity:.8;margin:0 0 .9rem;font-size:.85rem}.end-next{text-align:left;background:#ffffff12;border-radius:12px;align-items:center;gap:.8rem;max-width:26rem;margin:.4rem auto .9rem;padding:.6rem;display:flex}.end-next-thumb{aspect-ratio:16/9;object-fit:cover;border-radius:8px;flex:none;width:8rem}.end-next-meta{flex-direction:column;gap:.15rem;min-width:0;display:flex}.end-next-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.9rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.end-next-channel{opacity:.7;font-size:.78rem}.end-next-count{font-variant-numeric:tabular-nums;opacity:.9;margin-top:.15rem;font-size:.8rem}.end-next-actions{justify-content:center;gap:.6rem;display:flex}.end-next-play,.end-next-cancel{font:inherit;cursor:pointer;border:0;border-radius:999px;padding:.45rem 1rem;font-size:.85rem;font-weight:600}.end-next-play{color:#111;background:#fff}.end-next-cancel{color:#fff;background:#ffffff24}.end-next-play:hover{background:#ffffffd9}.end-next-cancel:hover{background:#ffffff3d}.end-overlay-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;max-width:56rem;margin:0 auto;display:grid}.end-tile{color:#fff;font:inherit;text-align:left;cursor:pointer;background:#ffffff0f;border:0;border-radius:10px;flex-direction:column;gap:.3rem;padding:.4rem;display:flex}.end-tile:hover{background:#ffffff24}.end-tile img{aspect-ratio:16/9;object-fit:cover;border-radius:6px;width:100%}.end-tile-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.end-tile-channel{opacity:.7;font-size:.72rem}.landing-account{opacity:.85;margin-top:2rem;font-size:.85rem}.landing-account-pitch{margin-bottom:.6rem}.sign-in{justify-content:center;display:flex}.friends{text-align:left;max-width:26rem;margin-top:1.5rem}.landing .friends{margin-inline:auto}.friends h2{margin-bottom:.5rem;font-size:1rem}.friends h3{opacity:.7;margin:1rem 0 .4rem;font-size:.8rem;font-weight:600}.friends-code{margin-bottom:.6rem;font-size:.85rem}.friends-code code{font-family:var(--mono);letter-spacing:.08em}.friends-note,.friends-empty{opacity:.75;margin-top:.6rem;font-size:.8rem}.friends-list{flex-direction:column;gap:.4rem;margin:.6rem 0 0;padding:0;list-style:none;display:flex}.friends-list li{justify-content:space-between;align-items:center;gap:.75rem;font-size:.9rem;display:flex}.friend-name{align-items:baseline;gap:.5rem;min-width:0;display:flex}.friend-here{opacity:.65;white-space:nowrap;font-size:.75rem}.friend-where{opacity:.7;white-space:nowrap;font-size:.7rem}.friend-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.friend-actions button:not(.link-button){padding:.25rem .6rem;font-size:.8rem}.friend-open{min-width:0;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-radius:8px;flex:auto;align-items:baseline;gap:.5rem;margin-left:-.35rem;padding:.15rem .35rem;display:flex}.friend-open:hover:not(:disabled){background:var(--accent-bg);filter:none}.friend-open .friend-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.friend-status{background:#94a3b8;border-radius:50%;flex-shrink:0;align-self:center;width:.5rem;height:.5rem}.friend-status.in-room{background:#22c55e}.friend-status.online{background:#22d3ee}.friend-row.offline{opacity:.55}.friend-row.offline:hover{opacity:1}.friend-unread{background:var(--accent);min-width:1.05rem;height:1.05rem;color:var(--bg);border-radius:999px;justify-content:center;align-self:center;align-items:center;padding:0 .28rem;font-size:.68rem;font-weight:600;line-height:1;display:inline-flex}.friends.dm{flex-direction:column;gap:.5rem;display:flex}.dm-head{align-items:center;gap:.5rem;min-width:0;display:flex}.dm-back{color:var(--accent);background:0 0;border:0;border-radius:8px;padding:.1rem .45rem;font-size:1.1rem;line-height:1.2}.dm-back:hover:not(:disabled){background:var(--accent-bg);filter:none}.dm-with{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dm-retention{opacity:.7;margin:0;font-size:.72rem}.dm-messages{min-height:5rem;max-height:15rem;padding-right:.15rem}.dm-bar{margin-bottom:0}.dm-bar input{padding:.4rem .7rem;font-size:.9rem}.dm-bar button{padding:.4rem .8rem;font-size:.85rem}.toolbar-actions{flex-shrink:0;align-items:center;gap:.5rem;display:flex;position:relative}.friends-menu{position:static}.friends-toggle{white-space:nowrap;gap:.4rem}.friends-toggle:hover:not(:disabled),.friends-toggle[aria-expanded=true]{background:var(--accent-bg);filter:none}.friends-badge{background:var(--accent,#6366f1);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.15rem;height:1.15rem;padding:0 .3rem;font-size:.7rem;line-height:1;display:inline-flex}.friends-badge.unread{background:#ef4444}.friends-dot{background:#ef4444;border-radius:50%;width:.45rem;height:.45rem}.friends-popover{z-index:30;border:1px solid var(--border,#80808040);background:var(--bg,#fff);text-align:left;border-radius:12px;width:min(22rem,100vw - 2rem);max-height:min(26rem,60vh);padding:.9rem 1rem 1rem;position:absolute;top:calc(100% + .5rem);right:0;overflow-y:auto;box-shadow:0 12px 32px #0000002e}@media (prefers-color-scheme:dark){.friends-popover{background:var(--bg,#16161a)}}@media (width<=640px){.friends-popover{box-sizing:border-box;width:auto;max-height:70vh;position:fixed;inset:auto .75rem .75rem}}.friends-popover .friends{max-width:none;margin-top:0}.friends-popover .friends h2{display:none}.invite-toast{z-index:20;color:#fff;background:#000000d9;border-radius:999px;align-items:center;gap:.75rem;max-width:calc(100vw - 2rem);padding:.7rem 1rem;font-size:.9rem;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #0000004d}.invite-toast button:not(.link-button){padding:.25rem .75rem;font-size:.8rem}.invite-toast .link-button{color:#fff;opacity:.7}.link-button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.empty-state{aspect-ratio:16/9;box-sizing:border-box;border:1px dashed var(--border);width:100%;max-width:640px;color:var(--text);opacity:.8;border-radius:12px;justify-content:center;align-items:center;margin:0 auto;padding:1rem;display:flex}.load-error{color:#ef4444;margin:-.75rem 0 1rem;font-size:.85rem}.pip-hint{display:none}@media (hover:none) and (pointer:coarse){.pip-hint{opacity:.8;margin-top:.75rem;font-size:.8rem;display:block}}.debug-hud{font-family:var(--mono);opacity:.7;white-space:pre-line;margin-top:.75rem;font-size:.75rem;line-height:1.5}.queue{border:1px solid var(--border);text-align:left;border-radius:12px;margin-top:1rem;padding:.6rem .75rem}.queue-head{color:var(--text-h);align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.queue-head.under-tabs{border-bottom:1px solid var(--border);gap:1.1rem;margin-top:-.35rem;margin-bottom:.6rem;padding-bottom:.15rem}.queue-count{background:var(--accent-bg);color:var(--accent);border-radius:999px;padding:0 .5rem;font-size:.75rem}.queue-list{flex-direction:column;gap:.35rem;max-height:14rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.queue-item{border-radius:10px;align-items:center;gap:.6rem;padding:.3rem .4rem;display:flex}.queue-item img{aspect-ratio:16/9;object-fit:cover;background:var(--code-bg);border-radius:6px;flex-shrink:0;width:64px}.queue-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.queue-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.queue-meta{font-size:.75rem}.queue-action{width:1.75rem;height:1.75rem;color:var(--text);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.85rem;line-height:1;display:inline-flex}.queue-action:hover:not(:disabled){background:var(--accent-bg);color:var(--accent);filter:none}.autoplay-toggle{color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:.35rem;margin-left:auto;font-size:.78rem;font-weight:500;display:inline-flex}.autoplay-toggle input{accent-color:var(--accent);cursor:pointer;margin:0}.autoplay-note{opacity:.7;margin-bottom:.5rem;font-size:.72rem}.radio-status{color:var(--accent);margin-bottom:.5rem;font-size:.78rem}.radio-status.is-dry{color:var(--text);opacity:.8}.chat{border:1px solid var(--border);text-align:left;border-radius:12px;flex-direction:column;gap:.75rem;margin-top:1.75rem;padding:.75rem;display:flex}.chat-messages{flex-direction:column;gap:.5rem;max-height:16rem;display:flex;overflow-y:auto}.chat-empty{text-align:center;opacity:.7;margin:.5rem 0;font-size:.85rem}.chat-msg{flex-direction:column;align-items:flex-start;gap:.15rem;display:flex}.chat-msg.own{align-items:flex-end}.chat-name{color:var(--accent);padding:0 .25rem;font-size:.7rem;font-weight:600}.chat-bubble{background:var(--code-bg);color:var(--text-h);overflow-wrap:anywhere;white-space:pre-wrap;border-radius:4px 12px 12px;max-width:85%;padding:.4rem .75rem;font-size:.9rem;line-height:1.4}.chat-msg.own .chat-bubble{background:var(--accent-bg);border-radius:12px 4px 12px 12px}.chat-head{color:var(--text-h);justify-content:space-between;align-items:center;font-size:.8rem;font-weight:600;display:flex}.chat-mute{background:0 0;border:none;padding:.1rem .3rem;font-size:1rem;line-height:1}.chat-mute:hover:not(:disabled){background:var(--accent-bg);filter:none}.chat-msg.grouped{margin-top:-.35rem}.chat-msg.grouped .chat-bubble{border-radius:12px}.chat-bubble.emoji-only,.chat-msg.own .chat-bubble.emoji-only{background:0 0;padding:0 .25rem;font-size:1.9rem;line-height:1.25}.chat-bar-wrap{position:relative}.chat-bar{margin-bottom:0}.emoji-toggle{border-color:var(--border);background:0 0;padding:.55rem .7rem}.emoji-toggle:hover:not(:disabled){background:var(--accent-bg);filter:none}.emoji-panel:after{content:"";height:.6rem;position:absolute;top:100%;left:0;right:0}.emoji-panel{z-index:5;background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:12px;padding:.4rem;position:absolute;bottom:calc(100% + .5rem);left:0;right:0}.emoji-search{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;color:inherit;border-radius:8px;margin-bottom:.4rem;padding:.35rem .6rem;font-size:.85rem}.emoji-grid{grid-template-columns:repeat(8,1fr);align-content:start;gap:.1rem;height:11.5rem;max-height:11rem;display:grid;overflow-y:auto}.chat-msg.typing .chat-bubble{align-items:center;gap:.28rem;padding:.55rem .8rem;display:inline-flex}.typing-bubble i{opacity:.35;background:currentColor;border-radius:50%;width:.4rem;height:.4rem;animation:1.2s ease-in-out infinite typing-bounce}.typing-bubble i:nth-child(2){animation-delay:.2s}.typing-bubble i:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-.2rem)}}@media (prefers-reduced-motion:reduce){.typing-bubble i{opacity:.7;animation:none}}.chat-notice{color:#d9534f;margin:0 0 .25rem;padding:0 .25rem;font-size:.78rem}.emoji-panel button{background:0 0;border:none;border-radius:8px;padding:.3rem 0;font-size:1.25rem;line-height:1}.emoji-panel button:hover:not(:disabled){background:var(--accent-bg);filter:none}@media (width>=900px){.app.room{max-width:none}.room-main{grid-template-columns:minmax(0,1fr) 320px;grid-template-areas:"video chat""video recs";align-items:start;gap:1.25rem;display:grid;container-type:inline-size}.room-video{grid-area:video;min-width:0}.room-chat{grid-area:chat}.room-recs{grid-area:recs;min-width:0}.room-recs .queue{margin-top:0}.room-video #yt-player,.room-video .player-frame,.room-video .empty-state{max-width:none}.room-chat{height:calc(56.25cqw - 180px - .703125rem);min-height:15rem;position:relative}.room-chat .chat{box-sizing:border-box;margin-top:0;position:absolute;inset:0}.room-chat .chat-messages{flex:1;min-height:0;max-height:none}}.landing{margin-top:14vh}.landing h1{letter-spacing:-1.5px;margin:0;font-size:3.5rem}.tagline{max-width:26rem;margin:1.1rem auto 2.5rem}.landing-actions{flex-direction:column;align-items:center;gap:1rem;display:flex}.landing-actions>button{padding:.7rem 1.6rem;font-size:1rem}.landing-divider{opacity:.8;font-size:.85rem}.name-gate{margin-top:1.5rem}.name-gate p{margin-bottom:.75rem}.room-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.user-list{flex-wrap:wrap;flex:auto;justify-content:flex-start;gap:.4rem;min-width:0;display:flex}.user-chip{background:var(--accent-bg);color:var(--accent);border-radius:999px;padding:.2rem .65rem;font-size:.8rem;font-weight:500}.copy-link{white-space:nowrap;color:var(--accent);background:0 0;font-size:.85rem;font-weight:500}.copy-link:hover:not(:disabled){background:var(--accent-bg);filter:none}.link-page{text-align:left;max-width:34rem}.link-page header{justify-content:flex-start}.link-lead{margin:.75rem 0 1.25rem;font-size:.95rem}.link-warning{color:var(--text-h);background:#ef444414;border:1px solid #ef444466;border-left-width:3px;border-radius:10px;margin:0 0 1.25rem;padding:.75rem .9rem;font-size:.88rem;line-height:1.45}.link-code{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:1.1rem}.link-bar{margin-bottom:.75rem}.link-note{opacity:.7;font-size:.8rem}.link-done{background:#22c55e14;border:1px solid #22c55e66;border-radius:12px;padding:.9rem 1rem}.link-done .link-lead{margin:0}.app-footer{margin-top:2.5rem;padding-bottom:.5rem}.report-link:hover:not(:disabled){background:var(--accent-bg);color:var(--accent);opacity:1;filter:none}.report-backdrop{z-index:40;background:#00000073;justify-content:center;align-items:center;padding:.75rem;display:flex;position:fixed;inset:0;overflow-y:auto}.report-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);text-align:left;border-radius:14px;flex-direction:column;gap:.5rem;width:min(26rem,100%);max-height:calc(100svh - 1.5rem);padding:1.1rem;display:flex;overflow-y:auto;box-shadow:0 12px 32px #00000040}.report-dialog.is-dragging{border-color:var(--accent-border);box-shadow:0 12px 32px #00000040, inset 0 0 0 2px var(--accent-bg)}.report-title{margin:0;font-size:1.05rem}.report-lead{opacity:.85;font-size:.82rem}.report-text{font:inherit;box-sizing:border-box;resize:vertical;width:100%;min-height:6rem;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.55rem .7rem;font-size:.9rem}.report-text:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px var(--accent-bg);outline:none}.report-text::placeholder{color:var(--text);opacity:.7}.report-count,.report-retention{opacity:.7;font-size:.72rem}.report-retention{margin-top:-.15rem}.report-file{display:none}.report-attach{color:var(--text);border:1px dashed var(--border);background:0 0;padding:.6rem;font-size:.78rem;font-weight:500}.report-attach:hover:not(:disabled){background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent);filter:none}.report-thumb{border:1px solid var(--border);border-radius:10px;align-self:flex-start;max-width:100%;padding:.3rem;line-height:0;position:relative}.report-thumb img{border-radius:6px;max-width:100%;max-height:9rem}.report-thumb-meta{color:#fff;background:#000000a6;border-radius:999px;padding:.1rem .4rem;font-size:.65rem;line-height:1.5;position:absolute;bottom:.55rem;left:.55rem}.report-thumb-remove{border-radius:50%;width:1.5rem;height:1.5rem;padding:0;font-size:.75rem;line-height:1;position:absolute;top:-.5rem;right:-.5rem}.report-actions{justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.feedback-popover .report-actions{justify-content:stretch}.feedback-popover .report-actions button{flex:1}.report-cancel{border-color:var(--border);color:var(--text);background:0 0}.report-cancel:hover:not(:disabled){background:var(--accent-bg);filter:none}.report-error{margin:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.under-tabs{align-items:center;gap:.35rem;display:flex}.under-spacer{flex:1}.under-title{color:var(--text-h);font-weight:600}.under-tab{font:inherit;color:var(--muted,#888);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:.35rem;margin-bottom:-.2rem;padding:.35rem .1rem;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.under-tab:hover{color:var(--text-h);border-bottom-color:var(--border)}.under-tab:hover:not(:disabled){color:var(--text-h);filter:none;background:0 0}.under-tab.is-active{color:var(--text-h);border-bottom-color:var(--accent,#ff4d4d)}.queue-item.is-current{opacity:.6}.player-waiting{color:var(--text);white-space:nowrap;font-size:.8rem}.recommended-list{max-height:21rem;overflow-y:auto}.room-recs .recommended .queue-item img{width:72px}.room-recs .recommended .queue-title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.82rem;line-height:1.25;display:-webkit-box}@media (width>=1200px){#root:has(.app.room){width:min(1280px,100vw - 2rem)}}@media (width>=1280px){#root:has(.app.room .room-recs){width:min(1860px,100vw - 2rem)}.room-main:has(.room-recs){--rail:300px;grid-template-columns:var(--rail) minmax(0, 1fr) var(--rail);grid-template-areas:"recs video chat"}.room-main:has(.room-recs) .room-chat{height:calc((100cqw - var(--rail) * 2 - 2.5rem) * .5625)}.room-recs .recommended .queue-list{max-height:calc((100cqw - var(--rail) * 2 - 2.5rem) * .5625 - 3.5rem)}}@media (width>=1500px){.room-main:has(.room-recs){--rail:300px}}.env-badge{z-index:50;color:#1a1200;letter-spacing:.04em;text-transform:uppercase;pointer-events:none;background:#f0ad4e;border-radius:999px;padding:.15rem .5rem;font-size:.7rem;font-weight:700;position:fixed;top:.5rem;right:.5rem}
