/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer legacy{@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--bg) 92%, transparent)}}.watch-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"room""player""chat";align-items:start;gap:.75rem;width:min(1500px,100%);margin:0 auto;padding:.75rem;display:grid}.player-panel,.chat-panel{background:var(--surface);border:1px solid var(--border);width:100%;min-width:0;box-shadow:var(--shadow);border-radius:1rem;transition:border-color .2s,box-shadow .2s;overflow:hidden}@media (hover:hover){.room-info-bar:hover,.player-panel:hover,.chat-panel:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.room-info-bar:hover,.player-panel:hover,.chat-panel:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}}}.player-panel{grid-area:player}.panel-heading,.chat-heading{border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1.1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.panel-heading,.chat-heading{background:color-mix(in srgb, var(--surface-2) 55%, transparent)}}.panel-heading h2,.chat-heading h2{letter-spacing:-.015em;font-size:1rem}.role-badge,.viewer-count{border:1px solid var(--border);color:var(--muted);background:var(--surface-2);white-space:nowrap;border-radius:999px;padding:.35rem .55rem;font-size:.68rem}.role-badge.host{color:var(--accent-soft-text);background:#7c5cff1f;border-color:#7c5cff59}.video-shell{aspect-ratio:16/9;background:#050608;position:relative}.video-shell movi-player{object-fit:contain;background:#050608;width:100%;height:100%;display:block}.viewer-controls{z-index:3;position:absolute;bottom:.75rem;right:.75rem}.viewer-controls[hidden]{display:none}.fullscreen-button{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background:#080a0ec7;border:1px solid #ffffff2e;border-radius:.65rem;place-items:center;width:2.75rem;height:2.75rem;padding:0;transition:background .2s,transform .2s;display:grid;box-shadow:0 4px 18px #00000059}.fullscreen-button:hover{background:#202532f0}.fullscreen-button:active{transform:scale(.96)}.fullscreen-button:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.fullscreen-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem}:is(.video-shell:fullscreen,.video-shell:fullscreen,.video-shell.pseudo-fullscreen){aspect-ratio:auto;background:#000;width:100vw;height:100vh}.video-shell.pseudo-fullscreen{z-index:2147483647;border-radius:0;margin:0;position:fixed;inset:0}.fullscreen-chat{z-index:5;top:calc(var(--chat-viewport-top,0px) + max(.75rem, env(safe-area-inset-top)) + 3.25rem);right:max(.75rem, env(safe-area-inset-right));width:min(360px,100% - 1.5rem);height:min(36rem, calc(var(--chat-viewport-height,100dvh) - 9.5rem - env(safe-area-inset-bottom)));border:1px solid var(--border);background:var(--surface);border-radius:1rem;min-height:0;display:flex;position:absolute;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.fullscreen-chat{background:color-mix(in srgb, var(--surface) 82%, transparent)}}.fullscreen-chat{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-raised)}.fullscreen-chat[hidden],.fullscreen-chat-toggle[hidden]{display:none}.fullscreen-chat .chat-conversation{width:100%}.fullscreen-chat .chat-form{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.fullscreen-chat .chat-form{background:color-mix(in srgb, var(--surface) 85%, transparent)}}.fullscreen-chat .chat-messages{padding:.85rem}.fullscreen-chat-toggle{z-index:6;top:calc(var(--chat-viewport-top,0px) + max(.75rem, env(safe-area-inset-top)));right:max(.75rem, env(safe-area-inset-right));border:1px solid var(--border);min-height:2.75rem;color:var(--text);background:var(--surface);box-shadow:var(--shadow-raised);cursor:pointer;opacity:1;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.85rem;font-weight:600;transition:opacity .18s;display:inline-flex;position:absolute}.fullscreen-chat-toggle.is-idle:not(:hover):not(:focus-visible){opacity:0;pointer-events:none}.fullscreen-chat-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.fullscreen-chat-unread{background:var(--accent);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:1.4rem;height:1.4rem;padding-inline:.3rem;font-size:.7rem;display:inline-grid}.fullscreen-chat-unread[hidden]{display:none}@media (prefers-reduced-motion:reduce){.fullscreen-chat-toggle{transition:none}}.chat-compact-viewport .fullscreen-chat{height:calc(var(--chat-viewport-height,100dvh) - max(.75rem, env(safe-area-inset-top)) - 4rem)}.chat-compact-viewport .chat-reply-summary span{-webkit-line-clamp:1}@media (height<=480px){.fullscreen-chat{height:calc(var(--chat-viewport-height,100dvh) - 8.5rem)}.fullscreen-chat .chat-form{gap:.25rem;padding:.4rem}.fullscreen-chat .chat-reply-summary span{-webkit-line-clamp:1}}.video-placeholder[hidden]{display:none}.video-placeholder{text-align:center;color:#a5aabe;pointer-events:none;background:radial-gradient(circle,#7c5cff14,#0000 55%),#050608;place-content:center;justify-items:center;gap:.5rem;padding:2rem;display:grid;position:absolute;inset:0}.video-placeholder strong{color:#f5f7fb;font-size:1rem}.video-placeholder span:last-child{max-width:25rem;font-size:.78rem;line-height:1.5}.placeholder-icon{width:3.25rem;height:3.25rem;color:var(--accent);background:#12151d;border:1px solid #ffffff2e;border-radius:50%;place-items:center;margin-bottom:.35rem;display:grid}.player-info{border-bottom:1px solid var(--border);flex-direction:column;gap:.65rem;padding:.9rem 1rem;display:flex}.player-info h3{font-family:var(--font-readable);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.sync-status{color:var(--muted);margin:0;font-size:.7rem}.player-local-controls{flex-direction:column;align-items:flex-start;gap:.45rem;display:flex}.host-controls{border-bottom:1px solid var(--border);padding:.9rem 1rem}.file-button{color:#fff;background:var(--accent);cursor:pointer;border-radius:.65rem;justify-content:center;align-items:center;gap:.5rem;width:100%;min-height:2.75rem;padding:.7rem 1rem;font-size:.82rem;font-weight:700;transition:background .2s,transform .2s;display:inline-flex}.file-button:hover{background:var(--accent-hover)}.file-button:active{transform:translateY(1px)}.file-button:disabled{opacity:.65;cursor:wait}.control-help{color:var(--muted);margin:.55rem 0 0;font-size:.68rem;line-height:1.45}.room-info-code.room-info-link{letter-spacing:normal;overflow-wrap:anywhere;min-width:0;font-size:.85rem}.chat-panel{flex-direction:column;grid-area:chat;height:clamp(22rem,55dvh,30rem);min-height:22rem;max-height:30rem;display:flex}.chat-heading{flex-wrap:wrap}.chat-heading-actions{flex-direction:column;align-items:flex-end;gap:.4rem;display:flex}.name-form{gap:.35rem;display:flex}.name-form input{border:1px solid var(--border);width:clamp(7.5rem,30vw,10rem);min-width:0;color:var(--text);background:var(--surface-2);font-family:var(--font-readable);border-radius:.45rem;outline:none;padding:.38rem .5rem;font-size:.72rem}.name-form input:focus{border-color:#7c5cffa6;box-shadow:0 0 0 3px #7c5cff1a}.name-form input[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 3px #ff5d731a}.name-form button{color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:.45rem;padding:.38rem .55rem;font-size:.68rem;font-weight:700}.name-form button:hover{background:var(--accent-hover)}.chat-heading,.participant-section,.chat-form{flex-shrink:0}.participant-section{border-bottom:1px solid var(--border);padding:.65rem .8rem}.participant-section h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:700}.participant-list{flex-wrap:wrap;gap:.35rem;max-height:5rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.participant{border:1px solid var(--border);background:var(--surface-2);min-width:0;font-family:var(--font-readable);border-radius:999px;align-items:center;gap:.3rem;padding:.2rem .4rem;font-size:.68rem;display:flex}.participant-status{background:var(--success);border-radius:50%;flex:none;width:.4rem;height:.4rem}.participant-name{text-overflow:ellipsis;white-space:nowrap;max-width:8rem;overflow:hidden}.participant-role{color:var(--muted)}.reaction-feed{z-index:21;left:max(1rem, env(safe-area-inset-left));bottom:max(5.5rem, env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;align-items:flex-start;gap:.3rem;max-width:min(17rem,65vw);display:flex;position:fixed}.reaction-item{border:1px solid var(--border);max-width:100%;color:var(--text);background:var(--surface);box-shadow:var(--shadow-raised);overflow-wrap:anywhere;border-radius:999px;margin:0;padding:.4rem .7rem;font-size:.75rem}body>.reaction-feed{max-width:min(22rem, calc(100vw - max(1rem, env(safe-area-inset-left)) - max(1rem, env(safe-area-inset-right))));gap:.5rem}body>.reaction-feed .reaction-item{box-sizing:border-box;padding:.8rem 1.1rem;font-size:1.25rem;font-weight:600;line-height:1.4}.video-shell>.reaction-feed{top:calc(var(--chat-viewport-top,0px) + max(1rem, env(safe-area-inset-top)) + 3.25rem);bottom:auto;left:auto;right:max(1rem, env(safe-area-inset-right));width:360px;max-width:calc(100% - max(1rem, env(safe-area-inset-left)) - max(1rem, env(safe-area-inset-right)));max-height:calc(var(--chat-viewport-height,100dvh) - 7rem);align-items:flex-end;gap:.6rem;position:absolute;overflow:hidden}.video-shell>.reaction-feed .reaction-item{box-sizing:border-box;color:#f2f3f5;width:100%;font-family:var(--font-readable);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1e1f22eb;border-color:#ffffff26;border-radius:.65rem;padding:.85rem 1rem;font-size:16px;line-height:1.4;animation:.18s ease-out both notification-enter}@keyframes notification-enter{0%{opacity:0;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.video-shell>.reaction-feed .reaction-item{animation:none}}.chat-notification strong{text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem;display:block;overflow:hidden}.chat-notification p{-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.floating-reactions{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floating-reaction{filter:drop-shadow(0 2px 5px #0000004d);font-size:clamp(2rem,5vw,3.5rem);line-height:1;animation:2s ease-out both float-reaction;display:block;position:absolute;bottom:5vh}@keyframes float-reaction{0%{opacity:0;transform:translateY(0)scale(.55)rotate(-12deg)}12%{opacity:1;transform:translateY(-4vh)scale(1.1)rotate(8deg)}75%{opacity:1}to{opacity:0;transform:translateY(-90vh)scale(.85)rotate(-8deg)}}.chat-body{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.host-reconnect-status{border-bottom:1px solid var(--border);color:var(--muted);overflow-wrap:anywhere;flex:none;margin:0;padding:.6rem .8rem;font-size:.75rem}.chat-messages{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-direction:column;flex:1 1 0;gap:.65rem;min-height:0;max-height:none;padding:1rem;display:flex;overflow-y:auto}.chat-conversation{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex;position:relative}.chat-message{-webkit-touch-callout:none;background:var(--surface-3);width:fit-content;min-width:5.5rem;max-width:92%;color:var(--content-strong);font-family:var(--font-readable);border-radius:1rem 1rem 1rem .25rem;align-self:flex-start;padding:.55rem .75rem 1.35rem;position:relative;box-shadow:0 1px 2px #00000014}.chat-message:before{content:"";background:inherit;clip-path:polygon(100% 0,100% 100%,0 100%);width:.6rem;height:.7rem;position:absolute;bottom:0;left:-.35rem}.chat-message.self{background:var(--accent);border-radius:1rem 1rem .25rem;align-self:flex-end;margin-left:0;margin-right:0}@supports (color:color-mix(in lab, red, red)){.chat-message.self{background:color-mix(in srgb, var(--accent) 23%, var(--surface))}}.chat-message.self:before{left:auto;right:-.35rem;transform:scaleX(-1)}.chat-message .meta{margin-bottom:.2rem}.chat-message .name{color:var(--accent-soft-text);font-size:.7rem;font-weight:700}.chat-message time{color:var(--muted);font-size:.6rem;position:absolute;bottom:.3rem;right:.65rem}.chat-message p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.82rem;line-height:1.45}.comment-reactions{flex-wrap:wrap;gap:.25rem;display:flex}.comment-reactions:has(.comment-reaction){margin-top:.45rem}.comment-reaction{min-width:2rem;min-height:1.65rem;color:var(--accent-soft-text);background:var(--accent);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.25rem;padding:.15rem .45rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.comment-reaction{background:color-mix(in srgb, var(--accent) 12%, var(--surface))}}.comment-reaction{cursor:pointer;font-size:.7rem}.comment-reaction span:first-child{font-size:.95rem}.comment-reaction[aria-pressed=true]{color:#fff;background:var(--accent)}.comment-reaction:hover{border-color:var(--accent)}.chat-conversation button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.chat-reply-quote,.chat-reply-preview{border:0;border-left:3px solid var(--accent);min-width:0;color:var(--content-strong);background:var(--accent);border-radius:.35rem;padding:.45rem .6rem}@supports (color:color-mix(in lab, red, red)){.chat-reply-quote,.chat-reply-preview{background:color-mix(in srgb, var(--accent) 10%, transparent)}}.chat-reply-quote,.chat-reply-preview{text-align:left}.chat-reply-quote{cursor:pointer;width:100%;margin:.35rem 0;display:block}.chat-reply-quote strong,.chat-reply-summary strong{color:var(--accent-soft-text);font-size:.7rem;display:block}.chat-reply-quote span,.chat-reply-summary span{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.chat-reply-preview{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chat-reply-preview[hidden]{display:none}.chat-reply-summary{min-width:0}.chat-reply-preview button{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;font-size:1.4rem}.chat-send-status{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.72rem}.reply-highlight{outline:2px solid var(--accent);outline-offset:3px}.chat-jump-latest{border:1px solid var(--border);color:var(--text);background:var(--surface);box-shadow:var(--shadow-raised);cursor:pointer;border-radius:999px;flex:none;align-self:center;margin:-.25rem 0 .4rem;padding:.4rem .75rem;font-size:.7rem}.chat-jump-latest[hidden]{display:none}.comment-reaction-feedback{opacity:0;pointer-events:none;font-size:1.25rem;position:absolute;bottom:100%;right:.1rem;transform:scale(.5)}.comment-reaction-feedback.pop{animation:.6s ease-out both comment-reaction-pop}@keyframes comment-reaction-pop{0%{opacity:0;transform:translateY(.35rem)scale(.45)}35%{opacity:1;transform:translateY(-.25rem)scale(1.25)}to{opacity:0;transform:translateY(-.7rem)scale(1)}}.system-message{overflow-wrap:anywhere;max-width:100%;color:var(--muted);text-align:center;align-self:center;font-size:.65rem}@media (prefers-reduced-motion:reduce){.floating-reaction,.comment-reaction-feedback.pop{animation-duration:.01ms}}.chat-form{border-top:1px solid var(--border);background:var(--surface);flex-direction:column;gap:.5rem;padding:.65rem;display:flex;position:relative}.chat-compose-row{align-items:center;gap:.25rem;min-width:0;display:flex}.chat-form .chat-emoji-button{width:2rem;height:2.5rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0;font-size:1.2rem;position:relative}.chat-emoji-button:hover,.chat-emoji-button[aria-expanded=true]{color:var(--accent-soft-text);background:var(--surface-3)}.emoji-picker{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:.8rem;flex-direction:column;width:min(20rem,100vw - 2rem);padding:.65rem;display:flex;position:fixed;overflow:auto;box-shadow:0 12px 36px #00000047}.emoji-picker[hidden]{display:none}.emoji-picker .emoji-search{border:1px solid var(--border);width:100%;color:var(--text);background:var(--surface-2);font:inherit;border-radius:.55rem;outline:none;padding:.55rem .65rem;font-size:.75rem}.emoji-picker .emoji-search:focus{border-color:var(--accent)}.emoji-picker-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:.15rem;min-height:0;max-height:13rem;margin-top:.45rem;display:grid;overflow-y:auto}.emoji-picker .emoji-choice{aspect-ratio:1;cursor:pointer;background:0 0;border:0;border-radius:.4rem;place-items:center;min-width:0;padding:.1rem;font-size:1.25rem;display:grid}.emoji-picker .emoji-choice:hover,.emoji-picker .emoji-choice:focus-visible{background:var(--surface-3)}.emoji-picker-empty{color:var(--muted);text-align:center;margin:.7rem .2rem .2rem;font-size:.72rem}.chat-form input{border:1px solid var(--border);min-width:0;color:var(--text);background:var(--surface-2);font-family:var(--font-readable);border-radius:.65rem;outline:none;flex:1;padding:.7rem .75rem;font-size:.78rem}.chat-form input:focus{border-color:#7c5cffa6;box-shadow:0 0 0 3px #7c5cff1a}.chat-compose-row>button[type=submit]{color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:.65rem;padding:.7rem .85rem;font-size:.75rem;font-weight:700}.chat-compose-row>button[type=submit]:hover{background:var(--accent-hover)}.chat-message:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.message-menu{z-index:35;border:1px solid var(--border);width:min(22rem,100vw - 1rem);color:var(--text);background:var(--surface);box-shadow:var(--shadow);border-radius:.9rem;padding:.4rem;position:fixed;overflow:auto}.message-menu[hidden]{display:none}.message-menu-reactions{border-bottom:1px solid var(--border);grid-template-columns:repeat(8,minmax(0,1fr)) 2.25rem;gap:.15rem;padding-bottom:.35rem;display:grid}.message-menu button{color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:.5rem}.message-menu-reaction{aspect-ratio:1;place-items:center;min-width:0;padding:.15rem;font-size:1.2rem;display:grid}.message-menu-more{place-items:center;min-height:2.25rem;padding:.25rem;display:grid}.message-menu-more svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.message-menu-more[aria-expanded=true] svg{transform:rotate(180deg)}.message-menu-expanded{max-height:min(14rem, max(0px, calc(var(--message-menu-height,100dvh) - 7rem)));overscroll-behavior:contain;scrollbar-width:thin;border-bottom:1px solid var(--border);grid-template-columns:repeat(8,minmax(0,1fr));gap:.15rem;padding-block:.35rem;display:grid;overflow-y:auto}.message-menu-expanded[hidden]{display:none}.message-menu button:hover{background:var(--surface-3)}.message-menu .selected{background:var(--accent)}.message-menu button:focus-visible,.emoji-picker-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.message-menu-action{text-align:left;width:100%;min-height:2.5rem;padding:.55rem .7rem;font-size:.8rem;display:block}.emoji-picker-tabs{background:var(--surface-2);border-radius:.6rem;gap:.25rem;margin-bottom:.4rem;padding:.2rem;display:flex}.emoji-picker-tabs[hidden]{display:none}.emoji-picker-tabs button{min-width:0;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.4rem;flex:1;padding:.5rem .35rem;font-size:.75rem}.emoji-picker-tabs button[aria-selected=true]{color:#fff;background:var(--accent)}.emoji-picker-hint{color:var(--muted);margin:0 0 .5rem;font-size:.72rem;line-height:1.4}.vote-panel{border-bottom:1px solid var(--border);background:var(--surface-2);flex-direction:column;flex:none;min-height:0;padding:.6rem .8rem;display:flex}.vote-panel[hidden],.poll-details[hidden]{display:none}.chat-panel.poll-expanded{height:auto;min-height:0;max-height:none}.chat-panel.poll-expanded .chat-body{flex:none}.chat-panel.poll-expanded .chat-messages{flex:none;height:clamp(10rem,24dvh,16rem)}.poll-details{min-height:0}.start-poll-button,.finish-poll-button,.poll-toggle{border:1px solid var(--border);color:var(--accent-soft-text);background:var(--surface-3);font:inherit;cursor:pointer;border-radius:.45rem;padding:.35rem .5rem;font-size:.68rem}.start-poll-button:focus-visible,.finish-poll-button:focus-visible,.poll-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.start-poll-button:disabled,.finish-poll-button:disabled{opacity:.5;cursor:default}.finish-poll-button{flex:none}.vote-panel .vote-leader{color:var(--muted);overflow-wrap:anywhere;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;margin:0 0 .75rem;font-size:.75rem;overflow:hidden}.vote-panel .suggestion-form{gap:.5rem;margin-bottom:.75rem;display:flex}.vote-panel .suggestion-form input{border:1px solid var(--border);min-width:0;color:var(--text);background:var(--surface-2);font-family:var(--font-readable);border-radius:.55rem;flex:1;padding:.5rem .65rem;font-size:.75rem}.vote-panel .suggestion-form button{color:#fff;background:var(--accent);cursor:pointer;border:0;border-radius:.55rem;padding:.5rem .65rem;font-size:.75rem;font-weight:700}.vote-panel .suggestion-form button:hover{background:var(--accent-hover)}.suggestion-status{min-height:1.1em;color:var(--muted);margin:-.3rem 0 .5rem;font-size:.68rem}.suggestion-status:empty,.suggestion-results:empty{display:none}.suggestion-results{overscroll-behavior:contain;gap:.45rem;max-height:clamp(8rem,24dvh,12rem);margin-bottom:.5rem;display:grid;overflow-y:auto}.movie-search-result{border:1px solid var(--border);background:var(--surface-2);border-radius:.6rem;align-items:flex-start;gap:.65rem;padding:.5rem;display:flex}.movie-search-poster{object-fit:cover;background:var(--surface-3);border-radius:.3rem;flex:0 0 3rem;width:3rem;height:4.35rem}.movie-poster-placeholder{color:var(--muted);text-align:center;place-items:center;font-size:.55rem;display:grid}.movie-search-details{flex:1;gap:.25rem;min-width:0;display:grid}.movie-search-details h3,.movie-search-details p{overflow-wrap:anywhere;margin:0}.movie-search-details h3{font-size:.75rem}.movie-search-details p{color:var(--muted);font-size:.63rem}.movie-search-details a,.vote-source{width:fit-content;color:var(--accent-soft-text);font-size:.62rem}.movie-search-select,.suggestion-title-only{border:1px solid var(--border);width:fit-content;color:var(--text);background:var(--surface-3);cursor:pointer;border-radius:.45rem;padding:.35rem .5rem;font-size:.65rem}.movie-search-select:hover,.suggestion-title-only:hover{border-color:var(--accent)}.suggestion-title-only{margin-bottom:.45rem}.movie-search-select:focus-visible,.suggestion-title-only:focus-visible,.movie-search-details a:focus-visible,.vote-source:focus-visible,.vote-panel .suggestion-form :focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vote-heading{flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:.35rem;margin-bottom:.35rem;display:flex}.vote-heading h2{margin:0;font-size:.8rem}.vote-status{color:var(--muted);text-align:right;flex:none;font-size:.68rem}.vote-options{overscroll-behavior:contain;scrollbar-width:thin;gap:.4rem;max-height:clamp(16rem,40dvh,27rem);display:grid;overflow-y:auto}.vote-empty{border:1px dashed var(--border);color:var(--muted);text-align:center;border-radius:.65rem;margin:0;padding:.85rem;font-size:.75rem}.vote-option{border:1px solid var(--border);background:var(--surface-2);border-radius:.65rem;grid-template-columns:2rem minmax(0,1fr) auto auto;align-items:center;gap:.4rem;min-width:0;padding:.35rem .45rem;transition:border-color .18s,background .18s,transform .18s;display:grid}@media (hover:hover){.vote-option:hover{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.vote-option:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}}}.vote-poster{background:var(--surface-3);border-radius:.35rem;width:2rem;height:3rem;overflow:hidden}.vote-poster img{object-fit:cover;width:100%;height:100%;display:block}.vote-option .movie-poster-placeholder{height:100%}.vote-option.selected{background:#7c5cff17;border-color:#7c5cff8c}.vote-option-details{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:.125rem .35rem;min-width:0;display:grid}.vote-description{display:none}.vote-source{grid-area:4/1;line-height:1.2}.vote-source+.vote-suggester{grid-column:2}.vote-suggester{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-area:4/1/auto/-1;margin:0;font-size:.62rem;line-height:1.2;overflow:hidden}.vote-option h3{-webkit-line-clamp:2;color:var(--text);overflow-wrap:anywhere;-webkit-box-orient:vertical;grid-column:1/-1;margin:0;font-size:.78rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.vote-count{color:var(--muted);grid-column:1/-1;font-size:.63rem;line-height:1.2}.vote-meter{background:var(--surface-3);border-radius:999px;grid-column:1/-1;height:.22rem;overflow:hidden}.vote-meter span{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s;display:block}.vote-button{min-width:3rem;min-height:2.25rem;color:var(--accent-soft-text);cursor:pointer;background:#7c5cff2e;border:1px solid #7c5cff73;border-radius:.55rem;flex:none;padding:.4rem .45rem;font-size:.68rem;font-weight:700;transition:background .18s,border-color .18s}.vote-button:hover:not(:disabled){border-color:var(--accent-hover);background:var(--accent);color:#fff}.vote-button:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.vote-button:disabled{color:var(--accent-soft-text);opacity:.75;cursor:default}.vote-remove-button{border:1px solid var(--border);min-height:2.25rem;color:var(--muted);cursor:pointer;background:0 0;border-radius:.55rem;flex:none;padding:.4rem .55rem;font-size:.65rem}.vote-remove-button:hover{border-color:var(--danger);color:var(--danger)}.vote-remove-button:focus-visible{outline:2px solid var(--danger);outline-offset:2px}@media (width<=420px){.vote-panel{padding-inline:.65rem}.vote-heading{align-items:center;gap:.35rem}.vote-status{text-align:left}.vote-remove-button{padding-inline:.4rem}}@media (width<=360px){.vote-option{grid-template-columns:2rem minmax(0,1fr) auto}.vote-poster,.vote-option-details{grid-row:1/span 2}.vote-button{grid-area:1/3}.vote-remove-button{grid-area:2/3}}.participant-item{min-width:0}button.participant{color:var(--text);cursor:pointer;font-family:var(--font-readable);font-size:.68rem}.participant:hover,.participant[aria-expanded=true]{border-color:var(--accent)}.participant:focus-visible,.participant-dropdown button:focus-visible,.permission-switch input:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.participant-blocked{opacity:.55}.participant-blocked .participant-name{text-decoration:line-through}.participant-status.offline{background:var(--muted)}.participant-dropdown{z-index:1000;border:1px solid var(--border);background:var(--surface);width:min(288px,100vw - 16px);color:var(--text);box-shadow:var(--shadow-raised);font-family:var(--font-readable);border-radius:.85rem;padding:1rem;position:fixed;overflow-y:auto}.participant-dropdown[hidden]{display:none}.participant-dropdown h3{overflow-wrap:anywhere;margin:0;font-size:.95rem}.participant-detail-role,.participant-provider,#participantStatus,.participant-action-warning{color:var(--muted);font-size:.75rem;line-height:1.5}.participant-detail-role{margin:.25rem 0 .65rem}#participantStatus{min-height:1.5em;margin:.65rem 0 0}.permission-switch{cursor:pointer;justify-content:space-between;align-items:center;gap:.6rem;min-height:2.35rem;font-size:.8rem;display:flex}.permission-switch:has(input:disabled){cursor:default}.permission-switch input{appearance:none;border:1px solid var(--muted);background:var(--surface-3);width:2rem;height:1.15rem;cursor:inherit;border-radius:1rem;flex:none;margin:0;position:relative}.permission-switch input:after{content:"";background:var(--muted);border-radius:50%;width:.75rem;height:.75rem;position:absolute;top:2px;left:2px}.permission-switch input:checked{background:var(--accent);border-color:var(--accent)}.permission-switch input:checked:after{background:#fff;left:calc(100% - .75rem - 2px)}.permission-switch input:disabled{opacity:.65}.participant-actions{border-top:1px solid var(--border);gap:.45rem;margin-top:.65rem;padding-top:.75rem;display:grid}.participant-actions button{text-align:left;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;padding:.65rem .75rem;font-size:.8rem}.participant-actions button:hover{border-color:var(--accent)}.participant-actions button:disabled{opacity:.5;cursor:default}.participant-actions .participant-danger{color:var(--danger)}.participant-action-warning{margin:.25rem 0 0}@media (width>=700px){.site-header{padding-inline:1.5rem}.watch-layout{padding:1.25rem}.player-info{flex-direction:row;justify-content:space-between;align-items:center}.file-button{width:auto}.chat-panel{height:clamp(24rem,50dvh,32rem);min-height:24rem;max-height:32rem}}@media (width>=1100px){.watch-layout{grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"room.""player chat";align-items:stretch;padding:1.5rem}.chat-panel{height:clamp(32rem,100vh - 8rem,48rem);min-height:0;max-height:48rem}.site-header{padding-inline:max(1.5rem,50vw - 735px)}}@media (width<=520px){.site-header{align-items:flex-start;padding:.75rem}.brand{gap:.55rem}.brand-mark{width:2.35rem;height:2.35rem}.brand p{font-size:.64rem}.connection{padding-top:.25rem;font-size:.65rem}.header-actions{gap:.55rem}.room-action-button{padding-inline:.5rem;font-size:.62rem}.room-action-status{max-width:6rem;font-size:.65rem}.theme-toggle{width:2.2rem;height:2.2rem}.watch-layout{gap:.6rem;padding:.6rem}.room-info-bar{min-height:3.75rem;padding:.55rem .75rem}.room-info-name{font-size:.95rem}.chat-panel{height:clamp(30rem,100dvh,50rem);min-height:min(30rem,100dvh);max-height:50rem}.chat-heading{align-items:flex-start;padding:.7rem .8rem}.chat-heading-actions{max-width:65%}.name-form{max-width:100%}.name-form input{width:min(38vw,9rem)}.participant-section{padding:.4rem .65rem}.chat-messages{padding:.75rem}.chat-form{padding:.55rem}}.watch-layout{gap:1rem;padding-block:1.25rem}.room-info-bar{min-height:5rem;box-shadow:none;padding:1rem 1.25rem}.room-info-label{letter-spacing:.12em;color:var(--muted);font-size:.65rem}.room-info-name{letter-spacing:-.025em;font-size:1.2rem}.room-bar-actions{justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.rooms-link{color:var(--muted);padding:.75rem .25rem;font-size:.8rem;text-decoration:none}.rooms-link:hover{color:var(--text)}.lounge-button{border:1px solid var(--border);min-width:44px;min-height:44px;color:var(--text);background:var(--surface-2);cursor:pointer;border-radius:.65rem;justify-content:center;align-items:center;padding:.6rem .8rem;font-size:.8rem;display:inline-flex}.lounge-button:hover,.lounge-button[aria-expanded=true]{border-color:var(--accent);background:var(--surface-3)}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px}.room-info-invite,.room-info-copy,.room-action-button,.name-form button,.name-form input{min-height:44px}.room-info-invite{background:var(--accent);color:#fff;border-color:var(--accent)}.room-info-invite:hover,.room-info-invite[aria-expanded=true]{background:var(--accent-hover)}.lounge-disclosure{z-index:12;border:1px solid var(--border);background:var(--surface);width:min(20rem,100vw - 2rem);box-shadow:var(--shadow-raised);border-radius:.85rem;padding:1rem;position:absolute}.lounge-disclosure[hidden],.social-tabs[hidden],#socialPeople[hidden],#socialChat[hidden]{display:none}.room-menu{top:calc(100% + .5rem);right:0}.room-menu h2{margin:0 0 .85rem;font-size:.95rem}.room-menu .name-form{flex-direction:column;gap:.5rem;font-size:.8rem}.name-form-row{gap:.5rem;display:flex}.room-menu .name-form input{flex:1;width:0;max-width:none;font-size:.85rem}.room-menu .name-form button{padding-inline:1rem;font-size:.8rem}.room-menu-settings{border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem}.room-menu-settings[hidden]{display:none}.room-menu .room-menu-action{border:1px solid var(--border);background:var(--surface-2);width:100%;min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:.5rem;align-items:center;padding:.65rem .75rem;font-size:.8rem;display:flex}.room-menu .room-menu-action:hover{border-color:var(--accent);background:var(--surface-3)}.room-menu .room-menu-action:disabled{opacity:.6;cursor:default}.room-menu-leave{border-top:1px solid var(--border);gap:.5rem;margin-top:1rem;padding-top:1rem;display:grid}.room-menu .room-action-button{color:var(--danger);font-size:.8rem}.room-menu .room-action-status{text-align:left;max-width:none}.room-info-details{width:min(24rem,100%)}.player-panel,.chat-panel{border-radius:1.1rem;box-shadow:0 6px 24px #00000014}.player-info{border-bottom:0;gap:1rem;padding:1.15rem 1.25rem}.player-info>div:first-child{flex:1;min-width:0}.player-info .eyebrow{color:var(--muted);margin:0 0 .35rem;font-size:.65rem}.player-info h3{font-size:1.05rem}.player-local-controls{flex-flow:wrap;align-items:center;gap:.6rem}.role-badge,.sync-status{font-size:.75rem}.host-controls{border:0;padding:0 1.25rem 1.25rem}.host-controls .control-help{max-width:40rem;font-size:.78rem}.chat-panel{height:clamp(30rem,72dvh,44rem);min-height:24rem;max-height:none;overflow:visible}.chat-heading{background:var(--surface);border-radius:1.1rem 1.1rem 0 0;flex-wrap:nowrap;padding:1rem 1.15rem;position:relative}.chat-heading h2{font-size:1.1rem}.chat-heading .viewer-count{background:0 0;border:0;margin-top:.35rem;padding:0;font-size:.75rem;display:inline-flex}.chat-heading .viewer-count:before{content:"";background:var(--success);border-radius:50%;width:.4rem;height:.4rem;margin:.3rem .4rem 0 0}.chat-heading-actions{max-width:none}.chat-menu{top:calc(100% - .25rem);right:.75rem}.chat-menu .control-help{margin:0 0 .7rem;font-size:.8rem}.chat-menu .start-poll-button{width:100%;min-height:44px;font-size:.85rem}.social-tabs{border-bottom:1px solid var(--border);flex-shrink:0;gap:.25rem;padding:.35rem .8rem 0;display:flex}.social-tabs button{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.65rem;font-size:.85rem;font-weight:600;display:inline-flex}.social-tabs button[aria-selected=true]{color:var(--accent-soft-text);border-bottom-color:var(--accent)}.social-unread{background:var(--accent);color:#fff;border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;padding-inline:.25rem;font-size:.65rem;display:inline-grid}.social-unread[hidden]{display:none}.participant-section{min-height:0;padding:1rem 1.15rem;overflow-y:auto}.participant-section h3{color:var(--muted);font-size:.68rem}.participant-list{gap:.45rem;max-height:7rem;margin-top:.65rem}button.participant{gap:.45rem;min-height:44px;padding:.45rem .7rem;font-size:.78rem}.participant-role{font-size:.68rem}.chat-body{border-radius:0 0 1.1rem 1.1rem;overflow:hidden}.chat-messages{gap:.9rem;padding:1.15rem}.chat-message{border-radius:.85rem;font-size:.85rem}.chat-form{padding:.85rem}.chat-compose-row{gap:.4rem}.chat-form input{min-height:44px;font-size:.85rem}.chat-form .chat-emoji-button{border-radius:.65rem;width:44px;height:44px}.chat-compose-row>button[type=submit]{min-width:44px;min-height:44px;font-size:.8rem}.chat-jump-latest{min-height:44px}.vote-heading{gap:.5rem}.poll-toggle,.finish-poll-button{min-height:44px}#fileSharingStatus{padding:0 1rem .65rem}@media (width>=1100px){.watch-layout{grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"room room""player chat";align-items:start}.chat-panel{height:clamp(34rem,100dvh - 13rem,50rem)}}@media (width<=1099px){#socialPeople{border-bottom:0;flex:1}#socialPeople .participant-list{flex-direction:column;max-height:none}#socialPeople .participant{border-radius:.7rem;width:100%;padding:.7rem}#socialPeople .participant-name{max-width:none}#socialPeople .participant-role{margin-left:auto}}@media (width<=600px){.watch-layout{gap:.75rem;padding:.75rem}.brand p{display:none}.room-info-bar{flex-wrap:wrap;gap:.75rem;padding:1rem}.room-info-current{width:100%}.room-bar-actions{gap:.5rem;width:100%}.room-bar-actions .connection{white-space:normal;margin-right:auto;font-size:.7rem}.room-bar-actions .lounge-button{font-size:.75rem}.player-info{padding:1rem}.host-controls{padding:0 1rem 1rem}.chat-panel{height:clamp(30rem,75dvh,40rem);min-height:24rem}.chat-messages{padding:.85rem}.chat-form{padding:.6rem}.chat-compose-row{gap:.2rem}.chat-form input{padding-inline:.6rem}.chat-form input,.room-menu .name-form input{font-size:16px}.rooms-link{font-size:.75rem}}.permission-group{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:20px 0 8px;font-size:12px}.permission-switch{flex-wrap:wrap;gap:8px}.permission-switch input{flex-shrink:0}.permission-inherit{font:inherit;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;margin:0 0 8px;padding:0;font-size:11px;display:block}.permission-inherit:disabled{cursor:default;opacity:.6}.permissions-dialog{border:1px solid var(--border);background:var(--surface);width:min(540px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);border-radius:18px;padding:24px;overflow-y:auto}.permissions-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#080b17aa}.permissions-dialog-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.permissions-dialog h2{margin:4px 0 12px}.permissions-dialog>p{color:var(--muted);font-size:13px;line-height:1.6}.permissions-dialog button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;padding:8px 12px}.permissions-dialog .permission-switch{padding:10px 0}.participant-dropdown{overscroll-behavior:contain}:root{--bg:#0b0d12;--surface:#12151d;--surface-2:#181c26;--surface-3:#202532;--text:#f5f7fb;--muted:#9299aa;--border:#292f3d;--accent:#7c5cff;--accent-hover:#9175ff;--success:#36d399;--danger:#ff5d73;--accent-soft-text:#dcd5ff;--content-strong:#e6e9f0;--shadow:0 20px 60px #00000047;--shadow-raised:0 16px 40px #00000038;--font-readable:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-readable)}:root[data-theme=light]{--bg:#f4f2f8;--surface:#fff;--surface-2:#f8f6fc;--surface-3:#ece9f3;--text:#211d2b;--muted:#716c7c;--border:#ded9e8;--accent:#6e4be8;--accent-hover:#5d3bd0;--success:#16875f;--danger:#c73552;--accent-soft-text:#513bb0;--content-strong:#474251;--shadow:0 18px 48px #281b4917;--shadow-raised:0 14px 36px #281b491f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{background:var(--bg);min-height:100%}body{min-height:100vh;color:var(--text);background:radial-gradient(ellipse at 16% -8%, #7c5cff26, transparent 31rem), radial-gradient(ellipse at 96% 22%, #3a70be0e, transparent 32rem), var(--bg);margin:0;transition:background-color .2s,color .2s}button,input{font:inherit}button,.file-button{-webkit-tap-highlight-color:transparent}.site-header{border-bottom:1px solid var(--border);background:var(--bg);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}@supports (color:color-mix(in lab, red, red)){.site-header{background:color-mix(in srgb, var(--bg) 92%, transparent)}}.site-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:10;position:sticky;top:0}.header-actions{align-items:center;gap:.85rem;display:flex}.theme-toggle{border:1px solid var(--border);width:2.4rem;height:2.4rem;color:var(--text);background:var(--surface-2);cursor:pointer;border-radius:.7rem;flex:none;place-items:center;padding:0;transition:border-color .18s,background .18s,transform .18s;display:grid}.theme-toggle:hover{border-color:var(--accent);background:var(--surface-3)}.theme-toggle:active{transform:scale(.96)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.icon-moon,:root[data-theme=light] .icon-sun{display:none}:root[data-theme=light] .icon-moon{display:block}.brand{min-width:0;color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:.25rem}.brand-mark{object-fit:contain;flex:none;width:2.65rem;height:2.65rem;display:block}.brand h1,.brand p,.panel-heading h2,.chat-heading h2,.player-info h3{margin:0}.brand h1{letter-spacing:-.02em;font-size:1rem}.brand p{color:var(--muted);margin-top:.1rem;font-size:.7rem}.room-action-button{border:1px solid var(--border);min-height:2.25rem;color:var(--accent-soft-text);background:var(--surface-2);font:inherit;white-space:nowrap;cursor:pointer;border-radius:.6rem;padding:.4rem .7rem;font-size:.72rem;font-weight:700;transition:border-color .18s,background .18s,transform .18s}.room-action-button:hover:not(:disabled){border-color:var(--accent);background:var(--surface-3)}.room-action-button:active:not(:disabled){transform:translateY(1px)}.room-action-button:disabled{opacity:.65;cursor:wait}.room-action-status{max-width:13rem;color:var(--danger);text-align:center;font-size:.75rem}.room-info{z-index:9;grid-area:room;width:100%;position:relative}.room-info[hidden]{display:none}.room-info-bar{border:1px solid var(--border);min-height:4.25rem;color:var(--text);background:var(--surface);border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;transition:border-color .2s;display:flex}.room-info-current{min-width:0}.room-info-label{color:var(--muted);letter-spacing:.06em;margin:0;font-size:.68rem;font-weight:700;line-height:1.3}.room-info-name{text-overflow:ellipsis;white-space:nowrap;margin:.15rem 0 0;font-size:1rem;font-weight:700;line-height:1.35;overflow:hidden}.room-info-invite{border:1px solid var(--border);min-height:2.4rem;color:var(--accent-soft-text);background:var(--surface-2);font:inherit;cursor:pointer;border-radius:.65rem;flex:none;justify-content:center;align-items:center;gap:.55rem;padding:.45rem .8rem;font-size:.82rem;font-weight:700;transition:border-color .18s,background .18s;display:inline-flex}.room-info-invite:hover,.room-info-invite[aria-expanded=true]{border-color:var(--accent);background:var(--surface-3)}.room-info-invite:focus-visible,.room-info-copy:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.room-info-chevron{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem;transition:transform .18s}.room-info-invite[aria-expanded=true] .room-info-chevron{transform:rotate(180deg)}.room-info-details{border:1px solid var(--border);background:var(--surface);width:min(100%,19rem);box-shadow:var(--shadow-raised);border-radius:.75rem;padding:.85rem;position:absolute;top:calc(100% + .4rem);right:0}.room-info-details[hidden]{display:none}.room-info-code-row{justify-content:space-between;align-items:center;gap:.7rem;margin-top:.45rem;display:flex}.room-info-code{overflow-wrap:anywhere;color:var(--accent-soft-text);letter-spacing:.08em;font-size:.95rem;font-weight:700}.room-info-copy{border:1px solid var(--border);color:var(--text);background:var(--surface-2);font:inherit;cursor:pointer;border-radius:.5rem;flex:none;padding:.35rem .6rem;font-size:.72rem}.room-info-copy:hover{border-color:var(--accent)}.room-info-status{min-height:.9rem;color:var(--muted);margin:.45rem 0 0;font-size:.75rem}.connection{color:var(--muted);white-space:nowrap;align-items:center;gap:.45rem;font-size:.72rem;display:flex}.status-dot{background:#f5b942;border-radius:50%;width:.5rem;height:.5rem;box-shadow:0 0 0 .2rem #f5b9421a}.status-dot.online{background:var(--success);box-shadow:0 0 0 .2rem #36d3991a}.status-dot.offline{background:var(--danger);box-shadow:0 0 0 .2rem #ff5d731a}.site-footer{color:var(--muted);justify-content:center;gap:.5rem;padding:1rem;font-size:.65rem;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}.eyebrow{color:var(--accent-soft-text);letter-spacing:.13em;margin:0;font-size:.68rem;font-weight:700}.hub-main{width:min(1280px,100%);min-height:calc(100vh - 155px);margin:auto;padding:2rem}.hub-intro{grid-template-columns:minmax(0,1fr) 340px;align-items:center;gap:2rem;padding:.5rem 0 2.25rem;display:grid}.hub-intro h2{letter-spacing:-.045em;max-width:720px;margin:.6rem 0 .85rem;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.08}.hub-intro-copy>p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.6}.hub-join-profile{border:1px solid var(--border);background:var(--surface);border-radius:1rem;padding:1.4rem}.hub-join-profile h3{letter-spacing:-.02em;margin:0;font-size:1rem}.hub-join-profile>p{color:var(--muted);font-size:.8rem;line-height:1.5}.hub-join-profile .hub-name{margin-top:1rem}.hub-join-profile .hub-profile-hint{margin:.75rem 0 0;font-size:.72rem}.hub-intro>p:not(.eyebrow){color:var(--muted);margin:0;line-height:1.6}.hub-name{margin-top:1.7rem;font-size:.8rem;font-weight:600;display:block}.hub-name span,.hub-field span{color:var(--muted);font-weight:400}.hub-name input{width:min(100%,310px);margin-top:.5rem;display:block}.hub-name input,.hub-field input{border:1px solid var(--border);min-height:44px;color:var(--text);background:var(--surface);border-radius:.65rem;padding:.75rem .85rem}input:focus-visible,.hub-button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hub-button{border:1px solid var(--border);min-height:44px;color:var(--text);background:var(--surface-2);cursor:pointer;border-radius:.65rem;justify-content:center;align-items:center;padding:.65rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.hub-button:hover{border-color:var(--accent);background:var(--surface-3)}.hub-primary{color:#fff;border-color:var(--accent);background:var(--accent)}.hub-primary:hover{background:var(--accent-hover)}.hub-button:disabled{opacity:.6;cursor:wait}.hub-section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.3rem;display:flex}.hub-section-heading h2{align-items:center;gap:.6rem;margin:0;font-size:1.25rem;display:flex}.hub-section-heading p{color:var(--muted);margin:.45rem 0 0;font-size:.85rem}.hub-count{color:var(--accent-soft-text);background:var(--surface-3);border-radius:.4rem;padding:.2rem .5rem;font-size:.75rem}.hub-live{color:var(--muted);white-space:nowrap;align-items:center;gap:.5rem;font-size:.75rem;display:inline-flex}.hub-live>span{background:var(--success);width:6px;height:6px;box-shadow:0 0 10px var(--success);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.hub-live>span{box-shadow:0 0 10px color-mix(in srgb, var(--success) 35%, transparent)}}.hub-status-row{align-items:center;gap:1rem;display:flex}#hubStatus{color:var(--muted);margin:1rem 0;font-size:.85rem}#hubStatus:empty{margin:.65rem 0}.hub-notice{border:1px solid var(--border);color:var(--danger);background:var(--surface);border-radius:.65rem;padding:.9rem;font-size:.85rem}.room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;display:grid}.room-card{border:1px solid var(--border);background:var(--surface);min-width:0;box-shadow:var(--shadow-raised);border-radius:1rem;overflow:hidden}.room-preview{aspect-ratio:16/9;background:linear-gradient(135deg, var(--surface-3), var(--surface-2));position:relative;overflow:hidden}.room-preview img{object-fit:contain;background:#000;width:100%;height:100%;display:block}.room-placeholder{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:.6rem;font-size:.75rem;display:flex;position:absolute;inset:0}.room-placeholder-icon{border:1px solid var(--border);width:44px;height:44px;color:var(--accent-soft-text);border-radius:50%;place-items:center;padding-left:3px;font-size:1rem;display:grid}.room-badge{color:#fff;background:#0b0d12d9;border:1px solid #ffffff1f;border-radius:.4rem;max-width:calc(100% - 1.5rem);padding:.35rem .55rem;font-size:.68rem;font-weight:600;position:absolute;top:.75rem;left:.75rem}.room-card-body{padding:1.1rem}.room-card h3{overflow-wrap:anywhere;margin:0 0 .55rem;font-size:1rem}.room-file{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.78rem;overflow:hidden}.room-card-footer{justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.2rem;display:flex}.room-participants{color:var(--muted);font-size:.75rem}.room-card-footer .hub-button{min-height:44px;padding:.6rem 1rem;font-size:.82rem}.hub-preview-note{color:var(--muted);margin:1.5rem 0 0;font-size:.73rem;line-height:1.6}.hub-dialog{border:1px solid var(--border);width:min(440px,100% - 2rem);max-height:calc(100dvh - 2rem);color:var(--text);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;padding:1.75rem}.hub-dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#05070cbf}.hub-dialog h2{overflow-wrap:anywhere;margin:.5rem 0;font-size:1.5rem}.hub-dialog-description{color:var(--muted);margin:0 0 1.3rem;font-size:.85rem;line-height:1.5}.hub-field{margin-top:1rem;font-size:.82rem;font-weight:600;display:block}.hub-field input{background:var(--surface-2);width:100%;margin-top:.5rem;display:block}.hub-field-help{color:var(--muted);margin:.5rem 0;font-size:.75rem}.hub-form-status{min-height:1.25rem;color:var(--danger);font-size:.8rem;line-height:1.5}.hub-dialog-actions{justify-content:flex-end;gap:.6rem;margin-top:1rem;display:flex}@media (width<=900px){.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.hub-main{padding:1.5rem 1rem}.hub-intro{padding-top:1rem;padding-bottom:2rem}.room-grid{grid-template-columns:minmax(0,1fr)}.site-header{gap:.5rem}.brand p{display:none}.header-actions{gap:.5rem}.header-actions .hub-button{padding:.6rem .7rem;font-size:.78rem}.hub-live{font-size:.68rem}}@media (width<=760px){.hub-intro{grid-template-columns:minmax(0,1fr);gap:1.25rem}.hub-join-profile{padding:1rem}.hub-join-profile .hub-name input{width:100%}.hub-name input,.hub-field input{font-size:16px}}@media (prefers-reduced-motion:reduce){.hub-button{transition:none}}}@layer components{.chat-slot,.chat-portal{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.people-slot,.overlay-portal{display:contents}.hub-directory-status{margin-block:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.permissions-dialog{max-height:calc(100dvh - 2rem);overflow-y:auto}.movie-search-poster>img{object-fit:cover;width:100%;height:100%}.room-info{grid-area:room}[hidden]{display:none!important}}@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.\!hidden{display:none!important}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.max-w-\[1280px\]{max-width:1280px}.min-w-0{min-width:0}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-8{gap:calc(var(--spacing) * 8)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.p-8{padding:calc(var(--spacing) * 8)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.text-wrap{text-wrap:wrap}.text-muted{color:var(--muted)}.lowercase{text-transform:lowercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (width>=700px){.min-\[700px\]\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.min-\[700px\]\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media (width>=900px){.min-\[900px\]\:grid-cols-\[minmax\(0\,1fr\)_340px\]{grid-template-columns:minmax(0,1fr) 340px}}@media (width>=1100px){.min-\[1100px\]\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
