:root{--bg-primary: #07070b;--bg-secondary: #0e0e13;--bg-tertiary: #14141b;--bg-elevated: #1a1a24;--home-header-bg: rgba(14, 14, 19, .92);--home-sidebar-bg: #0c0c11;--home-accent: #8b5cf6;--home-accent-hover: #7c3aed;--home-input-bg: rgba(255, 255, 255, .06);--home-shadow: 0 1px 3px rgba(0, 0, 0, .35);--glass-bg: rgba(20, 20, 28, .78);--glass-bg-hover: rgba(30, 30, 40, .88);--glass-border: rgba(255, 255, 255, .06);--glass-border-focus: rgba(139, 92, 246, .45);--accent: #8b5cf6;--accent-soft: rgba(139, 92, 246, .14);--accent-hover: #a78bfa;--accent-purple: #8b5cf6;--accent-purple-glow: rgba(139, 92, 246, .28);--accent-cyan: #c4b5fd;--accent-cyan-glow: rgba(196, 181, 253, .2);--accent-red: #fb7185;--accent-red-glow: rgba(251, 113, 133, .28);--accent-green: #4ade80;--accent-live: #f43f5e;--accent-live-glow: rgba(244, 63, 94, .35);--text-primary: #f4f4f5;--text-secondary: #a1a1aa;--text-muted: #71717a;--font-family-title: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-main: 0 12px 40px rgba(0, 0, 0, .45);--shadow-soft: 0 4px 20px rgba(0, 0, 0, .25);--blur-amount: 20px;--radius-xl: 24px;--radius-lg: 18px;--radius-md: 12px;--radius-sm: 8px;--header-height: 60px;--controlbar-height: 76px;--sidebar-width: 340px}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(ellipse 80% 50% at 20% -10%,rgba(139,92,246,.08) 0%,transparent 55%),radial-gradient(ellipse 60% 40% at 90% 100%,rgba(99,102,241,.06) 0%,transparent 50%),var(--bg-primary);color:var(--text-primary);font-family:var(--font-family-body);font-size:15px;line-height:1.5;height:100vh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-title);font-weight:600;letter-spacing:-.01em}@keyframes float{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(3deg)}to{transform:translateY(0) rotate(0)}}@keyframes float-reverse{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(15px) rotate(-3deg)}to{transform:translateY(0) rotate(0)}}@keyframes pulse-live{0%{transform:scale(.97);box-shadow:0 0 0 0 var(--accent-live-glow)}70%{transform:scale(1);box-shadow:0 0 0 6px transparent}to{transform:scale(.97);box-shadow:0 0 0 0 transparent}}@keyframes slide-up{0%{transform:translateY(100%) translate(-50%);opacity:0}to{transform:translateY(0) translate(-50%);opacity:1}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#ffffff03}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(var(--blur-amount));-webkit-backdrop-filter:blur(var(--blur-amount));border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-main);transition:all .3s cubic-bezier(.4,0,.2,1)}.glass-panel:hover{background:var(--glass-bg-hover);border-color:#ffffff1f}.lobby-bg-glow{position:absolute;top:-10%;left:-10%;width:50vw;height:50vw;background:radial-gradient(circle,#8b5cf61a,#0000 70%);z-index:0;pointer-events:none;animation:float 12s ease-in-out infinite}.lobby-bg-glow-2{position:absolute;bottom:-10%;right:-10%;width:50vw;height:50vw;background:radial-gradient(circle,#6366f114,#0000 70%);z-index:0;pointer-events:none;animation:float-reverse 15s ease-in-out infinite}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,#7c3aed 100%);border:none;color:#fff;padding:12px 24px;font-family:var(--font-family-title);font-weight:500;border-radius:var(--radius-md);cursor:pointer;box-shadow:0 4px 16px var(--accent-purple-glow);transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px var(--accent-purple-glow);background:linear-gradient(135deg,var(--accent-hover) 0%,var(--accent) 100%)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#ffffff0d;border:1px solid var(--glass-border);color:var(--text-primary);padding:12px 24px;font-family:var(--font-family-title);font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-secondary:hover{background:#ffffff1a;border-color:#fff3}.input-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.input-group label{color:var(--text-secondary);font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.input-group input,.input-group select{background:#ffffff0a;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:14px 16px;color:#fff;font-family:var(--font-family-body);font-size:15px;outline:none;transition:all .3s ease}.input-group input:focus,.input-group select:focus{border-color:var(--accent-purple);box-shadow:0 0 0 3px var(--accent-purple-glow);background:#ffffff14}.input-group input::placeholder{color:var(--text-muted)}.container-full{height:100vh;width:100vw;display:flex;flex-direction:column;position:relative;overflow:hidden}.meeting-workspace{flex:1;display:flex;position:relative;height:calc(100vh - var(--controlbar-height));width:100%}.video-section{flex:1;display:flex;flex-direction:column;padding:16px 16px 16px 20px;position:relative;gap:16px;transition:all .3s ease;min-width:0}.video-grid-container{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;gap:16px;width:100%;height:100%;position:relative}.stream-player-card,.youtube-player-card{position:relative;width:100%;height:100%;border-radius:var(--radius-xl);overflow:hidden;background:#000;box-shadow:var(--shadow-main);border:1px solid var(--glass-border)}.stream-player-placeholder,.youtube-player-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(circle at 50% 40%,rgba(139,92,246,.08) 0%,transparent 55%),linear-gradient(180deg,#0e0e13,#08080c);padding:32px;text-align:center}.placeholder-pulse-icon{width:48px;height:48px;color:var(--text-muted);opacity:.6}.placeholder-text{font-family:var(--font-family-title);font-size:18px;font-weight:600;color:var(--text-primary)}.placeholder-subtext{color:var(--text-muted);font-size:14px;max-width:280px;line-height:1.5}.stream-iframe-container,.youtube-iframe-container{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;background:#000;container-type:size}.stream-iframe-fit{position:relative;aspect-ratio:16 / 9;width:min(100cqw,calc(100cqh * 16 / 9));height:min(100cqh,56.25cqw);max-width:100%;max-height:100%;flex-shrink:0}.stream-iframe-fit iframe,.stream-iframe-fit video,.stream-iframe-container iframe,.stream-iframe-container video,.youtube-iframe-container iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;transform:none;pointer-events:none}.stream-native-video{object-fit:contain;background:#000}.stream-error-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;background:#000000bf;color:var(--text-secondary);font-size:14px}.stream-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#00000059;border-radius:var(--radius-md);border:1px solid var(--glass-border)}.stream-mode-tab{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:11px 12px;border:1px solid transparent;border-radius:calc(var(--radius-md) - 3px);background:transparent;color:var(--text-muted);font-family:var(--font-family-body);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;-moz-appearance:none;appearance:none;-webkit-appearance:none;outline:none}.stream-mode-tab:hover:not(.active){color:var(--text-primary);background:#ffffff0a}.stream-mode-tab:focus-visible{border-color:var(--glass-border-focus);box-shadow:0 0 0 3px var(--accent-purple-glow)}.stream-mode-tab.active{background:linear-gradient(135deg,var(--accent) 0%,#7c3aed 100%);color:#fff;border-color:#ffffff1f;box-shadow:0 4px 14px #8b5cf659}.stream-mode-badge{font-size:10px;font-weight:600;letter-spacing:.02em;padding:2px 6px;border-radius:999px;background:#ffffff2e;color:#fffffff2}.stream-mode-tab:not(.active) .stream-mode-badge{background:var(--accent-soft);color:var(--accent-hover)}.stream-settings-modal{max-width:520px;max-height:min(90vh,720px);overflow-y:auto}.stream-settings-modal .modal-title{margin-bottom:6px}.stream-settings-modal .modal-desc{margin-bottom:22px}.field-label{color:var(--text-secondary);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.stream-source-group{margin-bottom:18px}.stream-url-input{font-family:SF Mono,Fira Code,ui-monospace,monospace;font-size:13px}.stream-setup-guide{margin-bottom:20px;padding:16px;border-radius:var(--radius-md);background:#8b5cf60f;border:1px solid rgba(139,92,246,.18)}.stream-setup-guide-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;flex-wrap:wrap}.stream-setup-guide-header strong{font-size:14px;color:var(--text-primary)}.stream-setup-tag{font-size:11px;color:var(--accent-hover);background:var(--accent-soft);padding:3px 8px;border-radius:999px}.stream-setup-steps{margin:0 0 14px 18px;padding:0;display:flex;flex-direction:column;gap:10px;color:var(--text-secondary);font-size:13px;line-height:1.5}.stream-setup-steps strong{color:var(--text-primary);font-weight:600}.stream-setup-code{display:block;margin-top:6px;padding:8px 10px;border-radius:var(--radius-sm);background:#00000059;border:1px solid var(--glass-border);font-family:SF Mono,Fira Code,ui-monospace,monospace;font-size:12px;color:var(--accent-cyan);word-break:break-all}.stream-setup-obs{display:flex;flex-direction:column;gap:4px;margin-top:6px;padding:8px 10px;border-radius:var(--radius-sm);background:#00000040;border:1px solid var(--glass-border);font-size:12px}.stream-setup-obs code{color:var(--accent-cyan);font-family:SF Mono,Fira Code,ui-monospace,monospace}.stream-example-url{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-radius:var(--radius-sm);background:#0000004d;border:1px solid var(--glass-border)}.stream-example-label{font-size:11px;color:var(--text-muted);flex-shrink:0}.stream-example-url code{flex:1;font-size:12px;font-family:SF Mono,Fira Code,ui-monospace,monospace;color:var(--text-primary);word-break:break-all}.stream-copy-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#ffffff0f;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:background .15s,color .15s}.stream-copy-btn:hover{background:#ffffff1a;color:var(--text-primary)}.input-hint code{font-family:SF Mono,Fira Code,ui-monospace,monospace;font-size:11px;color:var(--accent-cyan);background:#00000040;padding:1px 5px;border-radius:4px}.stream-auto-card{margin-bottom:18px;padding:16px;border-radius:var(--radius-md);background:#4ade800f;border:1px solid rgba(74,222,128,.2)}.stream-auto-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--accent-green)}.stream-auto-card-header strong{font-size:14px;color:var(--text-primary)}.stream-auto-desc{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.stream-auto-status{display:flex;align-items:flex-start;gap:8px;font-size:12px;color:var(--text-muted);line-height:1.45;word-break:break-all}.stream-auto-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:4px}.stream-auto-dot.online{background:var(--accent-green);box-shadow:0 0 8px #4ade8080}.stream-auto-dot.offline{background:var(--accent-red)}.stream-manual-toggle{margin-top:12px;padding:0;border:none;background:none;color:var(--accent-hover);font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.studio-live-btn.loading{opacity:.85;cursor:wait}.spin-icon{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.voice-stage-audio-sink{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.voice-stage-banner{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;font-size:13px;font-weight:500;box-shadow:0 10px 28px #00000073;border:1px solid var(--glass-border);background:#0e0b1af0;pointer-events:auto}.voice-stage-banner.live{background:linear-gradient(135deg,#300e18f7,#160a10f7);border-color:#f43f5e6b;color:#fecdd3;box-shadow:0 10px 28px #00000073,0 0 0 1px #f43f5e14 inset}.voice-stage-banner.listening{background:linear-gradient(135deg,#0c2016f7,#0a120ef7);border-color:#4ade8059;color:#bbf7d0}.voice-engine-tag{font-size:10px;padding:2px 7px;border-radius:999px;background:#ffffff1f;color:#ffffffd9}.voice-banner-mic-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#00000040;color:inherit;font-size:12px;cursor:pointer}.voice-pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-live);box-shadow:0 0 #f43f5e99;animation:voice-pulse 1.5s infinite;flex-shrink:0}@keyframes voice-pulse{0%{box-shadow:0 0 #f43f5e8c}70%{box-shadow:0 0 0 8px #f43f5e00}to{box-shadow:0 0 #f43f5e00}}.hand-raise-dock{position:absolute;left:16px;bottom:16px;z-index:40;width:min(300px,calc(100% - 32px));border-radius:var(--radius-lg);background:#0e0b1af0;border:1px solid rgba(139,92,246,.35);box-shadow:0 12px 36px #00000080;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);overflow:hidden}.hand-raise-dock.pulse{animation:hand-dock-pulse .6s ease 2}@keyframes hand-dock-pulse{0%,to{box-shadow:0 12px 36px #00000080;border-color:#8b5cf659}50%{box-shadow:0 0 0 3px #8b5cf673,0 12px 36px #00000080;border-color:#a78bfab3}}.hand-raise-dock-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border:none;background:#8b5cf61f;color:var(--text-primary);cursor:pointer;font-family:var(--font-family-body)}.hand-raise-dock-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.hand-raise-count{min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--accent-live);color:#fff;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.hand-raise-dock-body{border-top:1px solid var(--glass-border)}.hand-raise-live-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#f43f5e1a;border-bottom:1px solid rgba(244,63,94,.2);font-size:12px}.hand-raise-live-info{display:flex;align-items:center;gap:6px;color:#fecdd3}.hand-raise-disconnect{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:var(--radius-sm);border:1px solid rgba(244,63,94,.35);background:transparent;color:#fda4af;font-size:11px;cursor:pointer}.hand-raise-scroll{max-height:260px;overflow-y:auto;padding:6px}.hand-raise-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 6px;border-radius:var(--radius-sm)}.hand-raise-row:hover{background:#ffffff0a}.hand-raise-student{display:flex;align-items:center;gap:8px;min-width:0}.hand-raise-avatar .user-avatar-fallback{background:var(--accent-soft);color:var(--accent-hover)}.hand-raise-name{font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-raise-connect{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:var(--radius-sm);border:none;background:linear-gradient(135deg,var(--accent) 0%,#7c3aed 100%);color:#fff;font-size:11px;font-weight:500;cursor:pointer;flex-shrink:0}.hand-raise-connect:disabled{opacity:.45;cursor:not-allowed}.hand-raise-load-more{width:100%;margin-top:4px;padding:8px;border:none;border-radius:var(--radius-sm);background:#ffffff0d;color:var(--text-secondary);font-size:12px;cursor:pointer}.hand-raise-load-more:hover{background:#ffffff14;color:var(--text-primary)}.hand-raise-empty{padding:12px 14px;font-size:12px;color:var(--text-muted)}.tab-badge.hand-tab-badge{background:#f43f5e40;color:#fda4af;display:inline-flex;align-items:center;gap:3px}.lobby-student-note{margin:0 0 16px;padding:10px 12px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid var(--glass-border);font-size:12px;color:var(--text-muted);line-height:1.45}.participant-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.participant-remove-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid rgba(244,63,94,.35);background:#f43f5e1a;color:#fda4af;cursor:pointer}.participant-remove-btn:hover{background:#f43f5e33;color:#fecdd3}.hand-raise-row-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.hand-raise-remove{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);border:1px solid rgba(244,63,94,.35);background:#f43f5e1f;color:#fda4af;cursor:pointer}.hand-raise-remove:hover{background:#f43f5e38}.people-hand-hint{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;border-radius:var(--radius-sm);background:#8b5cf61a;border:1px solid rgba(139,92,246,.22);font-size:12px;color:var(--text-secondary)}.voice-queue-panel{margin-bottom:12px;padding:12px;border-radius:var(--radius-md);background:#8b5cf614;border:1px solid rgba(139,92,246,.22)}.voice-queue-header{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-hover);margin-bottom:10px}.voice-queue-active{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;margin-bottom:8px;border-radius:var(--radius-sm);background:#f43f5e1f;border:1px solid rgba(244,63,94,.25);font-size:13px}.voice-queue-active-info{display:flex;align-items:center;gap:8px}.voice-disconnect-btn,.voice-connect-btn,.participant-connect-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:#ffffff0f;color:var(--text-primary);font-size:12px;cursor:pointer;flex-shrink:0}.voice-connect-btn{background:var(--accent-soft);border-color:#8b5cf659;color:var(--accent-hover)}.voice-connect-btn:disabled,.participant-connect-btn:disabled{opacity:.45;cursor:not-allowed}.voice-disconnect-btn{color:#fecdd3;border-color:#f43f5e59}.voice-request-list{display:flex;flex-direction:column;gap:6px}.voice-request-label{font-size:11px;color:var(--text-muted);margin-bottom:2px}.voice-request-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0}.voice-request-name{font-size:13px;color:var(--text-primary)}.voice-student-actions{margin-bottom:12px}.voice-hand-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid rgba(139,92,246,.35);background:var(--accent-soft);color:var(--accent-hover);font-size:13px;font-weight:500;cursor:pointer}.voice-hand-btn.waiting{background:#ffffff0a;color:var(--text-secondary)}.voice-student-live{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:var(--radius-md);background:#f43f5e1f;border:1px solid rgba(244,63,94,.3);color:#fecdd3;font-size:13px}.participant-card.is-speaking{border-color:#f43f5e66;background:#f43f5e0f}.participant-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.participant-speaking-badge,.participant-hand-badge{font-size:10px;padding:2px 6px;border-radius:999px}.participant-speaking-badge{background:#f43f5e33;color:#fda4af}.participant-hand-badge{background:#8b5cf633;color:var(--accent-hover)}.participant-card{display:flex;align-items:center;gap:10px}.youtube-iframe-container.allow-pointer{pointer-events:auto}.stream-chrome{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;justify-content:flex-start;pointer-events:none}.stream-chrome-top{display:flex;align-items:center;gap:12px;padding:16px 20px;background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,transparent 100%)}.stream-chrome-title{font-family:var(--font-family-title);font-size:14px;font-weight:600;color:#ffffffeb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stream-chrome-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px 18px;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 100%);opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease}.stream-player-card:hover .stream-chrome-bottom,.stream-player-card:focus-within .stream-chrome-bottom{opacity:1;transform:translateY(0)}.stream-chrome-controls{display:flex;align-items:center;gap:10px;pointer-events:auto}.stream-chrome-bottom>.player-custom-btn{pointer-events:auto}.stream-chrome-top .badge-live{pointer-events:auto}.player-controls-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:10;display:flex;flex-direction:column;justify-content:space-between;padding:20px;background:linear-gradient(to bottom,#00000059,#0000 18%,#0000 85%,#00000073);opacity:0;transition:opacity .3s ease;pointer-events:none}.player-controls-overlay .player-custom-btn,.player-controls-overlay .sync-live-btn,.player-controls-overlay .volume-slider{pointer-events:auto}.stream-player-card:hover .player-controls-overlay,.youtube-player-card:hover .player-controls-overlay{opacity:1}.overlay-top{display:flex;justify-content:space-between;align-items:center}.badge-live{background:#f43f5e26;color:#fda4af;padding:6px 12px;border-radius:999px;font-family:var(--font-family-title);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(244,63,94,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.badge-live:before{content:"";display:inline-block;width:6px;height:6px;background:var(--accent-live);border-radius:50%;animation:pulse-live 2s infinite}.stream-title-overlay{font-family:var(--font-family-title);font-size:15px;font-weight:600;color:#ffffffeb;text-shadow:0 1px 8px rgba(0,0,0,.5);max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-custom-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.08);color:#fff;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.player-custom-btn:hover{background:#ffffff29;border-color:#ffffff24}.player-custom-btn.small{width:34px;height:34px}.volume-slider{width:72px;accent-color:var(--accent);cursor:pointer;opacity:.85}.sync-live-btn{font-size:11px;font-weight:600;letter-spacing:.04em;padding:8px 14px;border-radius:999px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#ffffffe6;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sync-live-btn:hover{background:var(--accent-soft);border-color:#8b5cf659;color:var(--accent-cyan)}.badge-offline{background:#ffffff1a;color:var(--text-secondary);padding:4px 10px;border-radius:var(--radius-sm);font-family:var(--font-family-title);font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.overlay-bottom{display:flex;justify-content:space-between;align-items:center;color:#fff}.player-left-controls{display:flex;align-items:center;gap:16px}.volume-control{display:flex;align-items:center;gap:8px}.participants-grid{display:flex;flex-direction:row;justify-content:center;flex-wrap:wrap;gap:16px;margin-top:10px}.participant-tile{width:220px;height:140px;border-radius:var(--radius-md);overflow:hidden;position:relative;background:var(--bg-tertiary);border:1.5px solid var(--glass-border);box-shadow:0 4px 10px #0000004d;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.participant-tile.active-speaker{border-color:var(--accent-purple);box-shadow:0 0 12px var(--accent-purple-glow)}.participant-video{width:100%;height:100%;object-fit:cover}.participant-avatar-fallback{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#2b274c,#17152b);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:20px;color:var(--accent-purple);box-shadow:0 4px 10px #0006;border:1px solid rgba(255,255,255,.05)}.participant-tile .participant-tile-info{position:absolute;bottom:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:center;z-index:5}.participant-tile .participant-tile-name{background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:3px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500;color:#fff;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-badge{background:var(--accent-soft);border:1px solid rgba(139,92,246,.28);color:var(--accent-cyan);font-size:9px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:999px;margin-left:6px;letter-spacing:.04em}.participant-status-icons{display:flex;gap:4px}.status-icon-badge{width:20px;height:20px;border-radius:50%;background:#000000a6;display:flex;align-items:center;justify-content:center;color:#fff}.status-icon-badge.muted{color:var(--accent-red)}.meeting-sidebar{width:var(--sidebar-width);min-width:280px;background:var(--bg-secondary);border-left:1px solid var(--glass-border);border-radius:0;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:none}.sidebar-header{padding:20px 20px 16px;border-bottom:1px solid var(--glass-border)}.sidebar-header h3{font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.sidebar-tabs{display:flex;background:var(--bg-tertiary);padding:4px;border-radius:var(--radius-md);margin:16px 16px 12px;border:1px solid var(--glass-border);gap:4px}.tab-btn{flex:1;background:transparent;border:none;color:var(--text-muted);padding:10px 12px;font-family:var(--font-family-title);font-size:13px;font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;position:relative}.tab-btn:hover{color:var(--text-secondary)}.tab-btn.active{background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-soft)}.tab-badge{background:var(--accent-soft);color:var(--accent-cyan);font-size:10px;font-weight:700;border-radius:999px;min-width:18px;height:18px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;position:static;margin-left:2px;box-shadow:none}.sidebar-content{flex:1;overflow-y:auto;padding:0 20px 20px;display:flex;flex-direction:column}.chat-messages-container{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px;margin-bottom:16px}.chat-bubble{background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:12px 14px;animation:fade-in .25s ease;word-break:break-word}.chat-bubble.supervisor-msg{background:var(--accent-soft);border-color:#8b5cf638}.chat-bubble.highlighted-msg{border-color:#00f0ff59;box-shadow:0 0 0 1px #00f0ff26}.user-avatar{display:inline-flex;flex-shrink:0;border-radius:50%;overflow:hidden;vertical-align:middle;background:#ffffff14;border:1px solid rgba(255,255,255,.08)}.user-avatar img{width:100%;height:100%;object-fit:cover;display:block}.user-avatar--sm{width:22px;height:22px}.user-avatar--md{width:28px;height:28px}.user-avatar--lg{width:38px;height:38px}.user-avatar-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--text-secondary);background:linear-gradient(135deg,#2b274c,#17152b)}.user-avatar--sm .user-avatar-fallback{font-size:10px}.user-avatar--md .user-avatar-fallback{font-size:12px}.user-avatar--lg .user-avatar-fallback{font-size:14px}.chat-avatar{margin-right:6px}.chat-bubble-actions{display:flex;align-items:center;gap:8px}.highlight-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;padding:4px;border-radius:6px;transition:all .2s}.highlight-btn:hover,.highlight-btn.active{color:var(--accent-cyan);background:#00f0ff1a}.people-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}.participant-card{position:relative;display:flex;align-items:center;gap:12px;padding:12px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);transition:border-color .2s;overflow:hidden}.participant-card.is-host{border-color:#8b5cf640;background:#8b5cf60f}.participant-card .participant-avatar{border:1px solid rgba(255,255,255,.1)}.participant-card.is-host .participant-avatar{border-color:#8b5cf666}.participant-card.is-host .participant-avatar .user-avatar-fallback{color:var(--accent-purple)}.hand-raise-avatar{width:28px;height:28px;border:none;background:transparent}.sidebar-load-more{width:100%;margin:4px 0;padding:8px 10px;border:1px dashed rgba(255,255,255,.1);border-radius:var(--radius-sm);background:#ffffff08;color:var(--text-secondary);font-size:12px;cursor:pointer;flex-shrink:0}.sidebar-load-more:hover{background:#ffffff0f;color:var(--text-primary)}.people-list{contain:layout style}.participant-card .participant-info{position:static;flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.participant-card .participant-name{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0;max-width:none;overflow:visible;text-overflow:unset;white-space:normal;word-break:break-word;font-size:14px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;flex-wrap:wrap;gap:6px;line-height:1.35}.participant-card .participant-you{font-size:10px;color:var(--text-muted);font-weight:500;flex-shrink:0}.participant-card .participant-role{font-size:11px;color:var(--accent-cyan);font-weight:600}.empty-state{text-align:center;color:var(--text-muted);margin:auto;padding:24px 12px}.empty-state p{font-size:13px}.empty-state-sub{font-size:11px!important;margin-top:4px;opacity:.8}.chat-bubble.my-pending-msg{border-style:dashed;opacity:.7}.chat-bubble-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.chat-sender-name{font-weight:600;font-size:12px;color:var(--text-primary);display:flex;align-items:center;min-width:0;flex:1}.chat-sender-name.host-name{color:var(--accent-purple)}.chat-sender-text{word-break:break-word;line-height:1.35}.chat-time{font-size:10px;color:var(--text-muted)}.chat-text{font-size:13.5px;color:var(--text-secondary)}.chat-input-area{display:flex;gap:8px;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:8px;margin-top:auto}.chat-send-btn{background:var(--accent);border:none;color:#fff;width:38px;height:38px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.chat-send-btn:hover{background:var(--accent-hover)}.chat-input-area textarea{flex:1;background:transparent;border:none;resize:none;height:36px;color:#fff;padding:8px;outline:none;font-family:var(--font-family-body);font-size:13.5px}.chat-input-area textarea::placeholder{color:var(--text-muted)}.moderation-queue-list{display:flex;flex-direction:column;gap:12px}.queue-card{background:#ffffff0a;border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:12px;display:flex;flex-direction:column;gap:8px}.queue-card-actions{display:flex;gap:6px}.queue-btn{flex:1;border:none;padding:6px;border-radius:var(--radius-sm);font-size:11px;font-family:var(--font-family-title);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s}.queue-btn.approve{background:#4ade801a;border:1px solid rgba(74,222,128,.25);color:var(--accent-green)}.queue-btn.approve:hover{background:#4ade802e}.queue-btn.highlight{background:var(--accent-soft);border:1px solid rgba(139,92,246,.28);color:var(--accent-cyan)}.queue-btn.highlight:hover{background:#8b5cf633}.queue-btn.highlight.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-purple-glow)}.queue-btn.reject{background:#fb71851a;border:1px solid rgba(251,113,133,.25);color:var(--accent-red)}.queue-btn.reject:hover{background:#fb71852e}.meeting-room{position:relative;background:var(--bg-primary);isolation:isolate}.meeting-room:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 30% 20%,rgba(139,92,246,.04) 0%,transparent 50%);pointer-events:none;z-index:0}.meeting-room>*:not(.voice-stage-banner):not(.voice-stage-audio-sink){position:relative;z-index:1}.meeting-room>.modal-overlay{position:fixed;z-index:500}.meeting-controlbar{height:var(--controlbar-height);background:#0e0e13e0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-top:1px solid var(--glass-border);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 24px;z-index:100;gap:16px}.control-left-info{display:flex;flex-direction:column;gap:3px;min-width:0}.meeting-code-display{font-family:var(--font-family-title);font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--text-primary)}.meeting-code{font-family:ui-monospace,SF Mono,monospace;letter-spacing:.03em;font-size:13px;color:var(--text-secondary)}.meeting-copy-link{background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);transition:all .2s}.meeting-copy-link:hover{color:var(--accent-cyan);border-color:#8b5cf64d;background:var(--accent-soft)}.meeting-subtitle{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-center-actions{display:flex;gap:6px;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:999px;padding:6px}.control-btn-pill{height:38px;padding:0 16px;border-radius:999px;background:transparent;border:none;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-family:var(--font-family-title);font-size:13px;font-weight:500;transition:all .2s ease;white-space:nowrap}.control-btn-pill:hover{background:#ffffff0f;color:var(--text-primary)}.control-btn-pill.danger{color:#fda4af}.control-btn-pill.danger:hover{background:#fb71851f;color:#fb7185}.control-btn-pill.studio-toggle.active{background:var(--accent-soft);color:var(--accent-cyan)}.role-badge{text-transform:capitalize;color:var(--accent-cyan);font-weight:500}.control-right-actions{display:flex;gap:8px;justify-content:flex-end}.control-btn{width:42px;height:42px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.control-btn:hover{background:#ffffff14;color:var(--text-primary);border-color:#ffffff1a}.control-btn.active{background:var(--accent-soft);border-color:#8b5cf659;color:var(--accent-cyan)}.control-btn.danger{background:#fb718526;border-color:#fb71854d;color:#fda4af}.highlighted-question-banner{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:100;width:min(88%,560px);background:#0e0e13eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(139,92,246,.35);box-shadow:0 8px 32px #0006;border-radius:var(--radius-lg);padding:16px 20px;display:flex;align-items:flex-start;gap:14px;animation:slide-up .4s cubic-bezier(.18,.89,.32,1.1) forwards}.highlighted-icon{background:var(--accent-soft);color:var(--accent-cyan);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid rgba(139,92,246,.3);font-size:18px;font-weight:700}.highlighted-content{flex:1}.highlighted-sender{font-family:var(--font-family-title);font-size:11px;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.highlighted-text{font-size:15px;font-weight:500;color:#fff;line-height:1.4}.lobby-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;z-index:1}.lobby-container{width:100%;max-width:900px;display:flex;gap:40px;align-items:stretch}@media (max-width: 1024px){.meeting-controlbar{grid-template-columns:1fr auto;padding:0 16px}.control-left-info{display:none}}@media (max-width: 860px){.lobby-container{flex-direction:column;align-items:center;max-width:460px}.brand-title{font-size:32px}.meeting-workspace{flex-direction:column}.meeting-sidebar{width:100%;min-width:0;height:42vh;border-left:none;border-top:1px solid var(--glass-border);box-shadow:none}.video-section{padding:12px!important}.studio-panel{padding:10px 12px}.studio-panel-actions{flex-wrap:wrap}}@media (max-width: 640px){:root{--controlbar-height: 72px}.control-btn-pill span{display:none}.control-btn-pill{width:40px;padding:0}.studio-live-btn span{display:none}}.lobby-brand{flex:1;display:flex;flex-direction:column;justify-content:center;gap:20px}.logo-container{display:flex;align-items:center;gap:12px;color:var(--accent-cyan)}.logo-icon{width:48px;height:48px}.logo-text{font-family:var(--font-family-title);font-size:28px;font-weight:800;background:linear-gradient(135deg,white 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-title{font-size:40px;line-height:1.12;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#fafafa 0%,var(--accent-cyan) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-desc{color:var(--text-secondary);font-size:16px}.brand-features{display:flex;flex-direction:column;gap:10px}.feature-item{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px}.feature-item svg{color:var(--accent-green)}.lobby-forms-card{width:420px;padding:28px;flex-shrink:0;border-radius:var(--radius-xl)}.lobby-tabs{display:flex;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--radius-md);margin-bottom:24px;padding:4px;gap:4px}.lobby-tab-btn{flex:1;background:transparent;border:none;color:var(--text-secondary);padding:10px;font-family:var(--font-family-title);font-weight:500;font-size:14px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.lobby-tab-btn.active{background:#ffffff14;color:#fff}.youtube-player-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);gap:16px;background:linear-gradient(135deg,#0f0a1d,#06040b)}.placeholder-pulse-icon{width:64px;height:64px;color:var(--accent-purple);animation:float 4s ease-in-out infinite}.placeholder-text{font-family:var(--font-family-title);font-size:18px;font-weight:500}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:500;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}.settings-modal{width:100%;max-width:480px;max-height:min(90vh,720px);overflow-y:auto;padding:28px 30px 30px;position:relative;margin:auto;animation:fade-in .3s cubic-bezier(.16,1,.3,1)}.modal-close-btn{position:absolute;top:20px;right:20px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;transition:color .2s}.modal-close-btn:hover{color:#fff}.modal-title{margin-bottom:20px;font-size:22px;font-weight:700}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1000;display:flex;flex-direction:column;gap:8px;width:min(420px,calc(100vw - 32px));pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;background:#0e0b1af0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);padding:10px 12px 10px 14px;border-radius:var(--radius-md);color:#fff;box-shadow:0 8px 28px #00000073;font-size:13px;animation:toast-in .28s cubic-bezier(.18,.89,.32,1.1)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-icon{flex-shrink:0;opacity:.9}.toast-text{flex:1;line-height:1.35}.toast-dismiss{flex-shrink:0;background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;transition:all .15s}.toast-dismiss:hover{color:#fff;background:#ffffff14}.toast-info .toast-icon{color:var(--accent-cyan)}.toast-success .toast-icon{color:var(--accent-green)}.toast-warning .toast-icon{color:#ffb703}.toast-error .toast-icon{color:var(--accent-red)}.obs-status-badge{background:#ffffff08;border:1px solid var(--glass-border);border-radius:20px;padding:4px 10px;font-size:11px;font-weight:500;display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-family:var(--font-family-body);margin-left:8px}.obs-status-badge:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-1px)}.obs-status-badge.connected{color:var(--accent-green);border-color:#00ff884d;background:#00ff880d}.obs-status-badge.connected .badge-dot{background:var(--accent-green);box-shadow:0 0 8px var(--accent-green)}.obs-status-badge.disconnected{color:var(--text-muted);border-color:var(--glass-border)}.obs-status-badge.disconnected .badge-dot{background:var(--text-muted)}.badge-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.obs-controls-group{display:flex;gap:8px;align-items:center;padding-right:12px;border-right:1px solid var(--glass-border);margin-right:12px}.control-btn.disabled{opacity:.4;cursor:not-allowed!important}.control-btn.disabled:hover{transform:none;background:#ffffff0d}.control-btn.muted{background:#ff005526;border-color:#f056;color:var(--accent-red)}.control-btn.muted:hover{background:#ff005540;box-shadow:0 0 10px #f053}.control-btn.active-mic{background:#00ff881a;border-color:#00ff884d;color:var(--accent-green)}.control-btn.active-mic:hover{background:#0f83;box-shadow:0 0 10px #0f83}.control-btn.streaming{background:var(--accent-red);border-color:transparent;color:var(--text-primary);animation:pulse-live 1.5s infinite}.control-btn.streaming:hover{background:#c04}.scene-selector-container{position:relative;display:inline-block}.scene-dropdown-menu{position:absolute;bottom:60px;left:50%;transform:translate(-50%);width:220px;max-height:280px;overflow-y:auto;background:var(--bg-tertiary);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:0 10px 25px #00000080;z-index:1000;display:flex;flex-direction:column;padding:8px 0;animation:fade-in .2s ease-out}.scene-dropdown-header{padding:8px 16px;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid rgba(255,255,255,.05);margin-bottom:6px}.scene-dropdown-item{background:transparent;border:none;color:var(--text-secondary);padding:10px 16px;font-size:13px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:10px;width:100%;transition:all .2s ease}.scene-dropdown-item:hover{background:#ffffff0d;color:var(--text-primary)}.scene-dropdown-item.active{background:#9d4edd26;color:var(--accent-purple);font-weight:500}.scene-dropdown-item.active .scene-dot{background:var(--accent-purple);box-shadow:0 0 6px var(--accent-purple)}.scene-dot{width:6px;height:6px;border-radius:50%;background:transparent;display:inline-block}.scene-dropdown-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:13px}.dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999;background:transparent}.studio-panel{position:absolute;bottom:var(--controlbar-height);left:0;right:0;z-index:90;background:#0e0e13f0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--glass-border);padding:16px 24px;animation:slide-up-studio .25s ease-out}@keyframes slide-up-studio{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.studio-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.studio-panel-title{display:flex;align-items:center;gap:8px;font-family:var(--font-family-title);font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.studio-panel-actions{display:flex;align-items:center;gap:10px}.control-btn.studio-btn{width:42px;height:42px}.studio-live-btn{height:40px;padding:0 18px;border-radius:999px;border:1px solid rgba(139,92,246,.35);background:var(--accent-soft);color:var(--text-primary);display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-family:var(--font-family-title);font-size:12px;font-weight:600;transition:all .2s}.studio-live-btn:hover:not(.disabled){background:#8b5cf638;border-color:#8b5cf680}.studio-live-btn.streaming{background:#f43f5e26;border-color:#f43f5e59;color:#fda4af}.studio-live-btn.disabled{opacity:.4;cursor:not-allowed}.studio-settings-links{margin-left:auto;display:flex;align-items:center;gap:14px}.studio-settings-link{background:transparent;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.studio-settings-link:hover{color:var(--accent-cyan)}.studio-scene-menu{bottom:52px}.modal-overlay{animation:fade-in .2s ease}.settings-modal{animation:modal-in .25s cubic-bezier(.18,.89,.32,1.1)}@keyframes modal-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-desc,.input-hint{color:var(--text-secondary);font-size:13px;line-height:1.45}.input-hint{font-size:11px;margin-top:4px;display:block}.modal-actions{display:flex;gap:12px;margin-top:24px}.modal-actions .btn-primary,.modal-actions .btn-secondary{flex:1}.status-banner{display:flex;align-items:flex-start;gap:8px;padding:12px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:20px;line-height:1.4}.status-banner.success{background:#00ff881a;border:1px solid rgba(0,255,136,.3);color:var(--accent-green)}.status-banner.error{background:#ff00551a;border:1px solid rgba(255,0,85,.25);color:var(--accent-red)}.input-readonly{background:#0003!important}.btn-danger-text{width:100%;margin-top:10px;color:var(--accent-red)!important}.obs-connected-panel{padding:10px 0}.class-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);padding:14px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s}.class-card:hover{border-color:#9d4edd40}.class-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.class-card-title{font-weight:600;font-size:14px;color:#fff}.class-card-id{font-size:10px;color:var(--text-muted);font-family:monospace}.class-card-actions{display:flex;gap:6px;align-items:center}.class-list{display:flex;flex-direction:column;gap:12px;max-height:320px;overflow-y:auto;padding-right:4px}@keyframes pulse-icon{0%{transform:scale(1)}50%{transform:scale(1.12)}to{transform:scale(1)}}.pulse-icon{animation:pulse-icon 1.5s infinite ease-in-out}.home-app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary)}.home-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 24px;min-height:68px;background:var(--home-header-bg);border-bottom:1px solid var(--glass-border);position:sticky;top:0;z-index:100;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.home-header-left,.home-header-right{display:flex;align-items:center;gap:8px;min-width:0}.home-header-right{gap:4px;flex-shrink:0}.home-brand-lockup{display:flex;align-items:center;padding:6px 16px 6px 8px;border-radius:var(--radius-md)}.brand-logo-img{object-fit:contain;object-position:left center;max-width:min(280px,56vw);height:auto;max-height:44px}.home-time{font-size:13px;color:var(--text-secondary);white-space:nowrap;display:none}.home-profile-chip{display:flex;align-items:center;gap:6px}.home-icon-btn{width:40px;height:40px;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s}.home-icon-btn:hover{background:var(--home-input-bg);color:var(--text-primary)}.home-menu-btn{display:none}.home-layout{flex:1;display:flex;min-height:0}.home-sidebar{width:88px;flex-shrink:0;background:var(--home-sidebar-bg);border-right:1px solid var(--glass-border);padding:12px 8px;display:flex;flex-direction:column;gap:4px}.home-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border:none;border-radius:999px;background:transparent;color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:background .2s,color .2s}.home-nav-item:hover{background:var(--home-input-bg);color:var(--text-primary)}.home-nav-item.active{background:var(--accent-soft);color:var(--home-accent)}.home-sidebar-backdrop{display:none}.home-main{flex:1;overflow-y:auto;padding:32px 24px 48px;display:flex;flex-direction:column;align-items:center}.home-hero{width:100%;max-width:680px;text-align:center;padding:56px 20px 28px}.home-hero--signed-in{padding-top:32px}.home-hero-title{font-family:var(--font-family-title);font-size:clamp(1.65rem,3.5vw,2.5rem);font-weight:500;line-height:1.22;color:var(--text-primary);margin-bottom:10px;letter-spacing:-.025em}.home-hero-sub{font-size:clamp(.9rem,1.8vw,1.05rem);color:var(--text-secondary);margin-bottom:36px;line-height:1.55;max-width:480px;margin-left:auto;margin-right:auto}.home-actions-card{width:100%;max-width:560px;margin:0 auto;padding:4px}.home-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px}.home-join-row{display:flex;align-items:center;gap:8px;flex:1;min-width:min(100%,280px);max-width:420px}.home-join-input-wrap{flex:1;display:flex;align-items:center;background:var(--home-input-bg);border:1px solid var(--glass-border);border-radius:999px;padding:0 20px;min-height:50px;transition:border-color .2s,box-shadow .2s}.home-join-input-wrap:focus-within{border-color:var(--glass-border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.home-join-input-wrap input{flex:1;border:none;background:transparent;color:var(--text-primary);font-size:15px;outline:none;min-width:0}.home-join-input-wrap input::placeholder{color:var(--text-muted)}.home-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;font-family:var(--font-family-body);font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,box-shadow .2s,opacity .2s;white-space:nowrap}.home-btn--primary{background:var(--home-accent);color:#fff;padding:0 24px;min-height:48px;box-shadow:var(--home-shadow)}.home-btn--primary:hover{background:var(--home-accent-hover)}.home-btn--meet{padding:0 20px}.home-btn--join{background:transparent;color:var(--home-accent);padding:0 20px;min-height:50px;font-weight:600;font-size:15px}.home-btn--join:hover:not(:disabled){background:var(--accent-soft)}.home-btn--join:disabled{opacity:.38;cursor:not-allowed}.home-btn--google{background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--glass-border);padding:0 24px;min-height:48px;margin:0 auto}.home-btn--google:hover{background:var(--glass-bg-hover);box-shadow:var(--shadow-soft)}.home-btn--outline{background:transparent;border:1px solid var(--glass-border);color:var(--text-primary);padding:0 14px;min-height:36px}.home-btn--danger{background:transparent;border:1px solid rgba(217,48,37,.35);color:var(--accent-red);padding:0 10px;min-height:36px}.home-btn--sm{min-height:36px;font-size:13px}.home-btn--full{width:100%}.home-field{display:flex;flex-direction:column;gap:6px;text-align:left;width:100%}.home-field span{font-size:13px;font-weight:500;color:var(--text-secondary)}.home-field input{width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--glass-border);background:var(--home-input-bg);color:var(--text-primary);font-size:14px;outline:none}.home-field input:focus{border-color:var(--glass-border-focus);box-shadow:0 0 0 3px var(--accent-soft)}.home-note{font-size:13px;color:var(--text-muted);margin-top:20px}.home-divider{width:100%;max-width:640px;height:1px;background:var(--glass-border);margin:40px auto 36px;opacity:.65}.home-carousel{width:100%;max-width:900px;display:flex;align-items:center;gap:8px;padding:0 8px}.home-carousel-body{flex:1;text-align:center;padding:16px}.home-carousel-art{display:flex;justify-content:center;margin-bottom:22px}.home-carousel-mark{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 0 28px rgba(139,92,246,.22));animation:carousel-mark-in .4s cubic-bezier(.22,1,.36,1)}@keyframes carousel-mark-in{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.home-carousel-body h3{font-size:1.125rem;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.home-carousel-body p{font-size:14px;color:var(--text-secondary);max-width:420px;margin:0 auto 16px;line-height:1.5}.home-carousel-dots{display:flex;justify-content:center;gap:8px}.home-carousel-dots button{width:8px;height:8px;border-radius:50%;border:none;background:var(--glass-border);padding:0;cursor:pointer}.home-carousel-dots button.active{background:var(--home-accent)}.home-carousel-arrow{width:40px;height:40px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.home-carousel-arrow:hover{background:var(--home-input-bg);color:var(--text-primary)}.home-panel{width:100%;max-width:480px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-soft)}.home-panel--wide{max-width:720px}.home-panel-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:var(--home-accent)}.home-panel-head h2{font-size:1.25rem;font-weight:600}.home-panel-desc{color:var(--text-secondary);font-size:14px;margin-bottom:20px}.home-form{display:flex;flex-direction:column;gap:16px}.home-info-box{display:flex;gap:8px;padding:12px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text-secondary);font-size:12px;line-height:1.4}.home-section-title{font-size:1.35rem;font-weight:500;margin-bottom:20px}.home-empty{text-align:center;padding:48px 16px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:12px}.home-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.home-class-card{border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:16px;background:var(--bg-elevated);box-shadow:var(--home-shadow)}.home-class-card-top h3{font-size:15px;font-weight:600;margin-bottom:4px}.home-class-card-top code{font-size:11px;color:var(--text-muted)}.home-class-card-actions{display:flex;gap:8px;margin-top:14px}.home-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}.home-modal{position:relative;width:100%;max-width:440px;background:var(--bg-elevated);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-main)}.home-modal h2{font-size:1.25rem;margin-bottom:20px}.home-modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center}.home-modal-close:hover{background:var(--home-input-bg)}.home-copy-row{display:flex;gap:8px}.home-copy-row input{flex:1;font-size:12px}.home-created-room{margin-top:20px;padding-top:20px;border-top:1px solid var(--glass-border);display:flex;flex-direction:column;gap:12px}@media (min-width: 768px){.home-time{display:block}.home-header{padding:12px 28px}.home-brand-lockup{padding-left:12px}}@media (max-width: 767px){.home-menu-btn{display:inline-flex}.home-sidebar{position:fixed;left:0;top:56px;bottom:0;z-index:150;width:220px;transform:translate(-100%);transition:transform .25s ease;box-shadow:var(--shadow-main)}.home-sidebar.open{transform:translate(0)}.home-sidebar-backdrop{display:block;position:fixed;right:0;bottom:0;left:0;top:56px;z-index:140;background:#00000059;border:none;cursor:pointer}.home-nav-item{flex-direction:row;justify-content:flex-start;padding:12px 16px;border-radius:var(--radius-md);font-size:14px}.home-actions{flex-direction:column;width:100%}.home-join-row{max-width:100%;width:100%}.home-btn--meet{width:100%}.home-main{padding:16px 12px 32px}.home-carousel-arrow,.home-time{display:none}.home-header{padding:10px 14px;min-height:60px}.home-brand-lockup{padding:4px 8px 4px 2px}.brand-logo-img{max-height:36px;max-width:min(200px,52vw)}}@media (min-width: 768px) and (max-width: 1024px){.home-sidebar{width:72px}.home-nav-item span{font-size:10px}}
