.site-footer[data-v-01d9f9ee]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;padding:8px 12px;font-size:12px;color:var(--text-secondary)}.site-footer a[data-v-01d9f9ee]{color:var(--text-secondary);text-decoration:none;display:inline-flex;align-items:center;gap:4px}.site-footer a[data-v-01d9f9ee]:hover{color:var(--text);text-decoration:underline}.site-footer .ga img[data-v-01d9f9ee]{width:14px;height:14px}:root{color-scheme:light;--bg: #f5f7fa;--bg-image: radial-gradient(60rem 30rem at 50% -12rem, rgba(14, 113, 235, .1), transparent 70%), linear-gradient(rgba(14, 113, 235, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(14, 113, 235, .045) 1px, transparent 1px);--bg-size: auto, 44px 44px, 44px 44px;--bg-repeat: no-repeat, repeat, repeat;--surface: #ffffff;--surface-2: #f0f3f8;--border: #dde3ec;--text: #161a22;--text-secondary: #5b6572;--accent: #0e71eb;--accent-hover: #0b5dc6;--accent-soft: rgba(14, 113, 235, .08);--link: #0e71eb;--danger: #d93025;--danger-hover: #b3261e;--warn-banner: #e8710a;--input-bg: #ffffff;--btn-bg: #eceff5;--btn-hover: #dfe4ee;--btn-text-bg: transparent;--btn-text-hover: #eceff5;--amount-in: #188038;--amount-out: #d93025;--msg-warn: #b06000;--shadow-card: 0 12px 40px rgba(22, 32, 54, .1);--shadow-banner: 0 2px 8px rgba(0, 0, 0, .18);--mask: rgba(20, 26, 36, .45)}html[data-theme=dark]{color-scheme:dark;--bg: #111418;--bg-image: radial-gradient(60rem 30rem at 50% -12rem, rgba(76, 141, 255, .12), transparent 70%);--bg-size: auto;--bg-repeat: no-repeat;--surface: #1e2126;--surface-2: #23262c;--border: #3c4043;--text: #e8eaed;--text-secondary: #9aa0a6;--accent: #4c8dff;--accent-hover: #6ea3ff;--accent-soft: rgba(76, 141, 255, .14);--link: #8ab4f8;--danger: #d93025;--danger-hover: #b3261e;--warn-banner: #e8710a;--input-bg: #111418;--btn-bg: #3c4043;--btn-hover: #4a4f55;--btn-text-bg: transparent;--btn-text-hover: #2a2d32;--amount-in: #81c995;--amount-out: #f28b82;--msg-warn: #fdd663;--shadow-card: 0 12px 40px rgba(0, 0, 0, .45);--shadow-banner: 0 2px 8px rgba(0, 0, 0, .4);--mask: rgba(0, 0, 0, .6)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,PingFang SC,Microsoft YaHei,sans-serif;background:var(--bg);background-image:var(--bg-image);background-size:var(--bg-size);background-repeat:var(--bg-repeat);color:var(--text);min-height:100vh;transition:background-color .2s,color .2s}[hidden]{display:none!important}a{color:var(--link)}button{padding:10px 18px;font-size:14px;border:1px solid transparent;border-radius:10px;background:var(--btn-bg);color:inherit;cursor:pointer;transition:background .15s,border-color .15s,filter .15s}button:hover{background:var(--btn-hover)}button.active{background:var(--accent);color:#fff}button.danger{background:var(--danger);color:#fff}button.danger:hover{background:var(--danger-hover)}.btn-primary{background:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.btn-text{padding:4px 10px;font-size:13px;background:var(--btn-text-bg);border:1px solid var(--border)}.btn-text:hover{background:var(--btn-text-hover)}a.btn-text{color:inherit;text-decoration:none}input{padding:12px 14px;font-size:15px;border:1px solid var(--border);border-radius:10px;background:var(--input-bg);color:inherit;outline:none;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}#join-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:48px 16px}.join-card{width:100%;max-width:400px;padding:36px 32px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:18px}.join-brand{display:flex;align-items:center;justify-content:center;gap:10px}.join-brand .brand-dot{width:12px;height:12px;border-radius:4px;background:linear-gradient(135deg,var(--accent),#7ab3ff);box-shadow:0 0 12px var(--accent-soft),0 0 4px var(--accent)}.join-brand h1{font-size:22px;font-weight:700;letter-spacing:.02em}#join-form{display:flex;flex-direction:column;gap:12px}#join-form button{padding:12px 18px;font-size:15px}.password-config{display:flex;flex-direction:column;gap:8px;padding:14px;font-size:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px}.password-config .password-row{display:flex;align-items:center;gap:8px}.password-config .password-row span{white-space:nowrap;color:var(--text-secondary)}.password-config .password-row input{flex:1;min-width:0;padding:8px 12px;font-size:14px}.password-config .password-row input:disabled{opacity:.5}.password-config .no-password-row{display:flex;align-items:center;gap:6px;color:var(--text-secondary);cursor:pointer}.auth-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;font-size:14px}.auth-status .auth-hint{color:var(--text-secondary)}.faq-link{align-self:center}#room-view{display:flex;flex-direction:column;min-height:100vh}#room-view header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--border)}#room-view header b{color:var(--accent)}#videos{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;padding:16px;align-content:center}.tile{position:relative;background:#000;border-radius:12px;overflow:hidden;aspect-ratio:16/9;border:1px solid var(--border)}.tile video{width:100%;height:100%;object-fit:cover}.tile .label{position:absolute;left:8px;bottom:8px;padding:2px 8px;font-size:12px;color:#fff;background:#0009;border-radius:6px}.tile .badge-muted{position:absolute;top:8px;left:8px;padding:2px 8px;font-size:12px;background:#fbbc04e6;color:#000;border-radius:6px}.tile:fullscreen{border-radius:0;aspect-ratio:auto;border:none}.tile:fullscreen video{object-fit:contain}.btn-fullscreen{position:absolute;right:8px;bottom:8px;padding:4px 8px;font-size:14px;line-height:1;color:#fff;background:#0009;border-radius:6px}.btn-fullscreen:hover{background:#000000d9}.btn-kick{position:absolute;right:8px;top:8px;padding:4px 8px;font-size:14px;line-height:1;color:#fff;background:#ea4335bf;border-radius:6px}.btn-kick:hover{background:#ea4335}.net-status{color:var(--msg-warn);font-size:13px}.credits-low-banner,.duration-low-banner{position:fixed;top:0;left:0;right:0;z-index:20;padding:10px 16px;color:#fff;font-weight:600;text-align:center;box-shadow:var(--shadow-banner)}.credits-low-banner{background:var(--danger)}.duration-low-banner{background:var(--warn-banner)}.credits-low-banner+.duration-low-banner{top:40px}.controls{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:14px;background:var(--surface);border-top:1px solid var(--border)}.controls button{border-radius:999px;padding:10px 22px}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:var(--mask);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{max-width:360px;padding:24px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:12px}.modal .modal-tip{font-size:13px;color:var(--text-secondary)}.modal .link-text{word-break:break-all}.modal button{align-self:flex-end}.modal .modal-buttons{display:flex;justify-content:flex-end;gap:8px}.auth-modal{width:340px;max-width:90vw}.auth-modal h2{font-size:18px}.auth-modal .code-row{display:flex;gap:8px}.auth-modal .code-row input{flex:1;min-width:0}.auth-modal .cap-widget{--cap-widget-width: 100%;--cap-background: var(--input-bg);--cap-border-color: var(--border);--cap-color: var(--text);--cap-checkbox-background: var(--input-bg);--cap-checkbox-border: 1px solid var(--border)}.auth-modal .btn-primary{align-self:stretch}.btn-code{white-space:nowrap;padding:10px 14px;align-self:auto}.btn-code:disabled{opacity:.5;cursor:default}.btn-code:disabled:hover{background:var(--btn-bg)}.auth-error{color:var(--amount-out);font-size:13px}.cap-hint{color:var(--msg-warn);font-size:13px;margin:0}.auth-hint{color:var(--text-secondary);font-size:13px;margin:0}.corner-tools{position:fixed;right:12px;bottom:12px;z-index:5;display:flex;align-items:center;gap:8px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary)}.theme-toggle:hover{background:var(--surface-2);color:var(--text)}.theme-toggle svg{width:16px;height:16px}.lang-switcher{padding:6px 10px;font-size:13px;background:var(--surface);color:inherit;border:1px solid var(--border);border-radius:8px}#credits-view{max-width:900px;margin:0 auto;padding:24px 16px;display:flex;flex-direction:column;gap:16px}.credits-header{display:flex;align-items:center;gap:16px}.credits-header h1{font-size:20px}.credits-balance{font-size:15px}.credits-balance b{color:var(--accent)}.credits-balance-sep{color:var(--text-secondary);margin:0 8px}.recharge-box h2,.credits-subtitle{font-size:16px;margin:0 0 10px}.recharge-plans{display:flex;flex-wrap:wrap;gap:12px}.recharge-plans.cap-pending button{pointer-events:none}.recharge-hint{color:var(--text-secondary);font-size:13px;margin:0 0 10px}.recharge-msg{color:var(--msg-warn);font-size:14px}.credits-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.credits-table th,.credits-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left}.credits-table th{color:var(--text-secondary);font-weight:500;background:var(--surface-2)}.credits-table tbody tr:last-child td{border-bottom:none}.amount-in{color:var(--amount-in)}.amount-out{color:var(--amount-out)}.credits-empty{color:var(--text-secondary);font-size:14px}.credits-login{display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:var(--text-secondary);font-size:14px}.faq-view{max-width:720px;margin:0 auto;padding:40px 16px 64px;display:flex;flex-direction:column;gap:16px;line-height:1.7}.faq-view h1{font-size:22px}.faq-view h2{font-size:16px;margin-top:8px}.faq-view p{color:var(--text-secondary);font-size:14px}.faq-back{align-self:flex-start;color:var(--link);text-decoration:none;font-size:14px}.faq-back:hover{text-decoration:underline}
