@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&display=swap";:root{font-family:DM Sans,sans-serif;color:#f4f1ec;background:#111315;font-synthesis:none;text-rendering:optimizeLegibility;--bg: #111315;--surface: #191c1f;--surface-raised: #202428;--line: #303539;--ink: #f4f1ec;--muted: #a7abad;--quiet: #777e82;--accent: #ff795f;--accent-deep: #e9654d;--radius-lg: 18px;--radius-md: 12px;--radius-sm: 9px;--ease-ui: cubic-bezier(.2, .8, .2, 1);--motion-in: .14s;--motion-out: .2s;--motion-press: 90ms}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;background:var(--bg);color:var(--ink)}button,input{font:inherit}button{color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.56}.app-shell{min-height:100svh;background:var(--bg)}.topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid rgba(255,255,255,.075)}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font:700 17px/1 Space Grotesk,sans-serif;letter-spacing:-.035em}.brand-mark,.loading-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:#171412;background:var(--accent);font-size:13px}.brand-mark i{margin-left:2px}.topbar-note{color:var(--muted);font-size:13px}.auth-screen{display:flex;flex-direction:column;overflow:hidden}.auth-content{width:min(1240px,calc(100% - 48px));flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.86fr);align-items:center;gap:clamp(52px,8vw,130px);margin:0 auto;padding:76px 0 90px}.auth-copy{max-width:550px}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 19px;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.01em}.status-dot,.preview-light,.presence-indicator{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:0 0 auto}.auth-copy h1,.lobby-intro h1{margin:0;color:var(--ink);font:600 clamp(44px,5.6vw,74px)/1.04 "Space Grotesk",sans-serif;letter-spacing:-.065em}.auth-lead{max-width:440px;margin:25px 0 30px;color:#b7bbbd;font-size:17px;line-height:1.65}.auth-actions{width:min(100%,390px);display:grid;gap:11px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:0 19px;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;font-weight:700;transition:transform var(--motion-press) var(--ease-ui),background-color var(--motion-in) var(--ease-ui),border-color var(--motion-out) var(--ease-ui),color var(--motion-out) var(--ease-ui)}.button:active{transform:translateY(1px) scale(.985);transition-duration:var(--motion-press)}.button-primary{background:var(--accent);color:#171412}.button-secondary{background:#202427;border-color:#373d40;color:var(--ink)}.google-mark{color:#4285f4}.quiet-note{margin:18px 0 0;color:var(--quiet);font-size:12px}.form-error{color:#ff9885;font-size:13px;line-height:1.45}.room-preview{width:100%;padding:16px;border:1px solid #34393c;border-radius:22px;background:#181b1e;box-shadow:0 24px 80px #0000003d}.preview-topline{display:flex;align-items:center;gap:9px;min-height:30px;padding:0 2px 12px;color:#e7e4de;font-size:12px;font-weight:600}.preview-light{width:7px;height:7px}.preview-label{margin-left:auto;color:var(--quiet);font-size:11px;font-weight:500}.preview-screen{position:relative;height:clamp(220px,26vw,350px);display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:radial-gradient(ellipse at 50% 42%,#3c2927,#29201f 28%,#171a1c 68%)}.preview-screen:before,.preview-screen:after{position:absolute;width:82%;height:1px;content:"";background:#ffffff12;transform:rotate(-28deg)}.preview-screen:after{transform:rotate(28deg)}.preview-orbit{position:absolute;width:250px;height:250px;border:1px solid rgba(255,121,95,.13);border-radius:50%}.orbit-two{width:175px;height:175px;border-color:#ffffff14}.preview-play{z-index:1;display:grid;place-items:center;width:62px;height:62px;padding-left:3px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:#1214158f;color:var(--ink);font-size:18px}.preview-screen-label{position:absolute;left:18px;bottom:30px;z-index:1;color:#ffffffc4;font-size:12px}.preview-progress{position:absolute;left:18px;right:18px;bottom:17px;height:3px;border-radius:3px;background:#ffffff38}.preview-progress span{display:block;width:36%;height:100%;border-radius:inherit;background:var(--accent)}.preview-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:14px}.preview-feature{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 9px}.preview-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border:1px solid #373d40;border-radius:10px;color:var(--accent);font-size:13px}.preview-feature strong,.preview-feature small{display:block}.preview-feature strong{color:#e9e6e0;font-size:12px;font-weight:600}.preview-feature small{margin-top:4px;color:var(--quiet);font-size:10px}.auth-footer{display:flex;justify-content:space-between;gap:20px;padding:20px clamp(22px,5vw,76px);border-top:1px solid rgba(255,255,255,.075);color:var(--quiet);font-size:11px}.auth-footer span:first-child{color:#bfc1c0;font-weight:600}.lobby-screen{display:flex;flex-direction:column}.lobby-topbar{min-height:72px}.account-control{display:flex;align-items:center;gap:10px}.account-avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#37312f;color:#ffd0c6;font-size:13px;font-weight:700}.account-name{max-width:180px;overflow:hidden;color:#d7d7d3;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer}.lobby-content{width:min(1000px,calc(100% - 48px));flex:1;margin:0 auto;padding:clamp(58px,10vh,108px) 0 72px}.lobby-intro{max-width:650px}.lobby-intro h1{font-size:clamp(42px,5.2vw,64px)}.lobby-intro>p:last-child{max-width:440px;margin:20px 0 0;color:var(--muted);font-size:16px;line-height:1.6}.room-actions{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:46px}.action-card{min-height:294px;padding:26px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.action-icon{display:grid;place-items:center;width:40px;height:40px;margin-bottom:22px;border:1px solid #3b3f40;border-radius:12px;color:var(--accent);background:#211d1c}.action-card h2{margin:0;font:600 21px/1.2 Space Grotesk,sans-serif;letter-spacing:-.035em}.action-card>p{min-height:44px;margin:10px 0 22px;color:var(--muted);font-size:13px;line-height:1.6}.create-card .button{width:100%;justify-content:space-between}.join-form label{display:block;margin:0 0 8px;color:#c3c5c4;font-size:12px;font-weight:600}.join-input-row{display:flex;gap:9px}.join-input-row input{width:100%;min-width:0;height:48px;padding:0 14px;border:1px solid #3a4043;border-radius:var(--radius-sm);background:#121517;color:var(--ink);font-size:14px;outline:none}.join-input-row input::placeholder{color:#72797c}.join-input-row input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ff795f21}.join-submit{width:50px;flex:0 0 auto;padding:0}.lobby-error{position:absolute;top:100%;margin-top:12px}.room-screen{min-height:100svh}.room-topbar{position:sticky;top:0;z-index:5;min-height:70px;padding:0 clamp(18px,3vw,44px);background:#111315f5}.room-topbar .brand{font-size:15px}.room-topbar .brand-mark{width:30px;height:30px;border-radius:9px}.room-presence{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:22px}.presence-indicator{width:7px;height:7px;background:#86c7a4}.room-code-label{color:var(--quiet);font-size:10px;font-weight:700;letter-spacing:.09em}.room-code{color:#f1eeea;font:600 13px/1 Space Grotesk,sans-serif;letter-spacing:.07em}.copy-button{min-height:44px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid #363c3f;border-radius:8px;background:#1a1e20;color:#c7c9c7;cursor:pointer;font-size:11px}.presence-divider{height:22px;width:1px;margin:0 2px;background:#34393b}.viewer-count{color:var(--muted);font-size:11px;white-space:nowrap}.viewer-count i{margin-right:5px;color:#b8bbb8}.leave-button{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #3a3432;border-radius:9px;background:#201b1a;color:#f1a08d;cursor:pointer;font-size:12px}.room-content{width:min(1600px,100%);display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,370px);gap:20px;margin:0 auto;padding:30px clamp(18px,3vw,44px) 36px}.watch-column{min-width:0}.watch-heading{min-height:65px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 15px}.watch-heading .eyebrow{margin:0 0 7px;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.watch-heading h1{max-width:740px;overflow:hidden;margin:0;color:var(--ink);font:600 clamp(18px,2vw,25px)/1.2 "Space Grotesk",sans-serif;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}.change-video{min-height:44px;flex:0 0 auto;padding:0 15px;font-size:12px}.playback-bar{display:flex;align-items:center;gap:14px;min-height:54px;padding:0 2px;border-bottom:1px solid var(--line)}.playback-status{display:inline-flex;align-items:center;gap:7px;color:#c3c3bf;font-size:12px;font-weight:600}.playback-status i{color:var(--accent);font-size:10px}.playback-status.is-playing i{color:#86c7a4}.playback-note{color:var(--quiet);font-size:12px}.room-error{margin-top:10px}.chat-column{min-width:0;height:calc(100svh - 126px);min-height:440px;max-height:860px}.video-frame{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border:1px solid #34393c;border-radius:var(--radius-md);background:#08090a}.video-frame #yt-player-iframe,.video-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.video-loading,.video-empty{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;background:#191c1f;text-align:center}.video-loading{color:var(--accent);font-size:24px}.video-empty-icon{display:grid;place-items:center;width:60px;height:60px;margin-bottom:16px;border:1px solid #414548;border-radius:18px;color:var(--accent);font-size:20px}.video-empty h2{margin:0;font:600 18px/1.2 Space Grotesk,sans-serif}.video-empty p{margin:9px 0 0;color:var(--muted);font-size:13px}.chat-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid #34393c;border-radius:var(--radius-md);background:#181b1d}.chat-header{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px;border-bottom:1px solid #303538}.chat-title{display:flex;align-items:center;gap:9px;color:#eeece7;font:600 14px Space Grotesk,sans-serif}.chat-title i{color:var(--accent);font-size:13px}.ai-button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;border:1px solid #434044;border-radius:8px;background:#242124;color:#d3c3c4;cursor:pointer;font-size:11px}.chat-messages{flex:1;overflow-y:auto;padding:16px 13px}.chat-empty{max-width:190px;margin:68px auto 0;color:var(--quiet);text-align:center}.chat-empty i{display:block;margin-bottom:13px;color:#62696c;font-size:23px}.chat-empty p{margin:0;font-size:12px;line-height:1.6}.chat-message{display:flex;gap:9px;margin:0 0 15px}.chat-message.is-mine{flex-direction:row-reverse}.chat-avatar{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:#41484b;color:#f0ece5;font-size:11px;font-weight:700}.chat-avatar.avatar-1{background:#334451}.chat-avatar.avatar-2{background:#553f41}.chat-avatar.avatar-3{background:#355146}.chat-avatar.avatar-4{background:#584b35}.chat-message-body{display:flex;flex-direction:column;align-items:flex-start;max-width:82%}.chat-message.is-mine .chat-message-body{align-items:flex-end}.chat-username{margin:0 0 4px;color:var(--quiet);font-size:10px}.chat-bubble{padding:9px 11px;border:1px solid #373d40;border-radius:11px 11px 11px 3px;background:#252a2d;color:#eeeae4;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.chat-message.is-mine .chat-bubble{border-color:#824c40;border-radius:11px 11px 3px;background:#54362f}.chat-system{width:fit-content;max-width:94%;margin:8px auto 14px;padding:7px 10px;border:1px solid #3a3838;border-radius:10px;color:#c9beba;font-size:10px;line-height:1.45;text-align:center}.chat-form{padding:12px;border-top:1px solid #303538}.chat-input-row{display:flex;gap:8px;align-items:center;padding:5px 5px 5px 12px;border:1px solid #3a4043;border-radius:10px;background:#111416}.chat-input-row:focus-within{border-color:#8b594e;box-shadow:0 0 0 3px #ff795f17}.chat-input{width:100%;min-width:0;height:34px;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.chat-input::placeholder{color:#777e81}.chat-send{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border:0;border-radius:8px;background:var(--accent);color:#171412;cursor:pointer}.chat-send:disabled{opacity:.38}.search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:#050607d1;animation:overlay-in .16s var(--ease-ui) both}.search-dialog{width:min(660px,100%);max-height:min(760px,88svh);display:flex;flex-direction:column;overflow:hidden;border:1px solid #3a4043;border-radius:17px;background:#191c1f;box-shadow:0 28px 100px #0000008c}.search-header{display:flex;align-items:center;justify-content:space-between;min-height:66px;padding:0 20px;border-bottom:1px solid #303538}.search-heading{margin:0;font:600 17px Space Grotesk,sans-serif}.search-close{display:grid;place-items:center;width:44px;height:44px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;font-size:16px}.search-form{display:flex;gap:9px;padding:16px 20px}.search-input{width:100%;min-width:0;height:46px;padding:0 14px;border:1px solid #3b4144;border-radius:9px;outline:0;background:#111416;color:var(--ink);font-size:14px}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ff795f1f}.search-submit{width:50px;min-height:46px;flex:0 0 auto;padding:0}.search-results{flex:1;overflow-y:auto;padding:0 20px 20px}.search-result{display:flex;gap:13px;width:100%;min-height:92px;padding:10px 0;border:0;border-top:1px solid #2a2f32;background:transparent;color:var(--ink);cursor:pointer;text-align:left}.search-result img{width:128px;height:72px;flex:0 0 auto;border-radius:8px;background:#252a2d;object-fit:cover}.result-copy{min-width:0;align-self:center}.result-title{display:-webkit-box;overflow:hidden;color:#efede7;font-size:13px;font-weight:600;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.result-channel{display:block;margin-top:7px;color:var(--quiet);font-size:11px}.search-hint{margin:32px 0;color:var(--muted);font-size:13px;line-height:1.6;text-align:center}.search-error{margin:0 0 12px;color:#ff9885;font-size:12px}.app-loading{min-height:100svh;display:grid;place-items:center;background:var(--bg)}.loading-mark{width:46px;height:46px;border-radius:15px;font-size:17px}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:.75;transform:translateY(6px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.search-dialog{animation:dialog-in .2s var(--ease-ui) both}.button,.icon-button,.copy-button,.leave-button,.chat-send,.ai-button,.search-close{transition-property:transform,background-color,border-color,color,opacity;transition-duration:var(--motion-press),var(--motion-in),var(--motion-out),var(--motion-out),var(--motion-out);transition-timing-function:var(--ease-ui)}.search-result img{transition:transform .6s var(--ease-ui)}.search-result .result-title{transition:color var(--motion-out) var(--ease-ui)}.join-input-row input,.search-input,.chat-input-row{transition:border-color var(--motion-in) var(--ease-ui),box-shadow var(--motion-in) var(--ease-ui),background-color var(--motion-out) var(--ease-ui)}@media(hover:hover)and (pointer:fine){.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary:not(:disabled):hover,.chat-send:not(:disabled):hover{background:#ff896f}.button-secondary:not(:disabled):hover{background:#282d30;border-color:#4a5155}.copy-button:hover{border-color:#555e62;color:#fff}.leave-button:hover{border-color:#6a4038;background:#2a201e}.icon-button:hover{border-color:var(--line);background:var(--surface);color:var(--ink)}.ai-button:not(:disabled):hover{border-color:#6c4e4b;color:#fff}.search-close:hover{border-color:#3a4043;color:var(--ink)}.copy-button:hover,.leave-button:hover,.icon-button:hover,.ai-button:not(:disabled):hover,.search-close:hover{transform:translateY(-1px)}.search-result:hover{background:#ffffff06}.search-result:hover .result-title{color:#ff9a85}.search-result:hover img{transform:scale(1.025)}}.button:active,.icon-button:active,.copy-button:active,.leave-button:active,.chat-send:active,.ai-button:active,.search-close:active{transform:translateY(1px) scale(.985);transition-duration:var(--motion-press)}.button:focus-visible,.icon-button:focus-visible,.copy-button:focus-visible,.leave-button:focus-visible,.chat-send:focus-visible,.ai-button:focus-visible,.search-close:focus-visible{outline-offset:2px}@media(max-width:900px){.auth-content{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:36px}.room-content{grid-template-columns:minmax(0,1fr) 310px;gap:14px}.room-presence{gap:7px;margin-right:12px}.playback-note{font-size:11px}}@media(max-width:820px){.auth-content{width:min(calc(100% - 48px),720px);grid-template-columns:minmax(0,1fr);gap:32px;padding:64px 0 60px}.auth-copy,.room-preview{max-width:620px}.room-content{grid-template-columns:minmax(0,1fr)}.chat-column{height:min(440px,55svh);min-height:360px}}@media(max-width:700px){.topbar{min-height:64px;padding:0 20px}.auth-content{width:min(100% - 40px,520px);grid-template-columns:1fr;gap:38px;padding:58px 0 48px}.auth-copy h1{font-size:clamp(43px,11vw,62px)}.auth-lead{margin:20px 0 24px;font-size:15px}.room-preview{max-width:500px}.preview-screen{height:230px}.auth-footer{padding:16px 20px}.lobby-topbar{padding:0 18px}.account-name{display:none}.lobby-content{width:calc(100% - 36px);padding:58px 0 76px}.lobby-intro h1{font-size:clamp(40px,10vw,58px)}.room-actions{grid-template-columns:1fr;gap:12px;margin-top:32px}.action-card{min-height:0;padding:22px}.action-icon{margin-bottom:16px}.action-card>p{min-height:0;margin-bottom:18px}.room-topbar{position:static;flex-wrap:wrap;gap:10px;padding:10px 16px}.room-topbar .brand{margin-right:auto}.room-presence{order:3;width:100%;min-height:36px;margin:0;padding-top:8px;border-top:1px solid #2b3033}.leave-button{min-height:44px;padding:0 9px}.leave-button span{display:none}.room-content{grid-template-columns:1fr;gap:14px;padding:18px 14px 24px}.watch-heading{align-items:flex-end;gap:10px;margin-bottom:12px}.watch-heading h1{max-width:calc(100vw - 165px);font-size:18px}.change-video{min-height:44px;gap:7px;padding:0 10px;font-size:11px}.playback-bar{min-height:46px;gap:9px}.playback-note{font-size:10px}.chat-column{height:420px;min-height:360px;max-height:none}}@media(max-width:420px){.brand{font-size:15px}.topbar-note{font-size:11px}.preview-bottom{grid-template-columns:1fr;gap:0}.preview-feature{padding:8px 4px}.auth-footer span:last-child{max-width:150px;text-align:right}.room-code-label{font-size:9px}.copy-button{min-height:44px;padding:0 8px;font-size:10px}.viewer-count{font-size:10px}.search-backdrop{padding:10px}.search-header{padding:0 14px}.search-form{padding:12px 14px}.search-results{padding:0 14px 14px}.search-result img{width:104px;height:64px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.search-result img{transition:none}.button:hover,.button:active,.icon-button:hover,.icon-button:active,.copy-button:hover,.copy-button:active,.leave-button:hover,.leave-button:active,.chat-send:hover,.chat-send:active,.ai-button:hover,.ai-button:active,.search-close:hover,.search-close:active,.search-result:hover img{transform:none!important}}
