.login-container{height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.login-box{width:100%;max-width:400px;padding:40px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px}.login-header{text-align:center;margin-bottom:32px}.login-logo{font-size:32px;color:var(--accent);margin-bottom:12px}.login-header h1{font-size:24px;font-weight:400;color:var(--text-primary);margin-bottom:4px}.login-subtitle{color:var(--text-muted);font-size:12px}.login-form{display:flex;flex-direction:column;gap:16px}.input-group{display:flex;align-items:center;background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;padding:0 12px}.input-group:focus-within{border-color:var(--accent-dim)}.input-prefix{color:var(--accent);margin-right:8px;-webkit-user-select:none;user-select:none}.input-group input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);padding:12px 0;font-family:var(--font-mono);font-size:13px}.input-group input::placeholder{color:var(--text-muted)}.login-error{color:var(--error);font-size:12px;padding:8px;background:#ff44441a;border-radius:2px}.login-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--accent);padding:12px;border-radius:2px;cursor:pointer;transition:all .2s}.login-btn:hover:not(:disabled){background:var(--border);border-color:var(--accent-dim)}.login-btn:disabled{opacity:.5;cursor:not-allowed}.login-footer{text-align:center;margin-top:24px;color:var(--accent)}.blink{animation:blink 1s step-end infinite}.input-group input:-webkit-autofill,.input-group input:-webkit-autofill:hover,.input-group input:-webkit-autofill:focus,.input-group input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--bg-primary) inset!important;-webkit-text-fill-color:var(--text-primary)!important;caret-color:var(--text-primary)!important;font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace!important;font-size:13px!important;transition:background-color 600000s 0s,color 600000s 0s!important}.input-group input:autofill{background:var(--bg-primary)!important;color:var(--text-primary)!important;font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace!important;font-size:13px!important}@media (max-width: 600px){.login-box{padding:24px 20px;margin:0 16px}.input-group input{font-size:16px}.login-btn{min-height:48px}}:root{--bg-primary: #0a0a0a;--bg-secondary: #111;--bg-tertiary: #1a1a1a;--border: #222;--text-primary: #e0e0e0;--text-secondary: #999;--text-muted: #555;--accent: #00ff88;--accent-dim: #00aa55;--bot-blue: #6b93b8;--error: #ff4444;--warning: #ffaa00;--online: #00ff88;--offline: #555;--speaking: #00ff88;--font-mono: "JetBrains Mono", "Fira Code", monospace}.chat-container{height:100vh;height:100dvh;display:grid;grid-template-columns:200px 1fr 220px;background:var(--bg-primary);font-family:var(--font-mono);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.chat-container.loading{display:flex;align-items:center;justify-content:center}.loading-text{color:var(--accent);animation:blink 1s infinite}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:0 16px;height:60px;display:flex;align-items:center;border-bottom:1px solid var(--border)}.server-name{color:var(--accent);font-weight:600}.sidebar-section{padding:12px 0;overflow-y:auto}.sidebar-section:first-of-type{flex-shrink:0}.sidebar-section:nth-of-type(2){flex:1}.section-title{padding:4px 16px 8px;font-size:clamp(8px,.58vw + 2.7px,11px);color:var(--text-muted);letter-spacing:.5px}.section-title.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:4px}.section-title.collapsible:hover{color:var(--text-secondary)}.collapse-arrow{font-size:9px;transition:transform .15s}.collapse-arrow.collapsed{transform:rotate(-90deg)}.room-item{padding:3px 16px;display:flex;align-items:center;cursor:pointer;color:var(--text-secondary);transition:all .1s}.room-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.room-item.active{background:var(--bg-tertiary);color:var(--accent)}.feature-icon{margin-right:4px;opacity:.6}.feature-icon.live{color:#c44;opacity:.8}.room-item.locked{opacity:.5}.room-item .lock-icon{margin-left:auto;color:var(--error);font-size:.8em}.room-member-count{margin-left:auto;font-size:10px;color:var(--text-muted)}.user-item{padding:4px 16px;display:flex;align-items:center;gap:8px;color:var(--text-secondary);position:relative}.user-item.clickable:hover{background:#ffffff0d;cursor:pointer}.user-item.offline{opacity:.5}.user-status{width:8px;height:8px;border-radius:50%;background:var(--offline);flex-shrink:0}.user-status.online{background:var(--online)}.user-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 6px;font-family:inherit;font-size:.9em;opacity:0;transition:opacity .15s}.user-item:hover .user-menu-btn{opacity:1}.user-menu-btn:hover{color:var(--accent)}.role-badge{font-size:.75em;margin-left:4px;font-weight:700}.role-badge.superroot{color:#a855f7}.role-badge.admin{color:var(--accent)}.voice-badge{font-size:.75em;margin-left:4px;color:var(--accent-dim);opacity:.7}.sidebar-footer{padding:12px 16px;height:48px;box-sizing:border-box;border-top:1px solid var(--border);display:flex;align-items:center;gap:4px;margin-top:auto}.user-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.footer-controls{display:flex;gap:6px;align-items:center}.footer-btn-wrap{position:relative;display:inline-flex}.footer-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);width:24px;min-width:24px;max-width:24px;height:24px;min-height:24px;max-height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;font-size:13px;line-height:1;overflow:hidden;transition:all .15s;border-radius:4px}.footer-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.footer-btn.invite{color:var(--accent);border-color:var(--accent-dim)}.footer-btn.invite:hover{background:#00ff881a}.footer-btn.wa{color:#25d366;border-color:#1a9e4a}.footer-btn.wa:hover{background:#25d3661a}.footer-btn.logout{color:var(--error);border-color:var(--error)}.footer-btn.logout:hover{background:var(--error);color:var(--bg-primary)}.footer-btn-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1a1a2e;border:1px solid #444;border-radius:5px;padding:4px 8px;font-size:11px;color:#ccc;white-space:nowrap;z-index:200;pointer-events:none}.footer-btn-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#444}.footer-btn-wrap:hover .footer-btn-tooltip{display:block}.main-area{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-header{padding:0 16px;height:60px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.room-title{font-weight:600;color:var(--text-primary)}.header-actions{display:flex;gap:8px}.header-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);padding:6px 10px;border-radius:2px;cursor:pointer;font-family:inherit;font-size:11px;transition:all .15s}.header-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.header-btn.active{color:var(--accent);border-color:var(--accent-dim)}.header-btn.muted{color:var(--error);border-color:var(--error)}.header-btn:disabled{opacity:.5;cursor:not-allowed}.messages-area{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;position:relative}.message{padding:2px 0;display:flex;gap:8px;font-size:clamp(10px,.75vw + 2.2px,13px);line-height:1.4}.date-separator{display:flex;align-items:center;gap:12px;padding:12px 0 8px;-webkit-user-select:none;user-select:none}.date-separator-line{flex:1;height:1px;background:var(--border)}.date-separator-label{color:var(--text-muted);font-size:11px;letter-spacing:.5px;white-space:nowrap}.msg-time{color:var(--text-muted);flex-shrink:0}.msg-sender{color:var(--accent);flex-shrink:0;min-width:110px}.msg-sender:after{content:":"}.message.bot-message .msg-sender{color:var(--bot-blue)}.bot-icon{color:var(--bot-blue);margin-right:4px}.message.bot-message .msg-content{color:var(--text-secondary)}.bot-health-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0;margin-right:4px;vertical-align:middle}.bot-health-dot.operational{background:#0f8;box-shadow:0 0 4px #0f86}.bot-health-dot.degraded{background:#fa0;box-shadow:0 0 4px #fa06}.bot-health-dot.unknown{background:#555}.bot-health-dot.offline{background:#333}.msg-content{color:var(--text-primary);word-break:break-word}.msg-content h3{color:var(--accent);font-size:14px;font-weight:700;margin:0 0 4px;letter-spacing:.5px}.msg-content ul,.msg-content ol{margin:4px 0;padding-left:18px}.msg-content li{margin:2px 0}.msg-content p{margin:4px 0}.rn-block{display:flex;flex-direction:column;gap:2px}.rn-title{color:var(--text-secondary);font-size:13px;font-weight:600}.rn-bullets{display:flex;flex-direction:column;gap:1px}.rn-bullet{color:var(--text-muted);font-size:12px;padding-left:8px}.rn-files{color:var(--text-muted);margin-top:4px;font-size:11px;opacity:.6}.typing-indicator{padding:4px 16px;font-size:12px;color:var(--text-muted);font-style:italic;flex-shrink:0;display:flex;flex-wrap:wrap;gap:0 12px}.bot-typing-status{color:var(--accent-dim);font-style:normal}.bot-typing-tokens{color:var(--text-muted)}.mention-dropdown{position:absolute;bottom:100%;left:16px;right:16px;background:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:4px 4px 0 0;max-height:200px;overflow-y:auto;z-index:100}.mention-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;color:var(--accent);font-size:13px}.mention-item:hover,.mention-item.selected{background:var(--bg-tertiary)}.mention-item.selected{border-left:2px solid var(--accent)}.input-area{padding:16px;height:48px;box-sizing:border-box;border-top:1px solid var(--border);display:flex;align-items:center;gap:8px;background:var(--bg-secondary);flex-shrink:0;position:relative}.input-prompt{color:var(--accent);font-size:clamp(11px,.75vw + 3.2px,14px)}.input-area input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:inherit;font-size:clamp(10px,.75vw + 2.2px,13px)}.input-area input::placeholder{color:var(--text-muted)}.voice-panel{background:var(--bg-secondary);border-left:1px solid var(--border);display:flex;flex-direction:column}.voice-header{padding:0 16px;height:60px;border-bottom:1px solid var(--border);font-size:clamp(9px,.58vw + 2.7px,11px);color:var(--accent);letter-spacing:.5px}.voice-users{flex:1;padding:12px;overflow-y:auto}.voice-user{padding:6px 8px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;color:var(--text-primary);background:var(--bg-tertiary);border-radius:4px;margin-bottom:4px;font-size:clamp(10px,.75vw + 2.2px,12px);overflow:hidden}.voice-user.speaking{border-left:2px solid var(--speaking)}.voice-icon{font-size:clamp(9px,.58vw + 2.7px,11px);color:var(--accent);min-width:28px}.voice-user.speaking .voice-icon{color:var(--speaking)}.voice-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-user-mute{background:none;border:none;color:var(--text-muted);font-family:var(--font-mono);font-size:clamp(9px,.58vw + 2.7px,11px);cursor:pointer;padding:0 2px;flex-shrink:0;transition:color .15s}.voice-user-mute:hover{color:var(--text-primary)}.voice-user-mute.active{color:var(--error)}.voice-user-controls{display:flex;align-items:center;width:100%;padding-left:28px;min-width:0}.voice-user-volume{flex:1;min-width:0;height:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border-radius:2px;outline:none;cursor:pointer}.voice-user-volume::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:var(--accent-dim);cursor:pointer}.voice-user-volume::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:var(--accent-dim);border:none;cursor:pointer}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;width:100%;max-width:400px;margin:20px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);color:var(--accent);font-size:12px}.modal-header button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:inherit}.modal-header button:hover{color:var(--error)}.modal-body{padding:20px}.setting-group{margin-bottom:12px}.setting-group label{display:block;font-size:11px;color:var(--text-muted);margin-bottom:4px}.setting-group select,.setting-group input{width:100%;padding:8px;background:var(--bg-primary);border:1px solid var(--border);border-radius:2px;color:var(--text-primary);font-family:inherit;font-size:12px}.setting-group select:focus,.setting-group input:focus{outline:none;border-color:var(--accent-dim)}.modal-btn{width:100%;padding:10px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--accent);cursor:pointer;font-family:inherit;font-size:12px;margin-top:12px}.modal-btn:hover:not(:disabled){border-color:var(--accent-dim)}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.invite-msg{font-size:12px;margin-bottom:12px}.invite-msg.success{color:var(--accent)}.invite-msg.error{color:var(--error)}.invite-link{background:var(--bg-primary);padding:8px;border-radius:2px;margin-bottom:12px;overflow-x:auto}.invite-link code{font-size:10px;color:var(--text-secondary);word-break:break-all}.profile-modal{width:560px;max-height:85vh;overflow-y:auto}.profile-section{margin-bottom:16px}.profile-section-title{font-size:11px;color:var(--text-muted);letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.profile-row{display:flex;gap:8px;margin-bottom:6px}.profile-row input{flex:1;padding:8px 10px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-mono);font-size:12px}.profile-row input::placeholder{color:var(--text-muted)}.modal-btn-sm{padding:8px 12px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--accent);cursor:pointer;font-family:var(--font-mono);font-size:11px;white-space:nowrap}.modal-btn-sm:hover:not(:disabled){border-color:var(--accent-dim)}.modal-btn-sm:disabled{opacity:.5;cursor:not-allowed}.profile-msg{font-size:12px;margin-bottom:12px;padding:6px 10px;border-radius:2px}.profile-msg.success{color:var(--accent);background:#00ff880d}.profile-msg.error{color:var(--error);background:#ff44440d}.user-menu-modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;width:520px;max-width:90vw;max-height:85vh;overflow-y:auto;z-index:1001;box-shadow:0 4px 20px #00000080}.user-menu-header{padding:12px 16px;border-bottom:1px solid var(--border);font-weight:700;color:var(--text-primary);display:flex;justify-content:space-between;align-items:center}.user-menu-header button{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:12px}.user-menu-header button:hover{color:var(--text-primary)}.user-menu-profile{padding:12px 16px}.profile-loading{color:var(--text-muted);font-size:12px;padding:8px 0}.profile-fields{display:flex;flex-direction:column;gap:8px}.profile-field{display:flex;gap:8px;font-size:12px}.profile-field-label{color:var(--text-muted);min-width:80px;flex-shrink:0}.profile-field-value{color:var(--text-primary);flex:1}.profile-field input,.profile-field textarea{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);font-family:inherit;font-size:12px;padding:4px 8px;flex:1;min-width:0}.profile-field input:focus,.profile-field textarea:focus{outline:none;border-color:var(--accent-dim)}.profile-field textarea{resize:vertical;min-height:60px}.profile-save-row{display:flex;justify-content:flex-end;padding-top:8px;border-top:1px solid var(--border);margin-top:4px}.profile-save-btn{background:none;border:1px solid var(--accent-dim);color:var(--accent);padding:6px 16px;cursor:pointer;font-family:inherit;font-size:12px;transition:all .15s}.profile-save-btn:hover:not(:disabled){background:var(--accent-dim);color:var(--bg-primary)}.profile-saved-msg{color:var(--accent);font-size:11px;margin-right:8px;align-self:center}.profile-section-divider{border:none;border-top:1px solid var(--border);margin:8px 0}.profile-field-label-wide{color:var(--text-muted);font-size:12px;margin-bottom:4px}.profile-notes-field{display:flex;flex-direction:column;gap:4px;font-size:12px}.profile-notes-field textarea{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);font-family:inherit;font-size:12px;padding:6px 8px;resize:vertical;min-height:70px}.profile-notes-field textarea:focus{outline:none;border-color:var(--accent-dim)}.profile-notes-field textarea[readonly]{color:var(--text-secondary);cursor:default;border-color:var(--border)}.profile-notes-header{display:flex;align-items:center;justify-content:space-between}.bot-notes-delete-btn{background:none;border:1px solid var(--border);color:var(--text-muted);font-family:inherit;font-size:11px;cursor:pointer;padding:1px 4px;line-height:1;transition:all .15s}.bot-notes-delete-btn:hover{color:var(--error);border-color:var(--error)}.user-menu-actions{display:flex;flex-direction:column;padding:8px;gap:4px}.user-menu-actions button{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:8px 12px;cursor:pointer;font-family:inherit;font-size:12px;text-align:left;transition:all .15s}.user-menu-actions button:hover:not(:disabled){background:var(--bg-tertiary);color:var(--accent);border-color:var(--accent)}.user-menu-actions button:disabled{opacity:.4;cursor:not-allowed}.user-menu-actions button.danger:hover:not(:disabled){color:var(--error);border-color:var(--error)}.ban-row{display:flex;align-items:center;gap:8px}.ban-row button{flex-shrink:0}.ban-row input{width:50px;background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:6px 8px;font-family:inherit;font-size:12px}.ban-row span{color:var(--text-muted);font-size:11px}.user-menu-tabs{display:flex;border-bottom:1px solid var(--border);padding:0 8px}.user-menu-tab{background:none;border:none;color:var(--text-muted);padding:8px 12px;cursor:pointer;font-family:inherit;font-size:12px;transition:color .15s}.user-menu-tab:hover{color:var(--text-secondary)}.user-menu-tab.active{color:var(--accent);border-bottom:1px solid var(--accent);margin-bottom:-1px}.user-profile-form{padding:12px;display:flex;flex-direction:column;gap:8px}.profile-field{display:flex;flex-direction:column;gap:4px}.profile-field label{color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.profile-field input,.profile-field textarea{background:var(--bg-primary);border:1px solid var(--border);color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px;border-radius:2px;transition:border-color .15s}.profile-field input:focus,.profile-field textarea:focus{outline:none;border-color:var(--accent)}.profile-field textarea{resize:vertical;min-height:50px}.profile-field-msg{font-size:11px;padding:4px 0}.profile-field-msg.success{color:var(--accent)}.profile-field-msg.error{color:var(--error)}.profile-save-btn{background:none;border:1px solid var(--accent);color:var(--accent);padding:8px 12px;cursor:pointer;font-family:inherit;font-size:12px;transition:all .15s;margin-top:4px}.profile-save-btn:hover:not(:disabled){background:var(--accent);color:var(--bg-primary)}.profile-save-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes blink{50%{opacity:.3}}.mobile-hamburger{display:none;background:none;border:1px solid var(--border);color:var(--text-secondary);font-size:16px;padding:4px 8px;cursor:pointer;font-family:var(--font-mono);border-radius:4px;flex-shrink:0}.mobile-hamburger:hover{color:var(--accent);border-color:var(--accent-dim)}.mobile-voice-toggle{display:none;background:none;border:1px solid var(--border);color:var(--text-secondary);font-size:14px;padding:4px 8px;cursor:pointer;font-family:var(--font-mono);border-radius:4px}.mobile-voice-toggle:hover{color:var(--accent);border-color:var(--accent-dim)}.mobile-sidebar-backdrop,.mobile-voice-backdrop,.mobile-voice-close{display:none}.voice-header-actions{display:flex;align-items:center;gap:6px}@media (max-width: 1024px){.chat-container{grid-template-columns:170px 1fr}.chat-container.terminal-open{grid-template-columns:170px 1fr 1fr}.voice-panel{display:none}.sidebar-header{height:48px;padding:0 12px}.section-title{padding:3px 12px 6px}.room-item{padding:3px 12px}.user-item{padding:3px 12px;gap:6px}.sidebar-footer{padding:8px 12px;height:40px}.chat-header{height:48px;padding:0 12px}.header-btn{padding:4px 8px}.input-area{padding:10px 12px;height:42px}.status-bar{flex-direction:column}.status-panel-bot{padding:8px 12px;min-height:auto;grid-template-columns:repeat(auto-fit,minmax(110px,max-content));gap:2px 10px}.status-panel-users,.status-panel{padding:8px 12px;min-height:auto}.messages-area{padding:12px}.msg-sender{min-width:90px}.profile-modal{width:min(560px,90vw)}.user-menu-modal{width:min(520px,90vw)}.room-item,.user-item{min-height:36px}.footer-btn{min-height:28px;min-width:28px}}@media (max-width: 600px){.chat-container{grid-template-columns:1fr;height:100dvh}.chat-container.terminal-open{grid-template-columns:1fr}.terminal-split-panel{display:none}.sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;z-index:900;transform:translate(-100%);transition:transform .25s ease;box-shadow:none;overflow-y:auto;overflow-x:hidden;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 20px #0009}.sidebar-section{flex-shrink:0;flex-grow:0;overflow-y:visible}.sidebar-section:nth-of-type(2){flex:0 0 auto}.sidebar-footer{flex-shrink:0;position:sticky;bottom:0;background:var(--bg-secondary);z-index:1}.voice-panel{position:fixed;top:0;right:0;bottom:0;width:280px;z-index:900;transform:translate(100%);transition:transform .25s ease;box-shadow:none;display:flex;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}.voice-panel.mobile-open{transform:translate(0);box-shadow:-4px 0 20px #0009}.mobile-hamburger,.mobile-voice-toggle{display:inline-flex;align-items:center;justify-content:center}.mobile-sidebar-backdrop{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:899}.chat-header{height:48px;padding:0 10px;gap:8px}.system-status{gap:4px 8px;padding:4px 6px;font-size:9px;flex:1;min-width:0}.system-status .hosted-on{display:none}.system-status>:nth-child(n+5){display:none}.status-label{font-size:7px}.room-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:30vw;flex-shrink:0}.mobile-voice-backdrop{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:899}.mobile-voice-close{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);color:var(--text-secondary);font-size:14px;padding:2px 6px;cursor:pointer;font-family:var(--font-mono);border-radius:3px}.mobile-voice-close:hover{color:var(--error);border-color:var(--error)}.messages-area{padding:8px;overscroll-behavior:contain}.message{gap:6px}.msg-sender{min-width:0;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-time{font-size:10px}.link-preview{margin-left:0;max-width:100%}.link-wrapper .link-preview{min-width:200px;max-width:calc(100vw - 32px)}.input-area{padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));height:auto;min-height:44px}.input-area input{font-size:16px}.status-bar{flex-direction:column}.status-panel-bot{padding:6px 10px;min-height:auto;grid-template-columns:repeat(auto-fit,minmax(100px,max-content));gap:2px 8px;font-size:10px}.status-panel-users,.status-panel{padding:6px 10px;min-height:auto;font-size:10px}.panel-title{font-size:8px}.modal-overlay{align-items:flex-end}.modal{max-width:100%;margin:0;border-radius:12px 12px 0 0;max-height:85dvh}.profile-modal{width:100%;border-radius:12px 12px 0 0}.user-menu-modal{width:100%;max-width:100%;border-radius:12px 12px 0 0;position:relative;top:auto;left:auto;transform:none}.mention-dropdown,.slash-dropdown{left:8px;right:8px;max-height:150px}.room-item{min-height:40px;display:flex;align-items:center}.user-item{min-height:40px}.footer-btn{width:32px;min-width:32px;max-width:32px;height:32px;min-height:32px;max-height:32px}.header-btn{min-height:36px;padding:6px 10px}.voice-btn{width:32px;height:32px}.footer-btn-tooltip,.voice-btn-tooltip,.status-tooltip{display:none!important}.screen-ticker{padding:6px 0}.screen-ticker-content{font-size:11px}.chat-image{max-width:80vw}.media-preview img{max-width:calc(100vw - 48px);max-height:200px}.screenshare-modal{width:100vw;height:100vh;max-width:100vw;border-radius:0}.terminal-overlay{padding:0}.terminal-overlay .terminal-embedded,.transcriptions-modal{max-width:100%;height:100vh;height:100dvh}.users-page,.api-dashboard-modal{max-width:100%}.api-dashboard-grid{grid-template-columns:1fr}.user-menu-btn{opacity:.5}.msg-delete{opacity:.4;position:static;flex-shrink:0;margin-left:auto}.sidebar-profile-btn,.userlist-actions,.user-menu-btn.always-visible{opacity:.5}.setting-group input,.setting-group select,.profile-row input,.profile-field input,.profile-field textarea,.status-popup-input,.ban-row input,.terminal-input,.livetv-search input,.news-search,.news-filter{font-size:16px}.voice-settings-btn{width:32px;height:32px;font-size:14px}.voice-connect-btn{padding:10px 20px;font-size:14px;min-height:44px}.status-toggle-btn{padding:8px 12px;font-size:12px;min-height:36px}.status-toggle-btn.inactive{opacity:.6}.confirm-dialog-btn{min-height:44px;font-size:14px}.mention-item,.slash-item{min-height:44px;padding:10px 12px}.user-menu-actions button{min-height:44px;font-size:14px}.user-menu-tab{min-height:40px;padding:10px 14px}.attach-btn{min-height:40px;padding:8px 14px}.section-title.collapsible{min-height:36px;display:flex;align-items:center}.transcript-item{min-height:48px;padding:12px 16px}.games-btn{min-height:44px;padding:10px 16px}.channel-item,.epg-prog{min-height:44px}.modal-body input{font-size:16px}.wa-modal{width:100%;max-width:100%}.screenshare-modal:fullscreen .screenshare-header{opacity:1}.date-separator{padding:8px 0 6px;gap:8px}.date-separator-label{font-size:10px}.typing-indicator{padding:3px 10px;font-size:11px}.voice-user{padding:8px 10px;min-height:40px}.room-item{font-size:13px;padding:6px 14px}.user-item{padding:6px 14px;font-size:12px}.section-title{padding:4px 14px 6px;font-size:10px}.sidebar-header{height:48px;padding:0 14px;flex-shrink:0}.status-panel-users .user-entry{min-height:24px}.user-dots-btn{opacity:.6;padding:4px}.messages-area.drag-over{border-width:2px}}@media (max-width: 480px){.sidebar{width:240px}.voice-panel{width:100%}.msg-sender{max-width:60px;font-size:10px}.msg-time{font-size:9px}.message{font-size:11px}.chat-header{padding:0 8px}.room-title{font-size:12px;max-width:40vw}.input-area input{font-size:16px}.status-panel-bot,.status-panel-users,.status-panel{padding:4px 8px;font-size:9px}}@media (pointer: coarse) and (min-width: 768px){.chat-container,.message{font-size:11px}.input-prompt{font-size:12px}.input-area input{font-size:11px}.section-title{font-size:9px}.room-item,.user-item,.sidebar-footer{font-size:11px}.invite-btn,.profile-btn,.logout-btn{font-size:10px}.room-title{font-size:11px}.header-btn,.status-panel{font-size:10px}.panel-title{font-size:9px}.bot-entry-name,.status-panel-users .user-entry{font-size:10px}.voice-header{font-size:9px}.voice-user{font-size:10px}.voice-icon,.voice-user-mute{font-size:9px}}.voice-disconnected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-muted);padding:20px}.voice-room-count{font-size:12px;color:var(--text-muted)}.voice-connect-btn{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:6px 14px;cursor:pointer;font-family:inherit;font-size:11px;transition:all .15s}.voice-connect-btn:hover:not(:disabled){background:var(--accent);color:var(--bg-primary)}.voice-connect-btn:disabled{opacity:.5;cursor:not-allowed}.chat-link{color:#5c9aff;text-decoration:none;word-break:break-all}.chat-link:hover{text-decoration:underline}.link-preview{display:flex;gap:12px;background:var(--bg-tertiary);border-left:3px solid var(--accent);border-radius:0 4px 4px 0;padding:10px 12px;margin:8px 0 4px 60px;max-width:400px;overflow:hidden}.preview-image{flex-shrink:0;width:80px;height:80px;overflow:hidden;border-radius:4px}.preview-image img{width:100%;height:100%;object-fit:cover}.preview-content{flex:1;min-width:0;overflow:hidden}.preview-site{font-size:11px;color:var(--text-muted);margin-bottom:2px}.preview-title{font-size:13px;font-weight:600;color:#5c9aff;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.preview-desc{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}a.link-preview{text-decoration:none;display:flex;cursor:pointer;transition:background .15s}a.link-preview:hover{background:var(--bg-secondary)}.message{position:relative}.msg-delete{position:absolute;right:0;top:0;background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:11px;padding:2px 6px;opacity:0;transition:opacity .15s,color .15s}.message:hover .msg-delete{opacity:1}.msg-delete:hover{color:var(--error)}.link-wrapper{position:relative;display:inline}.link-wrapper .link-preview{position:absolute;bottom:100%;left:0;margin-bottom:8px;z-index:100;min-width:300px;max-width:400px;box-shadow:0 4px 20px #00000080}.screen-ticker{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--bg-primary) 0%,#0d1a0d 100%);overflow:hidden;white-space:nowrap;padding:8px 0;cursor:pointer}.screen-ticker-content{display:inline-flex;animation:ticker-scroll 16s linear infinite;font-family:var(--font-mono);font-size:13px;color:var(--accent);letter-spacing:.5px;text-shadow:0 0 6px rgba(0,255,136,.4)}.screen-ticker:hover .screen-ticker-content{animation-play-state:paused;color:#fff;text-shadow:0 0 8px rgba(255,255,255,.5)}.ticker-group{display:inline-flex;min-width:100vw;justify-content:space-around}.ticker-item{padding:0 24px}.ticker-alien{color:#fa0;text-shadow:0 0 4px rgba(255,170,0,.5);font-size:11px;letter-spacing:-1px}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.voice-controls{display:flex;justify-content:center;gap:8px;padding:12px;border-top:1px solid var(--border);margin-top:auto}.voice-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;font-size:14px;transition:all .15s;border-radius:4px}.voice-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.voice-btn.active{color:var(--error);border-color:var(--error)}.voice-btn.screen{color:#4a9eff;border-color:#4a9eff}.voice-btn.screen:hover{background:#4a9eff1a}.voice-btn.screen.active{color:#4a9eff;border-color:#4a9eff}.voice-btn.disconnect{color:var(--error);border-color:var(--error)}.voice-btn.disconnect:hover{background:var(--error);color:var(--bg-primary)}.voice-btn-wrap{position:relative;display:inline-flex}.voice-btn-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1a1a2e;border:1px solid #444;border-radius:5px;padding:4px 8px;font-size:11px;color:#ccc;white-space:nowrap;z-index:200;pointer-events:none}.voice-btn-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#444}.voice-btn-wrap:hover .voice-btn-tooltip{display:block}.voice-header{display:flex;justify-content:space-between;align-items:center}.voice-settings-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:11px;padding:0;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:3px;transition:all .15s}.voice-settings-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.voice-controls{display:flex;justify-content:center;gap:6px;padding:10px 8px;border-top:1px solid var(--border);margin-top:auto;flex-wrap:nowrap;overflow:visible}.voice-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);width:24px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;font-size:14px;transition:all .15s;border-radius:4px;flex-shrink:0;min-width:auto}.system-status{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 12px;padding:6px 10px;background:#0000004d;border-radius:4px;font-size:11px;font-family:monospace}.hosted-on{width:100%;color:var(--text-muted);font-size:9px;letter-spacing:.5px;text-align:center}.status-value.stat-good{color:#0d6}.status-value.stat-warn{color:#eb0}.status-value.stat-crit{color:#f44}.status-value.stat-net{color:#4ad}.status-value.stat-up{color:#a8e}.status-item{display:flex;gap:4px;align-items:center}.status-label{color:#888;text-transform:uppercase;font-size:9px}.status-value{color:#888;font-weight:500}.dm-item{display:flex;align-items:center;gap:6px}.dm-icon{color:#00bfff;font-weight:700}.dm-item.active .dm-icon{color:#0f8}.unread-badge{margin-left:auto;background:#f44;color:#fff;padding:1px 6px;border-radius:10px;font-size:10px;font-weight:700}.msg-sender.clickable{cursor:pointer}.msg-sender.clickable:hover{text-decoration:underline;color:#00bfff}.messages-area.drag-over{background:#00ff881a;border:2px dashed #00ff88}.attach-btn{background:#333;border:1px solid #444;color:#0f8;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:16px;font-weight:700;margin-right:8px}.attach-btn:hover{background:#444}.attach-btn:disabled{color:#666;cursor:wait}.chat-image{border-radius:4px;margin-top:4px;display:block;cursor:pointer}.chat-image:hover{opacity:.9}.file-link{color:#00bfff;text-decoration:none;padding:2px 6px;background:#00bfff1a;border-radius:3px}.file-link:hover{background:#00bfff33;text-decoration:underline}.media-link-wrapper{position:relative;display:inline-block}.image-link{color:#ff69b4!important}.media-preview{position:absolute;bottom:100%;left:0;z-index:100;background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:8px;margin-bottom:8px;box-shadow:0 4px 12px #00000080}.media-preview img{max-width:400px;max-height:300px;border-radius:4px;display:block}.stream-item{color:var(--accent)!important}.stream-item .stream-icon{color:var(--error);margin-right:4px}.feature-item{color:var(--text-secondary)}.feature-item:hover{color:var(--accent)}.feature-item.disabled{opacity:.5;cursor:not-allowed}.screenshare-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;z-index:1000;display:flex;align-items:center;justify-content:center}.screenshare-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;width:90vw;height:90vh;max-width:1600px;display:flex;flex-direction:column;overflow:hidden}.screenshare-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border);font-size:13px;color:var(--accent)}.screenshare-header button{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:4px 8px;font-family:var(--font-mono);font-size:12px;cursor:pointer}.screenshare-header button:hover{border-color:var(--error);color:var(--error)}.screenshare-video-container{flex:1;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}.screenshare-video{max-width:100%;max-height:100%;width:auto;height:auto}.screenshare-header-actions{display:flex;gap:8px}.screenshare-header-actions button{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:4px 8px;font-family:var(--font-mono);font-size:12px;cursor:pointer}.screenshare-header-actions button:hover{border-color:var(--accent);color:var(--accent)}.screenshare-header-actions button:last-child:hover{border-color:var(--error);color:var(--error)}.screenshare-modal:fullscreen{width:100vw;height:100vh;max-width:100vw;border-radius:0;border:none}.screenshare-modal:fullscreen .screenshare-header{position:absolute;top:0;left:0;right:0;z-index:10;opacity:0;transition:opacity .3s}.screenshare-modal:fullscreen:hover .screenshare-header{opacity:1}.screenshare-modal:fullscreen .screenshare-video-container{width:100vw;height:100vh}.screenshare-modal:fullscreen .screenshare-video{width:100%;height:100%;object-fit:contain}.status-item.net-in .status-value,.status-item.net-out .status-value{color:var(--text-secondary)}.slash-dropdown{position:absolute;bottom:100%;left:16px;right:16px;background:var(--bg-secondary);border:1px solid var(--border);border-bottom:none;border-radius:4px 4px 0 0;max-height:280px;overflow-y:auto;z-index:100}.slash-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:13px;color:var(--text-secondary)}.slash-item:hover,.slash-item.selected{background:var(--bg-tertiary)}.slash-item.selected{border-left:2px solid var(--accent)}.slash-cmd{color:var(--accent);min-width:60px;font-weight:600}.slash-args{color:var(--text-muted);font-size:12px}.slash-desc{color:var(--text-secondary);margin-left:auto;font-size:12px}.message.system-message .msg-time{color:var(--text-muted)}.message.system-message .msg-content{color:#b0b0b0;font-size:13px;white-space:pre;letter-spacing:.2px}.message.system-message .msg-content.sys-separator{color:var(--accent-dim)}.input-area.input-readonly{justify-content:flex-start}.readonly-hint{color:var(--text-muted);font-size:12px;font-style:italic}.chat-container.terminal-open{grid-template-columns:200px 1fr 1fr 220px}.terminal-split-panel{display:flex;flex-direction:column;border-left:1px solid var(--border);overflow:hidden;background:var(--bg-primary)}.terminal-embedded{display:flex;flex-direction:column;height:100%}.terminal-standalone{display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg-primary);font-family:var(--font-mono)}.terminal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.terminal-title{color:var(--accent);font-family:var(--font-mono);font-size:14px;font-weight:700}.terminal-header-actions{display:flex;gap:8px}.terminal-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-mono);font-size:12px;padding:4px 8px;cursor:pointer;transition:all .15s}.terminal-btn:hover{color:var(--accent);border-color:var(--accent)}.terminal-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.terminal-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:12px;color:var(--text-muted)}.terminal-welcome-title{color:var(--accent);font-size:20px;font-family:var(--font-mono)}.terminal-welcome-text{font-size:13px;text-align:center;max-width:400px;line-height:1.5}.terminal-msg{display:flex;flex-direction:column;gap:4px}.terminal-msg-header{font-family:var(--font-mono);font-size:12px;font-weight:700}.terminal-msg-user .terminal-msg-header{color:var(--accent)}.terminal-msg-assistant .terminal-msg-header{color:#a855f7}.terminal-msg-content{font-size:13px;line-height:1.6;color:var(--text-primary);padding-left:8px;border-left:2px solid var(--border)}.terminal-msg-user .terminal-msg-content{border-left-color:var(--accent-dim);color:var(--text-secondary)}.terminal-msg-assistant .terminal-msg-content{border-left-color:#7c3aed}.terminal-code-block{background:var(--bg-tertiary);border:1px solid var(--border);padding:10px 12px;margin:8px 0;overflow-x:auto;font-size:12px;line-height:1.5;border-radius:2px}.terminal-code-block code{color:var(--text-primary)}.terminal-inline-code{background:var(--bg-tertiary);padding:1px 5px;font-size:12px;color:var(--accent)}.terminal-tool-call{margin:8px 0;border:1px solid var(--border);background:var(--bg-secondary)}.terminal-tool-call.running{border-color:var(--warning)}.terminal-tool-header{display:flex;align-items:center;gap:6px;padding:6px 10px;font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary)}.terminal-tool-header:hover{color:var(--text-primary)}.terminal-tool-arrow{color:var(--text-muted);width:10px}.terminal-tool-name{color:var(--warning);white-space:nowrap}.terminal-tool-input{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.terminal-tool-spinner{color:var(--warning);animation:terminalBlink 1s infinite}@keyframes terminalBlink{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-tool-output{padding:8px 10px;font-size:11px;line-height:1.4;color:var(--text-secondary);max-height:300px;overflow:auto;white-space:pre-wrap;word-break:break-all;margin:0;border-top:1px solid var(--border)}.terminal-cursor{color:var(--accent);animation:terminalBlink 1s infinite}.terminal-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0}.terminal-input{flex:1;background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-mono);font-size:13px;padding:10px 12px;resize:none;outline:none;min-height:20px;max-height:150px;line-height:1.4}.terminal-input:focus{border-color:var(--accent-dim)}.terminal-input:disabled{opacity:.5}.terminal-input::placeholder{color:var(--text-muted)}.terminal-send-btn{background:none;border:1px solid var(--border);color:var(--accent);font-family:var(--font-mono);font-size:12px;padding:10px 14px;cursor:pointer;white-space:nowrap;transition:all .15s}.terminal-send-btn:hover:not(:disabled){background:var(--accent);color:var(--bg-primary)}.terminal-send-btn:disabled{opacity:.3;cursor:default}.terminal-cost{font-family:var(--font-mono);font-size:11px;color:var(--text-muted);padding:4px 6px;-webkit-user-select:none;user-select:none}.terminal-cost.warning{color:var(--warning)}a.terminal-cost{text-decoration:none;border-bottom:1px dotted var(--warning)}a.terminal-cost:hover{color:var(--accent);border-bottom-color:var(--accent)}.status-bar{display:flex;gap:1px;flex-shrink:0;background:var(--border);border-bottom:1px solid var(--border)}.status-panel{display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:4px 12px;padding:12px 14px;background:var(--bg-secondary);overflow-x:auto;font-size:12px;min-height:52px}.status-panel::-webkit-scrollbar{height:2px}.status-panel::-webkit-scrollbar-thumb{background:var(--border)}.status-panel-bot{flex:0 0 40%;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,max-content));gap:2px 14px;align-items:center;overflow:visible}.status-panel-bot .panel-title{grid-column:1 / -1}.status-panel-bot .bot-separator{display:none}.status-panel-bot .bot-entry{display:inline-flex;align-items:center;gap:0;white-space:nowrap}.panel-title{color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:1px;width:100%;margin-bottom:2px}.bot-entry-name{color:var(--bot-blue);font-size:11px;font-weight:600}.user-last-seen{color:var(--text-muted);font-size:10px;margin-left:4px}.user-dots-btn{color:var(--text-secondary);font-size:11px;cursor:pointer;margin-left:3px;opacity:.6;transition:opacity .15s;letter-spacing:-1px}.user-dots-btn:hover{opacity:1;color:var(--accent)}.bot-bars{color:var(--text-muted);font-size:11px;display:inline-flex;align-items:center;margin-right:4px}.bb{width:2px;height:8px;display:inline-block;margin:0 .5px}.bb.o{background:#0e7}.bb.f{background:#f44}.bb.e{background:#245a3a}.bot-active-model{color:var(--text-muted);font-size:10px;margin-left:4px}.bot-separator{color:var(--text-muted);font-size:14px;margin:0 4px;opacity:.4}.schnucki-heart{color:#c56;font-size:13px;margin-right:3px;line-height:1}.users-row{display:flex;flex-wrap:wrap;gap:2px 8px;width:100%}.users-row.users-offline{opacity:.6}.status-panel-users{flex:0 0 60%;min-width:0}.status-panel-users .user-entry{display:inline-flex;align-items:center;gap:3px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin-right:8px}.status-panel-users .user-entry.clickable{cursor:pointer}.status-panel-users .user-entry.clickable:hover{color:var(--accent)}.user-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.user-dot.online{background:var(--online)}.user-dot.offline{background:var(--offline)}.bot-typing{display:inline-flex;align-items:center;gap:4px;margin-right:12px}.bot-typing .bot-icon{color:var(--bot-blue)}.bot-status-active{color:var(--warning);font-style:italic}.bot-status-done{color:var(--text-muted);font-size:11px}.sidebar-profile-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:inherit;font-size:11px;padding:0 2px;margin-left:2px;opacity:0;transition:opacity .15s,color .15s}.user-entry:hover .sidebar-profile-btn{opacity:1}.sidebar-profile-btn:hover{color:var(--accent)!important}.user-entry-lastseen{color:var(--text-muted);font-size:11px}.user-link-item{color:var(--text-muted)!important;font-size:12px}.user-link-item:hover{color:var(--accent)!important}.users-page{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.users-page-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.users-back-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-mono);font-size:12px;padding:4px 8px;cursor:pointer}.users-back-btn:hover{color:var(--accent);border-color:var(--accent)}.users-page-title{color:var(--accent);font-size:13px;font-weight:600}.users-page-content{flex:1;overflow-y:auto;padding:8px 0}.users-page-section{margin-bottom:8px}.users-page-section-title{padding:8px 16px 4px;font-size:11px;color:var(--text-muted);letter-spacing:.5px}.users-page-item{padding:6px 16px;display:flex;align-items:center;gap:8px;color:var(--text-secondary);position:relative}.users-page-item.clickable:hover{background:#ffffff0d;cursor:pointer}.users-page-item.offline{opacity:.5}.users-page-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-btn.always-visible{opacity:.5}.user-menu-btn.always-visible:hover{opacity:1;color:var(--accent)}.bg-music-btn{background:none;border:1px solid var(--accent-dim);color:var(--accent);font-family:var(--font-mono);font-size:12px;padding:2px 8px;cursor:pointer;border-radius:3px;transition:all .15s}.bg-music-btn:hover{background:var(--accent-dim);color:var(--bg-primary)}.bg-music-btn.muted{border-color:var(--text-muted);color:var(--text-muted)}.bg-music-btn.muted:hover{border-color:var(--text-secondary);color:var(--text-secondary);background:none}.ponyclub-scene{border-bottom:1px solid var(--border);background:#0a0612;padding:0;display:flex;justify-content:center;overflow:hidden;flex-shrink:0;position:relative}.ponyclub-canvas{width:100%;max-height:140px;image-rendering:pixelated;image-rendering:crisp-edges;display:block}.ponyclub-mute-btn{position:absolute;right:8px;bottom:8px;background:#0009;border:1px solid var(--border);color:var(--accent);font-family:var(--font-mono);font-size:11px;padding:2px 6px;cursor:pointer;z-index:2}.ponyclub-mute-btn:hover{background:#00ff8826}.bot-health-bar{color:var(--text-muted);font-size:11px;letter-spacing:-1px;font-family:var(--font-mono)}.health-ok{color:var(--accent)}.health-fail{color:var(--error)}.health-empty{color:var(--text-muted);opacity:.4}.bot-health-latency{color:var(--text-muted);font-size:10px}.bot-health-latency.health-error{color:var(--error)}.panel-header{width:100%;color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:1px;padding-bottom:4px;margin-bottom:-4px;border-bottom:1px solid var(--border);font-family:var(--font-mono)}.wa-btn{background:none;border:none;color:#25d366;cursor:pointer;font-family:inherit;font-size:12px;padding:4px 6px}.wa-btn:hover{color:#128c7e}.wa-status-row{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:12px}.wa-status-label{color:var(--text-muted)}.wa-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.wa-status-dot.connected{background:var(--accent);box-shadow:0 0 4px var(--accent)}.wa-status-dot.disconnected{background:var(--error)}.wa-status-dot.qr_pending{background:var(--warning);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.wa-status-text{color:var(--text-primary)}.wa-qr-container{text-align:center;margin-bottom:16px}.wa-qr-hint{font-size:11px;color:var(--text-muted);margin-bottom:12px}.wa-qr{max-width:250px;border:1px solid var(--border);border-radius:4px;background:#fff;padding:8px}.wa-group-info{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:12px}.wa-group-name{color:#25d366}.wa-hint{font-size:11px;color:var(--text-muted);margin-top:8px}.bot-notes-field{background:var(--bg-primary)!important;color:var(--text-muted)!important;cursor:default;font-size:10px;line-height:1.4;resize:vertical}.transcript-table-wrap{max-height:300px;overflow-y:auto}.transcript-table{width:100%;border-collapse:collapse;font-size:11px;font-family:var(--font-mono)}.transcript-table th{text-align:left;padding:4px 8px;color:var(--text-muted);border-bottom:1px solid var(--border);font-weight:400;text-transform:uppercase;font-size:10px;letter-spacing:.5px}.transcript-table td{padding:6px 8px;color:var(--text-secondary);border-bottom:1px solid rgba(34,34,34,.5)}.transcript-row{cursor:pointer;transition:background .15s}.transcript-row:hover{background:var(--bg-tertiary)}.transcript-row:hover td{color:var(--text-primary)}.transcript-detail{display:flex;flex-direction:column;gap:8px}.transcript-detail-header{display:flex;align-items:center;gap:12px}.transcript-detail-meta{font-size:10px;color:var(--text-muted)}.transcript-lines{max-height:400px;overflow-y:auto;background:var(--bg-primary);border:1px solid var(--border);padding:10px;margin:0;font-family:var(--font-mono);font-size:11px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.transcript-line{margin-bottom:2px}.transcript-time{color:var(--text-muted)}.transcript-user{color:var(--accent);font-weight:700}.transcript-text{color:var(--text-primary)}.transcriber-icon{margin-left:6px;font-size:10px;color:#fa0;animation:transcriber-pulse 2s ease-in-out infinite}@keyframes transcriber-pulse{0%,to{opacity:.4}50%{opacity:1}}.userlist-entries{display:flex;flex-direction:column;gap:2px}.userlist-entry{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:2px;transition:background .15s}.userlist-entry:hover{background:var(--bg-tertiary)}.userlist-name{flex:1;color:var(--text-primary);font-size:13px}.userlist-name:hover{color:var(--accent)}.userlist-actions{display:flex;gap:4px;opacity:0;transition:opacity .15s}.userlist-entry:hover .userlist-actions{opacity:1}.voice-footer{height:48px;box-sizing:border-box;padding:12px 16px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;margin-top:auto;font-size:11px}.voice-footer-count{color:var(--text-muted)}.voice-footer-transcriber{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:3px;transition:all .2s}.voice-footer-transcriber.active{color:var(--warning);text-shadow:0 0 6px var(--warning);animation:pulse-transcription 2s ease-in-out infinite}.voice-footer-transcriber.starting{color:var(--warning);opacity:.4}.voice-footer-transcriber.off{color:var(--text-muted);opacity:.4}.voice-footer-transcriber:hover{background:var(--bg-tertiary)}@keyframes pulse-transcription{0%,to{opacity:.6}50%{opacity:1}}.wa-btn{background:none;border:none;color:#25d366;cursor:pointer;padding:2px;font-family:inherit;font-size:12px;opacity:.7;transition:opacity .15s}.wa-btn:hover{opacity:1}.wa-modal{width:360px}.wa-modal-body{padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px}.wa-status-line{color:var(--text-secondary);font-size:12px;width:100%}.wa-status-badge.online{color:#25d366}.wa-status-badge.pending{color:var(--warning)}.wa-status-badge.offline{color:var(--error)}.wa-qr-container{display:flex;flex-direction:column;align-items:center;gap:8px}.wa-qr-hint{color:var(--text-muted);font-size:11px;margin:0}.wa-qr-img{width:256px;height:256px;border-radius:4px}.wa-connected-info{color:#25d366;font-size:12px;padding:16px 0}.wa-no-qr{color:var(--text-muted);font-size:11px;padding:16px 0}.wa-loading{color:var(--text-muted);font-size:12px;padding:16px 0}.wa-refresh-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);padding:6px 16px;cursor:pointer;font-family:inherit;font-size:11px;border-radius:3px;transition:all .15s}.wa-refresh-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.room-item.room-root{color:#8b2020}.room-item.room-root:hover,.room-item.room-root.active{color:#c33}.terminal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.terminal-overlay .terminal-embedded{width:100%;max-width:900px;height:80vh}.transcriptions-modal{background:var(--bg-primary);border:1px solid var(--border);width:100%;max-width:800px;height:80vh;display:flex;flex-direction:column;font-family:var(--font-mono)}.transcriptions-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.transcriptions-title{color:var(--accent);font-size:13px;font-weight:700}.transcriptions-back{cursor:pointer;color:var(--text-secondary)}.transcriptions-back:hover{color:var(--accent)}.transcriptions-content{flex:1;overflow-y:auto;padding:8px 0}.transcriptions-loading,.transcriptions-empty{color:var(--text-muted);padding:20px 16px;text-align:center;font-size:13px}.transcript-item{display:flex;align-items:center;padding:10px 16px;cursor:pointer;border-bottom:1px solid var(--border);gap:8px}.transcript-item:hover{background:var(--bg-tertiary)}.transcript-item-main{display:flex;gap:12px;align-items:center;flex:1;min-width:0}.transcript-date{color:var(--accent);font-size:12px;white-space:nowrap}.transcript-time{color:var(--text-primary);font-size:12px;white-space:nowrap}.transcript-duration{color:var(--text-secondary);font-size:12px;white-space:nowrap}.transcript-lines{color:var(--text-muted);font-size:11px;white-space:nowrap}.transcript-item-participants{color:var(--text-secondary);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.transcript-delete-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono);font-size:12px;padding:2px 6px;flex-shrink:0}.transcript-delete-btn:hover{color:var(--error)}.confirm-dialog{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10}.confirm-dialog-inner{background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;padding:20px;max-width:320px;width:100%}.confirm-dialog-title{color:var(--error);font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:12px}.confirm-dialog-text{color:var(--text-secondary);font-size:12px;margin-bottom:16px}.confirm-dialog-buttons{display:flex;gap:8px}.confirm-dialog-btn{flex:1;padding:8px;border:1px solid var(--border);font-family:inherit;font-size:12px;cursor:pointer;background:var(--bg-tertiary)}.confirm-dialog-btn-cancel{color:var(--text-secondary)}.confirm-dialog-btn-cancel:hover{border-color:var(--text-muted);color:var(--text-primary)}.confirm-dialog-btn-delete{color:var(--error)}.confirm-dialog-btn-delete:hover{border-color:var(--error);background:#ff44441a}.transcript-screenplay{padding:12px 16px}.screenplay-line{display:flex;gap:8px;padding:3px 0;font-size:13px;line-height:1.5}.screenplay-time{color:var(--text-muted);font-size:11px;white-space:nowrap;flex-shrink:0}.screenplay-user{color:var(--accent);font-weight:700;white-space:nowrap;flex-shrink:0}.screenplay-text{color:var(--text-primary);word-break:break-word}.voice-user.voice-bot{border-left:2px solid var(--bot-blue);opacity:.85}.voice-user.voice-bot .voice-icon{color:var(--bot-blue)}.voice-user.voice-bot.speaking{border-left:2px solid var(--speaking);opacity:1}.bot-voice-name{color:var(--bot-blue)}.schnucki-listening-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-left:5px;vertical-align:middle;animation:schnucki-pulse 2s ease-in-out infinite}@keyframes schnucki-pulse{0%,to{opacity:.4}50%{opacity:1;box-shadow:0 0 4px var(--accent)}}.schnucki-voice-heart{color:#ff6b9d}.schnucki-voice-toggle{font-size:9px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;margin-left:5px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .2s;-webkit-user-select:none;user-select:none;position:relative;z-index:5;line-height:1;outline:none;vertical-align:middle}.schnucki-voice-toggle.idle{color:#c44;background:transparent;border:1px solid #cc4444}.schnucki-voice-toggle.idle:hover{background:#cc444426}.schnucki-voice-toggle.active{color:#0c6;background:transparent;border:1px solid #00cc66}.schnucki-voice-toggle.active:hover{background:#00cc6626}.schnucki-listening-to{font-size:.7em;color:var(--text-muted);margin-left:6px;font-style:italic}.bot-mute-dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:4px;cursor:pointer;transition:background .2s,transform .15s;vertical-align:middle}.bot-mute-dot.active{background:#0f8;box-shadow:0 0 4px #0f86}.bot-mute-dot.muted{background:#f44;box-shadow:0 0 4px #f446}.bot-mute-dot:hover{transform:scale(1.5)}.api-dashboard-modal{max-width:900px}.api-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 16px}.api-service-card{background:var(--bg-secondary);border:1px solid var(--border);padding:14px;display:flex;flex-direction:column;gap:10px}.api-service-header{display:flex;align-items:center;gap:8px}.api-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.api-status-dot.active{background:var(--online);box-shadow:0 0 6px var(--online)}.api-status-dot.selfhosted{background:var(--accent)}.api-status-dot.idle{background:var(--text-muted)}.api-service-name{color:var(--accent);font-size:14px;font-weight:700;letter-spacing:.5px}.api-muted-badge{color:var(--error);font-size:10px;border:1px solid var(--error);padding:1px 5px;margin-left:auto}.api-features{display:flex;flex-direction:column;gap:4px}.api-feature-row{display:flex;align-items:center;gap:8px;font-size:12px}.api-feature-name{color:var(--text-primary);min-width:80px}.api-feature-type{color:var(--text-muted);font-size:11px}.api-feature-model{color:var(--text-secondary);font-size:11px;margin-left:auto;font-style:italic}.api-health-section{border-top:1px solid var(--border);padding-top:8px}.api-health-label{color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.api-health-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:11px}.api-health-model{color:var(--text-secondary);min-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.api-health-dots{display:flex;gap:3px;align-items:center}.api-health-dot{width:8px;height:8px;border-radius:2px;display:inline-block}.api-health-dot.ok{background:var(--online)}.api-health-dot.fail{background:var(--error)}.api-health-none{color:var(--text-muted);font-size:10px}.api-costs-section{border-top:1px solid var(--border);padding-top:8px;font-size:12px}.api-cost-free{color:var(--online)}.api-cost-details{display:flex;flex-direction:column;gap:3px}.api-cost-line{display:flex;justify-content:space-between;color:var(--text-secondary)}.api-cost-line span:last-child{color:var(--warning);font-weight:700}.api-cost-untracked,.api-cost-none{color:var(--text-muted);font-style:italic}.api-billing-link{color:var(--accent);text-decoration:none;font-size:12px;border-top:1px solid var(--border);padding-top:8px;transition:color .15s}.api-billing-link:hover{color:var(--accent-dim);text-decoration:underline}@media (max-width: 700px){.api-dashboard-grid{grid-template-columns:1fr}.api-dashboard-modal{max-width:100%;height:90vh}}.status-toggle-wrapper{position:relative;display:flex;align-items:center;gap:2px;margin-left:6px;flex-shrink:0}.status-toggle-btn{background:#111;border:1px solid #555;cursor:pointer;font-family:inherit;font-size:11px;font-weight:700;padding:4px 10px;border-radius:3px;letter-spacing:.5px;transition:opacity .15s,background .15s,border-color .15s,box-shadow .15s}.status-toggle-btn.afk{color:#da0;border-color:#ddaa004d;background:#ddaa000f}.status-toggle-btn.dnd{color:#c44;border-color:#cc44444d;background:#cc44440f}.status-toggle-btn.inactive{opacity:.5}.status-toggle-btn.inactive:hover{opacity:.85;border-color:#ffffff4d}.status-toggle-btn.active{opacity:1;border-color:currentColor;background:#222;box-shadow:0 0 6px currentColor}.status-badge-wrap{position:relative;display:inline-flex;align-items:center;margin-left:5px;vertical-align:baseline}.status-badge{font-size:7px;font-weight:700;border:1px solid currentColor;padding:1px 3px;border-radius:4px;line-height:1;position:relative;top:-2px;text-transform:uppercase;cursor:default}.status-badge.afk{color:#da0}.status-badge.dnd{color:#c44}.status-tooltip{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1a1a2e;border:1px solid #444;border-radius:5px;padding:5px 9px;font-size:11px;color:#ccc;white-space:nowrap;z-index:200;pointer-events:none}.status-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#444}.status-tooltip-label{font-weight:700;margin-right:5px;font-size:9px}.status-tooltip.afk .status-tooltip-label{color:#da0}.status-tooltip.dnd .status-tooltip-label{color:#c44}.status-badge-wrap:hover .status-tooltip{display:block}.status-popup{position:absolute;bottom:calc(100% + 4px);right:0;background:#1a1a2e;border:1px solid #444;border-radius:4px;padding:8px;display:flex;flex-direction:column;gap:6px;z-index:100;min-width:180px}.status-popup-title{font-size:11px;color:#888;font-weight:700}.status-popup-input{background:#0a0a1a;border:1px solid #444;color:#0f0;font-family:inherit;font-size:12px;padding:4px 6px;border-radius:2px;outline:none}.status-popup-input:focus{border-color:#0f0}.status-popup-btn{background:#222;border:1px solid #555;color:#0f0;font-family:inherit;font-size:11px;padding:3px 8px;border-radius:2px;cursor:pointer}.status-popup-btn:hover{background:#333}.news-container{position:fixed;top:0;left:200px;right:220px;bottom:0;background:var(--bg-primary);z-index:500;display:flex;flex-direction:column;font-family:var(--font-mono)}.news-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0}.news-title{color:var(--accent);font-weight:600;display:flex;align-items:center;gap:8px}.news-icon{color:var(--error)}.news-controls{display:flex;gap:8px;align-items:center}.news-filter{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px;cursor:pointer}.news-filter:focus{outline:none;border-color:var(--accent)}.news-search{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:6px 10px;font-family:inherit;font-size:12px;width:150px}.news-search::placeholder{color:var(--text-muted)}.news-search:focus{outline:none;border-color:var(--accent)}.news-close{background:none;border:1px solid var(--error);color:var(--error);padding:6px 10px;font-family:inherit;font-size:12px;cursor:pointer}.news-close:hover{background:var(--error);color:var(--bg-primary)}.news-grid-wrap{flex:1;overflow-y:auto;padding:12px}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.news-tile{display:flex;flex-direction:column;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;overflow:hidden;text-decoration:none;transition:all .15s}.news-tile:hover{border-color:var(--accent);background:var(--bg-tertiary);transform:translateY(-1px)}.news-tile.read{opacity:.55}.news-tile.read:hover{opacity:1}a.news-tile,a.news-tile:hover{text-decoration:none!important}.news-tile-image{width:100%;height:140px;overflow:hidden;background:var(--bg-tertiary);flex-shrink:0}.news-tile-image img{width:100%;height:100%;object-fit:cover}.news-tile-noimg{display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:24px}.news-tile-body{padding:10px 12px;display:flex;flex-direction:column;gap:6px;flex:1}.news-tile-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px}.news-source{font-weight:700;text-transform:uppercase}.news-time{color:var(--text-muted)}.news-tile-headline{color:var(--text-primary);font-size:13px;font-weight:500;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-tile-intro{color:var(--text-secondary);font-size:11px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;border-top:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0}.news-page-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);padding:6px 12px;font-family:var(--font-mono);font-size:12px;cursor:pointer}.news-page-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.news-page-btn:disabled{opacity:.3;cursor:default}.news-page-info{color:var(--text-secondary);font-size:12px;min-width:60px;text-align:center}.news-loading,.news-empty{text-align:center;padding:40px 20px;color:var(--text-muted)}.news-loading .blink{animation:blink 1s infinite}@keyframes blink{50%{opacity:0}}@media (max-width: 1024px){.news-container{left:170px;right:0}.news-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}@media (max-width: 600px){.news-container{left:0;right:0}.news-grid{grid-template-columns:1fr}.news-tile-image{height:100px}.news-controls{flex-wrap:wrap;gap:6px}.news-search{width:100%}}.livetv-panel{position:fixed;top:0;left:200px;right:220px;bottom:0;background:var(--bg-primary);z-index:500;display:flex;flex-direction:column;font-family:var(--font-mono)}.livetv-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-secondary)}.livetv-title{font-size:14px;color:var(--accent)}.livetv-header-actions{display:flex;gap:6px}.livetv-detach{background:none;border:1px solid var(--border);color:var(--text-secondary);padding:2px 6px;font-size:12px;cursor:pointer;font-family:var(--font-mono)}.livetv-close{background:none;border:1px solid var(--error);color:var(--error);padding:2px 6px;font-size:12px;cursor:pointer;font-family:var(--font-mono)}.livetv-detach:hover{border-color:var(--accent);color:var(--accent)}.livetv-close:hover{background:var(--error);color:var(--bg-primary)}.livetv-content{flex:1;display:flex;overflow:hidden}.livetv-sidebar{width:240px;min-width:240px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg-secondary)}.livetv-search{padding:8px;border-bottom:1px solid var(--border)}.livetv-search input{width:100%;padding:6px 8px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);font-size:12px;font-family:var(--font-mono)}.livetv-search input::placeholder{color:var(--text-muted)}.livetv-filters{padding:6px 8px;border-bottom:1px solid var(--border);display:flex;gap:6px}.filter-btn{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);padding:4px 8px;font-size:11px;cursor:pointer;font-family:var(--font-mono)}.filter-btn:hover,.filter-btn.active{border-color:var(--accent);color:var(--accent)}.livetv-groups{overflow-y:auto;border-bottom:1px solid var(--border);max-height:280px;flex-shrink:0}.country-section{border-bottom:1px solid var(--border)}.country-section:last-child{border-bottom:none}.country-header{display:flex;align-items:center;gap:6px;padding:7px 8px;cursor:pointer;color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.country-header:hover{background:var(--bg-tertiary);color:var(--text-primary)}.country-header.expanded{color:var(--accent)}.country-arrow{font-size:9px;transition:transform .15s ease;display:inline-block;width:10px;text-align:center}.country-arrow.collapsed{transform:rotate(-90deg)}.country-name{flex:1}.country-count{color:var(--text-muted);font-size:10px}.subgroup-list{background:var(--bg-primary)}.subgroup-item{display:flex;align-items:center;padding:5px 8px 5px 24px;cursor:pointer;font-size:11px;color:var(--text-secondary)}.subgroup-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}.subgroup-item.active{color:var(--accent);background:var(--bg-tertiary);border-left:2px solid var(--accent);padding-left:22px}.subgroup-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subgroup-count{color:var(--text-muted);font-size:10px;margin-left:6px}.livetv-channels{flex:1;overflow-y:auto}.livetv-loading,.livetv-empty{padding:16px;text-align:center;color:var(--text-muted);font-size:12px}.channel-item{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-bottom:1px solid var(--border)}.channel-item:hover{background:var(--bg-tertiary)}.channel-item.active{background:var(--bg-tertiary);border-left:2px solid var(--accent)}.channel-logo{width:28px;height:20px;object-fit:contain;background:#1a1a1a;border-radius:2px}.channel-logo-placeholder{width:28px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted);font-size:8px}.channel-info{flex:1;min-width:0}.channel-name{font-size:11px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-fav{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;padding:2px;font-family:var(--font-mono)}.channel-fav:hover,.channel-fav.active{color:var(--warning)}.livetv-main{flex:1;display:flex;flex-direction:column;background:#000}.player-info{padding:8px 12px;background:var(--bg-secondary);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px}.player-channel{font-size:13px;color:var(--text-primary);font-weight:500}.player-programme{font-size:11px;color:var(--text-secondary)}.epg-progress{height:16px;background:var(--bg-tertiary);position:relative;display:flex;align-items:center}.epg-progress-bar{position:absolute;left:0;top:0;bottom:0;background:var(--accent);opacity:.3}.epg-time{position:relative;padding:0 8px;font-size:10px;color:var(--text-muted)}.player-container{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:#000}.player-video{width:100%;height:100%;background:#000;object-fit:contain}.player-container:fullscreen,.player-container:-webkit-full-screen{width:100vw;height:100vh;background:#000}.player-container:fullscreen .player-video,.player-container:-webkit-full-screen .player-video{width:100%;height:100%;object-fit:contain}.player-loading,.player-error{position:absolute;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary);font-size:12px}.loading-dots{font-size:20px;color:var(--accent)}.loading-dots span{animation:blink 1.4s infinite both}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:0}40%{opacity:1}}.error-icon{font-size:20px;color:var(--error)}.error-text{color:var(--error)}.player-error button{margin-top:6px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);font-size:11px;cursor:pointer;font-family:var(--font-mono)}.player-error button:hover{border-color:var(--accent);color:var(--accent)}.player-desc{padding:8px 12px;font-size:11px;color:var(--text-secondary);border-top:1px solid var(--border);background:var(--bg-secondary);max-height:50px;overflow-y:auto}.player-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:8px}.empty-icon{font-size:32px}.livetv-channels::-webkit-scrollbar,.livetv-groups::-webkit-scrollbar{width:6px}.livetv-channels::-webkit-scrollbar-track,.livetv-groups::-webkit-scrollbar-track{background:var(--bg-secondary)}.livetv-channels::-webkit-scrollbar-thumb,.livetv-groups::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@media (max-width: 1024px){.livetv-panel{left:170px;right:0}}@media (max-width: 600px){.livetv-panel{left:0;right:0}.livetv-sidebar{width:180px;min-width:180px}}.epg-panel{position:fixed;top:0;left:200px;right:220px;bottom:0;background:var(--bg-primary);z-index:500;display:flex;flex-direction:column;font-family:var(--font-mono)}.epg-topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border)}.epg-title{font-size:14px;font-weight:600;color:var(--accent)}.epg-topbar-actions{display:flex;gap:8px}.epg-btn-now{background:var(--accent);color:var(--bg-primary);border:none;padding:6px 14px;font-family:var(--font-mono);font-size:12px;font-weight:600;cursor:pointer;transition:opacity .2s}.epg-btn-now:hover{opacity:.8}.epg-close{background:none;border:1px solid var(--error);color:var(--error);padding:4px 8px;font-family:var(--font-mono);font-size:12px;cursor:pointer}.epg-close:hover{background:var(--error);color:var(--bg-primary)}.epg-loader{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.loader-spinner{width:32px;height:32px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loader-text{font-size:12px;color:var(--text-muted)}.epg-container{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.epg-time-header{display:flex;height:36px;border-bottom:1px solid var(--border);overflow:hidden;background:var(--bg-secondary);flex-shrink:0}.epg-time-corner{min-width:180px;max-width:180px;background:var(--bg-tertiary);border-right:1px solid var(--border)}.epg-time-marks{position:relative;height:36px}.epg-time-mark{position:absolute;top:0;height:100%;display:flex;align-items:center;font-size:11px;color:var(--text-muted);padding-left:8px;border-left:1px solid var(--border);box-sizing:border-box;white-space:nowrap}.epg-body{flex:1;overflow:auto;position:relative}.epg-row{display:flex;min-height:56px;border-bottom:1px solid var(--border)}.epg-channel{min-width:180px;max-width:180px;background:var(--bg-tertiary);border-right:1px solid var(--border);display:flex;align-items:center;gap:10px;padding:8px 12px;position:sticky;left:0;z-index:50;box-sizing:border-box;cursor:pointer;transition:background .15s}.epg-channel:hover{background:var(--bg-secondary)}.epg-channel.no-stream{opacity:.5;cursor:not-allowed}.epg-channel-logo{width:32px;height:32px;border-radius:4px;object-fit:contain;background:var(--bg-primary);flex-shrink:0}.epg-channel-placeholder{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);color:var(--text-muted);font-size:9px;border-radius:4px;flex-shrink:0}.epg-channel-placeholder.hidden{display:none}.epg-channel-name{font-size:12px;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epg-progs{position:relative;display:flex;align-items:stretch;flex-shrink:0}.epg-prog{position:absolute;top:4px;bottom:4px;box-sizing:border-box;background:var(--bg-secondary);border:1px solid var(--border);border-radius:4px;padding:6px 10px;overflow:hidden;cursor:pointer;transition:background .15s,border-color .15s;display:flex;flex-direction:column;justify-content:center}.epg-prog:hover{background:var(--bg-tertiary);border-color:var(--text-muted);z-index:10}.epg-prog.current{border-left:3px solid var(--accent);background:#00ff880d}.epg-prog.past{opacity:.4}.epg-prog-title{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.epg-prog-time{font-size:10px;color:var(--text-muted);margin-top:2px;white-space:nowrap}.epg-now-line{position:absolute;top:0;bottom:0;width:2px;background:var(--accent);z-index:40;pointer-events:none}.epg-now-line:before{content:"";position:absolute;top:-4px;left:-4px;width:10px;height:10px;background:var(--accent);border-radius:50%}.epg-tooltip{position:fixed;z-index:600;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:12px 14px;max-width:300px;min-width:180px;pointer-events:none;box-shadow:0 8px 24px #00000080}.epg-tooltip-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.epg-tooltip-time{font-size:11px;color:var(--text-muted);margin-bottom:8px}.epg-tooltip-desc{font-size:11px;color:var(--text-secondary);line-height:1.4;margin-bottom:8px;max-height:60px;overflow:hidden}.epg-tooltip-progress{height:3px;background:var(--border);border-radius:2px;overflow:hidden}.epg-tooltip-progress-bar{height:100%;background:var(--accent);border-radius:2px;transition:width .3s}.epg-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;z-index:1000;display:flex;align-items:center;justify-content:center}.epg-modal{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:20px;max-width:420px;width:90%;max-height:80vh;overflow-y:auto;position:relative}.epg-modal-close{position:absolute;top:10px;right:12px;background:none;border:none;color:var(--text-muted);font-size:24px;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.epg-modal-close:hover{color:var(--error)}.epg-modal-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:6px;padding-right:30px}.epg-modal-time{font-size:12px;color:var(--text-muted);margin-bottom:12px}.epg-modal-desc{font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.epg-modal-progress{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:16px}.epg-modal-progress-bar{height:100%;background:var(--accent);border-radius:2px}.epg-modal-channels{border-top:1px solid var(--border);padding-top:14px}.epg-modal-category{display:inline-block;font-size:11px;color:var(--accent);background:#00ff881a;padding:3px 8px;border-radius:4px;margin-bottom:8px}.epg-modal-channels-title{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:10px}.epg-modal-channels-list{display:flex;flex-wrap:wrap;gap:8px}.epg-modal-ch-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:6px;padding:10px 14px;color:var(--text-primary);font-family:var(--font-mono);font-size:11px;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap}.epg-modal-ch-btn:hover{background:var(--bg-secondary);border-color:var(--accent);color:var(--accent)}.epg-modal-no-stream{font-size:12px;color:var(--text-muted);font-style:italic}.epg-body::-webkit-scrollbar{width:8px;height:8px}.epg-body::-webkit-scrollbar-track{background:var(--bg-secondary)}.epg-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.epg-body::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.epg-body::-webkit-scrollbar-corner{background:var(--bg-secondary)}@media (max-width: 1024px){.epg-panel{left:170px;right:0}}@media (max-width: 600px){.epg-panel{left:0;right:0}.epg-channel{min-width:120px;max-width:120px;padding:6px 8px}.epg-time-corner{min-width:120px;max-width:120px}.epg-channel-logo,.epg-channel-placeholder{width:24px;height:24px}.epg-channel-name{font-size:10px}}.games-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:1000;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono)}.games-panel{background:var(--bg-secondary);border:1px solid var(--border);width:500px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.games-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);color:var(--accent);font-size:14px}.games-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-family:var(--font-mono);font-size:14px;padding:2px 6px}.games-close:hover{color:var(--error)}.games-connecting{padding:40px;text-align:center;color:var(--text-muted)}.games-lobby{padding:16px;overflow-y:auto}.games-lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.games-title{font-size:18px;color:var(--accent);letter-spacing:2px}.games-btn{font-family:var(--font-mono);font-size:13px;padding:6px 14px;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:all .15s}.games-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.games-btn:disabled{opacity:.4;cursor:not-allowed}.games-btn-create{color:var(--accent);border-color:var(--accent-dim)}.games-btn-create:hover{background:#00ff881a}.games-btn-join{color:var(--accent)}.games-btn-start{color:var(--accent);border-color:var(--accent-dim);padding:8px 20px}.games-btn-start:hover:not(:disabled){background:#00ff8826}.games-btn-ready{color:var(--accent);border-color:var(--accent-dim);padding:8px 20px}.games-btn-unready{color:var(--warning);border-color:var(--warning);padding:8px 20px}.games-btn-leave{color:var(--text-secondary)}.games-btn-leave:hover{color:var(--error)!important;border-color:var(--error)!important}.games-error{background:#ff44441a;border:1px solid rgba(255,68,68,.3);color:var(--error);padding:8px 12px;margin-bottom:12px;font-size:12px}.games-list{display:flex;flex-direction:column;gap:8px}.games-empty{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:13px}.games-empty-icon{font-size:24px;margin-bottom:8px;color:var(--text-secondary)}.games-empty-hint{margin-top:8px;font-size:11px;color:var(--text-muted)}.games-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border:1px solid var(--border);background:var(--bg-primary)}.games-list-info{display:flex;flex-direction:column;gap:2px}.games-list-creator{color:var(--text-primary);font-size:13px}.games-list-players{color:var(--text-muted);font-size:11px}.games-room{padding:20px 16px}.games-room-title{color:var(--text-secondary);font-size:13px;margin-bottom:20px;text-align:center;letter-spacing:1px}.games-slots{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.games-slot{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid var(--border);background:var(--bg-primary);font-size:13px}.games-slot.empty{border-style:dashed;opacity:.4}.games-slot-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.games-slot-name{color:var(--text-primary);flex:1}.games-slot-status{font-size:11px}.games-slot-status.ready{color:var(--accent)}.games-slot-status.not-ready{color:var(--text-muted)}.games-slot-empty{color:var(--text-muted);font-size:12px}.games-controls-hint{text-align:center;color:var(--text-muted);font-size:11px;margin-bottom:16px}.games-room-actions{display:flex;justify-content:center;gap:12px}.games-arena{display:flex;flex-direction:column;width:100%;height:100%;max-width:1040px;max-height:680px;padding:10px}.games-hud{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin-bottom:8px}.games-hud-players{display:flex;gap:16px;font-size:13px}.games-hud-player{letter-spacing:.5px}.games-hud-player.dead{opacity:.35;text-decoration:line-through}.games-canvas-wrap{position:relative;flex:1;display:flex;align-items:center;justify-content:center}.games-canvas{border:1px solid var(--border);image-rendering:pixelated;width:100%;height:auto;max-height:100%;object-fit:contain}.games-countdown-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009;pointer-events:none}.games-countdown-num{font-size:96px;color:var(--accent);font-family:var(--font-mono);text-shadow:0 0 40px var(--accent),0 0 80px var(--accent);animation:countdownPulse 1s ease-in-out infinite}@keyframes countdownPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.8}}.games-gameover-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000c;gap:16px}.games-gameover-title{font-size:36px;color:var(--accent);letter-spacing:3px;text-shadow:0 0 20px var(--accent)}.games-gameover-results{display:flex;flex-direction:column;gap:6px;font-size:16px}.games-gameover-player{letter-spacing:1px}.games-gameover-player.winner{font-size:18px}.games-gameover-actions{display:flex;gap:12px;margin-top:12px}.worms-hud-turn{position:absolute;top:10px;left:10px;color:#e0e0e0;font-family:var(--font-mono);font-size:14px;display:flex;flex-direction:column;gap:6px;text-shadow:0 0 6px rgba(0,0,0,.8);pointer-events:none}.worms-wind{color:var(--text-secondary)}.worms-timer{color:var(--accent);font-size:16px;font-weight:700}.worms-timer.warning{color:var(--error);animation:countdownPulse .5s ease-in-out infinite}.worms-weapon{color:var(--accent)}.worms-turn-indicator{position:absolute;top:10px;right:10px;font-family:var(--font-mono);font-size:14px;color:var(--text-secondary);text-shadow:0 0 8px rgba(0,0,0,.8);pointer-events:none}.worms-turn-indicator.your-turn{color:var(--accent);font-weight:700;text-shadow:0 0 12px var(--accent)}.tvpopout{width:100vw;height:100vh;background:#000;display:flex;flex-direction:column;font-family:JetBrains Mono,Fira Code,monospace;color:#e0e0e0}.tvpopout-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#111;border-bottom:1px solid #222222;flex-shrink:0}.tvpopout-info{display:flex;align-items:center;gap:10px}.tvpopout-logo{width:32px;height:24px;object-fit:contain;background:#1a1a1a;border-radius:3px}.tvpopout-details{display:flex;flex-direction:column;gap:1px}.tvpopout-channel{font-size:13px;color:#e0e0e0;font-weight:500}.tvpopout-meta{font-size:11px;color:#555}.tvpopout-actions{display:flex;gap:8px}.tvpopout-btn{background:#1a1a1a;border:1px solid #222222;color:#999;padding:6px 12px;font-family:JetBrains Mono,Fira Code,monospace;font-size:11px;cursor:pointer;transition:all .15s}.tvpopout-btn:hover,.tvpopout-btn.takeover{border-color:#0f8;color:#0f8}.tvpopout-btn.takeover:hover{background:#0f8;color:#0a0a0a}.tvpopout-btn.stop:hover{border-color:#f44;color:#f44}.tvpopout-player{flex:1;position:relative;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}.tvpopout-video{width:100%;height:100%;background:#000;object-fit:contain}.tvpopout-player:fullscreen,.tvpopout-player:-webkit-full-screen{width:100vw;height:100vh;background:#000}.tvpopout-player:fullscreen .tvpopout-video,.tvpopout-player:-webkit-full-screen .tvpopout-video{width:100%;height:100%;object-fit:contain}.tvpopout-message{position:absolute;display:flex;flex-direction:column;align-items:center;gap:8px;color:#999;font-size:13px;z-index:5}.tvpopout-msg-icon{font-size:24px;color:#f44}.tvpopout-loading-dots{font-size:24px;color:#0f8}.tvpopout-loading-dots span{animation:tvpopout-blink 1.4s infinite both}.tvpopout-loading-dots span:nth-child(2){animation-delay:.2s}.tvpopout-loading-dots span:nth-child(3){animation-delay:.4s}@keyframes tvpopout-blink{0%,80%,to{opacity:0}40%{opacity:1}}.tvpopout-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10}.tvpopout-overlay-content{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.tvpopout-overlay-icon{font-size:32px;color:#999}.tvpopout-overlay-text{font-size:16px;color:#e0e0e0}.tvpopout-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#555}.tvpopout-empty-icon{font-size:48px;opacity:.5}.tvpopout-empty-hint{font-size:12px;opacity:.7}:root{--bg-primary: #0a0a0a;--bg-secondary: #111111;--bg-tertiary: #1a1a1a;--border: #2a2a2a;--text-primary: #e0e0e0;--text-secondary: #888888;--text-muted: #555555;--accent: #00ff88;--accent-dim: #00aa55;--error: #ff4444;--online: #00ff88;--offline: #555555;--speaking: #ffaa00;--warning: #ffaa00;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", Consolas, monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;height:100dvh;overflow:hidden;position:fixed;width:100%}#root{height:100%;overflow:hidden}body{font-family:var(--font-mono);font-size:clamp(10px,.75vw + 2.2px,13px);background:var(--bg-primary);color:var(--text-primary);line-height:1.5}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}input,button,textarea{font-family:inherit;font-size:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}@media (pointer: coarse) and (min-width: 768px){body{font-size:11px}}@media (max-width: 600px){body{font-size:12px}input,select,textarea{font-size:16px}::-webkit-scrollbar{width:4px;height:4px}}
