.canales-root{display:flex;flex-direction:column;flex:1;min-height:0}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:6px 10px;background:var(--panel);border-bottom:1px solid var(--border);flex:0 0 auto}.toolbar label{font-size:12px;white-space:nowrap}.toolbar .sep{width:1px;height:22px;background:var(--border-2);margin:0 4px}.toolbar .chk{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;cursor:pointer}.toolbar input[type=number]{width:62px}button.primary{background:linear-gradient(180deg,var(--accent),var(--accent-hover))}.canales-main{display:flex;flex:1;min-height:0}.viewer{position:relative;flex:1;min-width:0;background:#14171e}.right-panel{width:360px;flex:0 0 360px;overflow-y:auto;background:var(--panel);border-left:1px solid var(--border);padding:8px;display:flex;flex-direction:column;gap:8px}.collapsible{border:1px solid var(--border-2);border-radius:10px;background:var(--panel-2);overflow:visible}.collapsible-header{display:flex;align-items:center;gap:6px;width:100%;background:transparent;border:none;color:var(--text);font-weight:600;font-size:13px;padding:8px 10px;cursor:pointer;text-align:left}.collapsible-header:hover{filter:none;background:#3b82f614}.collapsible-body{padding:4px 10px 10px;display:flex;flex-direction:column;gap:8px}.form-grid{display:grid;grid-template-columns:1fr auto;gap:6px 8px;align-items:center}.form-grid label{font-size:12px}.form-grid input[type=number]{width:78px}.form-grid select{min-width:120px}.btn-col{display:flex;flex-direction:column;gap:6px}.hint{color:var(--muted);font-size:11px}.hint.accent{color:var(--focus)}.list-label{color:var(--muted);font-size:12px;margin-top:2px}.channel-list{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto;padding:2px}.channel-empty{color:var(--muted);font-size:12px;padding:6px}.channel-row{display:flex;align-items:center;gap:6px;min-height:44px;padding:4px 8px;border:1px solid var(--border-2);border-radius:8px;background:var(--panel);cursor:pointer}.channel-row.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.channel-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}button.icon{padding:4px 6px;line-height:1}.channel-menu{position:absolute;right:0;top:26px;z-index:30;display:flex;flex-direction:column;gap:4px;background:var(--panel-2);border:1px solid var(--border-2);border-radius:8px;padding:6px;min-width:170px;box-shadow:0 10px 30px #00000073}.channel-menu button{text-align:left;font-size:12px}.modal-bg{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--panel);border:1px solid var(--border-2);border-radius:12px;padding:18px;min-width:320px;max-width:460px;box-shadow:0 18px 60px #0000008c}.modal h3{margin:0 0 10px;font-size:15px}.modal-text{color:var(--muted);white-space:pre-line;margin:0 0 14px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.busy-badge{position:fixed;bottom:16px;left:16px;z-index:90;background:var(--panel-2);border:1px solid var(--accent);color:var(--text);border-radius:999px;padding:6px 14px;font-size:12px;box-shadow:0 6px 24px #0006}.channel-num{color:var(--muted);font-size:12px;min-width:18px;text-align:right}.channel-warn{display:inline-flex;align-items:center}.restore-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:40;max-width:90%;display:flex;align-items:center;gap:12px;background:var(--panel-2);border:1px solid var(--accent);border-radius:10px;padding:8px 14px;font-size:12.5px;color:var(--text);box-shadow:0 8px 30px #00000073}.restore-banner strong{color:var(--focus)}.app-shell{display:flex;flex-direction:column;height:100vh;overflow:hidden}.topbar{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--panel);border-bottom:1px solid var(--border);flex:0 0 auto}.topbar .brand{font-weight:600;font-size:14px}.topbar .spacer{flex:1}.chip{background:var(--panel-2);border:1px solid var(--border-2);border-radius:999px;padding:3px 10px;color:var(--muted);font-size:12px}.login-wrap{height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 600px at 50% -10%,#1a2332 0%,var(--bg) 60%)}.login-card{width:340px;background:var(--panel);border:1px solid var(--border-2);border-radius:14px;padding:26px;box-shadow:0 18px 60px #00000080}.login-card h1{margin:0 0 4px;font-size:22px}.login-sub{margin:0 0 16px;color:var(--muted);font-size:12px}.login-card .field{margin-bottom:12px;display:flex;flex-direction:column;gap:4px}.login-card .field input{width:100%}.err{background:#ef44441f;border:1px solid rgba(239,68,68,.5);color:#fca5a5;border-radius:8px;padding:6px 10px;margin-bottom:12px;font-size:12px}:root{--bg: #0e1117;--panel: #0f131a;--panel-2: #18202c;--border: #202635;--border-2: #263041;--text: #e8eaf0;--muted: #9aa4b2;--accent: #3b82f6;--accent-hover: #2563eb;--accent-press: #1d4ed8;--danger: #ef4444;--focus: #60a5fa}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:Segoe UI,Inter,Roboto,Noto Sans,Helvetica Neue,Arial,sans-serif;font-size:13px}button{background:linear-gradient(180deg,var(--accent),var(--accent-hover));color:#fff;border:1px solid var(--accent-press);border-radius:8px;padding:6px 12px;font-size:13px;cursor:pointer;transition:filter .1s ease}button:hover{filter:brightness(1.1)}button:active{filter:brightness(.92)}button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}button.ghost{background:var(--panel-2);border:1px solid var(--border-2);color:var(--text)}button.danger{background:linear-gradient(180deg,var(--danger),#dc2626);border-color:#b91c1c}input,select{background:var(--panel-2);color:var(--text);border:1px solid var(--border-2);border-radius:8px;padding:5px 8px;font-size:13px}input:focus,select:focus{outline:1px solid var(--focus)}input[type=number]{width:72px}input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px}input[type=color]{padding:0;width:26px;height:22px;border-radius:6px;cursor:pointer;border:1px solid var(--border-2);background:transparent}label{color:var(--muted)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#2a3342;border-radius:6px}::-webkit-scrollbar-track{background:transparent}
