:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#eeeae3;background:#101316;font-synthesis:none;--muted:#90979c;--accent:#e9b977;--border:#2b3034;--surface:#171c20;--green:#a6c8aa}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,select{cursor:pointer}button{color:inherit}button:disabled,select:disabled,input:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{border:0}button svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button svg[hidden],svg[hidden],[hidden]{display:none!important}.accent{color:var(--accent)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;color:var(--muted);margin:0 0 13px}.fine-print{font-size:12px;color:var(--muted);line-height:1.65}.login-screen{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:56px 24px;background:radial-gradient(ellipse at 50% 37%,#232421 0%,#15191a 37%,#101316 69%)}.login-card{width:min(100%,420px)}.brand-mark{display:flex;gap:5px;margin-bottom:48px;height:37px;align-items:center}.brand-mark span{display:block;width:19px;height:30px;border-radius:5px;transform:rotate(-13deg);border:1px solid var(--accent);background:#e9b97712}.brand-mark span+span{background:var(--accent);transform:rotate(13deg);margin-left:1px}.login-card h1{font-size:36px;letter-spacing:-1.5px;font-weight:600;margin:0 0 18px}.login-copy{font-size:15px;color:#adb1b1;line-height:1.75;max-width:360px;margin-bottom:36px}label{font-size:12px;font-weight:500;color:#d5d8d6}.password-field{margin-top:11px;position:relative}.password-field input{width:100%;border:1px solid #3b4142;background:#151a1d;color:#eeeae3;height:52px;border-radius:7px;padding:0 70px 0 16px;box-shadow:none}.password-field input::placeholder{color:#6d7579}.text-button{position:absolute;right:12px;top:0;height:52px;background:transparent;font-size:11px;color:#a4aaa9;padding:0 5px}.primary-button{display:inline-flex;justify-content:center;align-items:center;gap:11px;border-radius:7px;background:var(--accent);color:#24221d;font-size:13px;font-weight:650;min-height:45px;padding:12px 21px;transition:background .15s}.primary-button:hover{background:#f2c992}#join-button{width:100%;height:49px;margin-top:16px;justify-content:space-between}.form-error{color:#e7a49a;font-size:13px;line-height:1.5;min-height:18px;margin:14px 0}.login-card>.fine-print{max-width:360px;margin-top:23px;font-size:11px;color:#788184}.login-footer{color:#606b70;font-size:11px;margin:72px 0 0}.room-screen{min-height:100svh}.room-header{height:83px;border-bottom:1px solid #252b2e;padding:0 clamp(24px,5.4vw,90px);display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{display:flex;align-items:center;color:#eeece7;text-decoration:none;font-size:16px;letter-spacing:-.6px;font-weight:600}.wordmark>.accent{margin-left:1px}.mini-mark{display:flex;gap:2px;margin-right:11px}.mini-mark i{width:8px;height:15px;border-radius:2px;background:transparent;border:1px solid var(--accent);transform:rotate(-12deg)}.mini-mark i+i{background:var(--accent);transform:rotate(12deg)}.header-right{display:flex;gap:27px;align-items:center}.connection-status{display:flex;align-items:center;gap:8px;color:#a2aaa9;font-size:11px}.status-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;border-radius:100%;background:#6c7678}.connection-status.connected .status-dot{background:var(--green);box-shadow:0 0 0 3px #a6c8aa0a}.connection-status.reconnecting .status-dot{background:var(--accent)}.quiet-button{font-size:11px;background:transparent;border:1px solid #363c40;border-radius:5px;padding:8px 12px;color:#a7adae}.quiet-button:hover{color:#eeeae3;border-color:#61686b}.room-content{max-width:1200px;padding:42px 36px 28px;margin:auto}.movie-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:23px}.movie-heading .eyebrow{margin-bottom:9px;font-size:9px}.movie-heading h1{font-size:24px;font-weight:500;letter-spacing:-.6px;margin:0;color:#e8e6e0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.movie-heading-text{min-width:0}.viewer-pill{font-size:11px;white-space:nowrap;display:flex;gap:9px;align-items:center;border:1px solid #303639;padding:9px 12px;border-radius:20px;color:#a7b0b1}.viewer-pill svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4}.player{background:#07090a;border:1px solid #2c3235;border-radius:10px;overflow:hidden;box-shadow:0 15px 60px #0002}.video-surface{aspect-ratio:16/9;position:relative;display:flex;align-items:center;justify-content:center;background:#07090a;overflow:hidden}.video-surface video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.stage-message{text-align:center;z-index:1;padding:28px;max-width:430px}.stage-symbol{width:57px;height:57px;border:1px solid #2c3437;background:#111719;border-radius:15px;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.stage-symbol svg{width:27px;height:27px;fill:none;stroke:#8d989c;stroke-width:1.2;stroke-linejoin:round}.stage-message h2{font-size:18px;font-weight:500;letter-spacing:-.3px;margin:0 0 13px}.stage-message p{font-size:12px;line-height:1.8;color:#7f8b90;margin:0}.enable-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:25px;background:#07090a99;z-index:3}.enable-overlay p:first-child{font-size:14px;color:#dddeda;margin-bottom:19px}.enable-overlay .fine-print{font-size:10px;max-width:300px;margin:14px auto 0;color:#a1aaac}.loading-overlay{position:absolute;left:20px;bottom:18px;display:flex;align-items:center;gap:10px;z-index:2;color:#c5c9c5;font-size:11px;background:#12181ee6;border:1px solid #ffffff12;padding:8px 12px;border-radius:20px}.spinner{width:13px;height:13px;border:1.5px solid #56616a;border-top-color:var(--accent);border-radius:100%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.player-controls{background:#151a1d;padding:0 18px 9px}.timeline{height:19px;position:relative;display:flex;align-items:center}.timeline-buffer{position:absolute;left:0;right:0;height:3px;top:8px;background:#343d41;border-radius:4px;overflow:hidden;pointer-events:none}.timeline-buffer span{display:block;height:100%;width:0%;background:#5a666a}.timeline input{position:relative;-webkit-appearance:none;appearance:none;width:100%;height:19px;margin:0;background:transparent;cursor:pointer}.timeline input::-webkit-slider-runnable-track{height:3px;background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--progress,0%),transparent var(--progress,0%),transparent 100%);border-radius:3px}.timeline input::-moz-range-track{height:3px;background:transparent}.timeline input::-moz-range-progress{height:3px;background:var(--accent)}.timeline input::-webkit-slider-thumb{-webkit-appearance:none;width:9px;height:9px;margin-top:-3px;border-radius:100%;background:var(--accent);border:0;box-shadow:0 0 0 3px #e9b97700;transition:box-shadow .15s}.timeline input:hover::-webkit-slider-thumb{box-shadow:0 0 0 4px #e9b97722}.timeline input::-moz-range-thumb{width:9px;height:9px;border-radius:100%;background:var(--accent);border:0}.control-row{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:41px}.transport-controls,.local-controls{display:flex;align-items:center;gap:12px}.icon-button{width:31px;height:33px;display:inline-flex;justify-content:center;align-items:center;background:transparent;color:#afb8ba;padding:4px;border-radius:4px}.icon-button:hover{background:#ffffff08;color:#fff}.icon-button.play-button{color:var(--accent);margin-left:-4px}.play-button #play-icon{width:20px;height:20px;fill:currentColor;stroke-width:1}.play-button #pause-icon{stroke-width:3}.skip-button svg{width:22px;height:22px}.skip-button text{stroke:none;fill:currentColor;font-size:8px;font-family:system-ui;font-weight:500}.time-display{display:flex;gap:9px;font-size:11px;align-items:center;font-variant-numeric:tabular-nums;letter-spacing:.15px;color:#bfc5c4}.time-divider,#duration{color:#6b777d}.local-controls{gap:6px}.volume-slider{-webkit-appearance:none;appearance:none;width:61px;height:3px;background:#4c575c;accent-color:#aab4b6;cursor:pointer;margin:0 14px 0 3px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;width:8px;height:8px;background:#b0baba;border-radius:100%}.volume-slider::-moz-range-thumb{width:8px;height:8px;background:#b0baba;border-radius:100%;border:0}.room-details{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-top:25px}.playback-status{display:flex;align-items:flex-start;gap:10px}.playback-status>.status-dot{margin-top:5px;width:5px;height:5px;background:#7e898e}.playback-status h2{margin:0;font-size:12px;font-weight:500;color:#d5d9d5}.playback-status p{font-size:11px;color:#77858b;line-height:1.6;margin:6px 0 0}.playback-status>.status-dot.buffering{background:var(--accent)}.playback-status>.status-dot.playing{background:var(--green)}.buffer-setting{display:flex;align-items:center;gap:12px}.buffer-setting label{font-size:10px;color:#7f8c92;white-space:nowrap}.buffer-setting select{background:#1a2023;border:1px solid #353d41;border-radius:5px;color:#c9d0ce;font-size:11px;padding:7px 24px 7px 10px;height:32px}.buffer-detail{margin-top:24px;max-width:440px}.buffer-label{display:flex;justify-content:space-between;font-size:10px;color:#78868b;margin-bottom:9px;gap:15px}#buffer-value{font-variant-numeric:tabular-nums;color:#a0aaa9}.buffer-progress{height:3px;background:#252e33;overflow:hidden;border-radius:4px}.buffer-progress>span{display:block;height:100%;background:#9cae9c;width:0;transition:width .3s}.room-footer{margin-top:37px;border-top:1px solid #242c30;padding-top:18px;display:flex;gap:20px;justify-content:space-between;color:#59686f;font-size:10px;line-height:1.6}.room-error{font-size:12px;line-height:1.6;border:1px solid #744c3b;background:#37251d77;color:#e2b399;border-radius:5px;padding:11px 14px;margin-top:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#2b3438;border:1px solid #465052;box-shadow:0 10px 40px #0007;border-radius:7px;font-size:12px;padding:12px 18px;z-index:10;color:#e1e4de;max-width:min(90vw,500px);text-align:center}.player:fullscreen{width:100%;height:100%;border:0;border-radius:0;display:flex;flex-direction:column;background:#000}.player:fullscreen .video-surface{flex:1;aspect-ratio:auto}.player:fullscreen .player-controls{flex-shrink:0;padding:0 24px 10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1500px){.room-content{padding-top:55px}}@media(max-width:700px){.room-header{height:68px;padding:0 20px}.wordmark{font-size:14px}.header-right{gap:12px}.connection-status{font-size:10px}.room-content{padding:29px 18px 24px}.movie-heading{margin-bottom:17px;gap:15px}.movie-heading h1{font-size:20px}.movie-heading .eyebrow{font-size:8px}.viewer-pill{padding:7px 10px;gap:6px}.player{border-radius:7px}.player-controls{padding:0 11px 6px}.transport-controls{gap:5px}.local-controls{gap:1px}.volume-slider{width:42px;margin-right:6px}.time-display{gap:6px;font-size:10px}.room-details{padding-top:20px;gap:14px}.buffer-setting{display:block;flex-shrink:0}.buffer-setting label{display:block;margin-bottom:6px}.buffer-setting select{font-size:10px;padding-right:16px}.playback-status p{font-size:10px;max-width:250px}.room-footer{display:block;margin-top:28px;font-size:9px}.room-footer span{display:block;margin-top:5px}.stage-message{padding:16px;max-width:330px}.stage-symbol{width:40px;height:40px;border-radius:11px;margin-bottom:13px}.stage-symbol svg{width:22px;height:22px}.stage-message h2{font-size:15px;margin-bottom:8px}.stage-message p{font-size:10px;line-height:1.6}.loading-overlay{left:12px;bottom:12px;padding:6px 9px;font-size:10px}.enable-overlay p:first-child{font-size:12px;margin:0 0 13px}.enable-overlay .primary-button{font-size:11px;min-height:39px;padding:10px 14px}.enable-overlay .fine-print{font-size:9px;margin-top:10px}.quiet-button{padding:7px 9px;font-size:10px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:1ms!important;transition:none!important}}
