:root{
  color-scheme:dark;
  --bg:#07111f;--panel:#111f33;--panel2:#17283f;--control:#0e1a2a;--border:#294460;--border2:#355676;
  --text:#f7fbff;--muted:#90b6dc;--blue:#1685ff;--green:#15c982;--orange:#ff9f1a;--red:#f04b5f;
  --sidebar:#07342d;--sidebarHover:#0f594d;--thead:#14253b;--notice:#0d2b45;--noticeText:#bfe0ff;
  --successBg:#103f30;--dangerBg:#4b1720;--shadow:0 14px 35px rgba(0,0,0,.18);--radius:14px;--controlH:42px;
}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#f3f6fa;--panel:#fff;--panel2:#f7f9fc;--control:#fff;--border:#d5dfeb;--border2:#b8c7d9;
  --text:#172033;--muted:#66758a;--blue:#0f74e8;--green:#0d9f68;--orange:#d98200;--red:#d73a4f;
  --sidebar:#fff;--sidebarHover:#eef5ff;--thead:#eef3f8;--notice:#edf6ff;--noticeText:#25567f;
  --successBg:#e9f8f1;--dangerBg:#fff0f2;--shadow:0 12px 30px rgba(23,32,51,.08);
}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;line-height:1.45;transition:.18s background-color,.18s color}a{color:var(--blue)}button,input,select,textarea{font:inherit}
.sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--sidebar);border-right:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column;z-index:20}.brand{min-height:48px}.brand b{font-size:22px}.brand small,.who span,td small,.panel-head small{display:block;color:var(--muted);margin-top:4px}.who{margin:20px 0 18px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--panel)}.sidebar nav{display:grid;gap:6px}.sidebar a,.sidebar button{display:block;width:100%;color:var(--text);text-decoration:none;padding:11px 12px;border-radius:9px;background:transparent;border:0;text-align:left;cursor:pointer;min-height:42px}.sidebar a:hover,.sidebar button:hover{background:var(--sidebarHover)}.sidebar form{margin-top:auto}
.main{margin-left:230px;min-height:100vh;padding:22px 24px 32px;overflow-x:hidden}.main-inner{width:100%;max-width:1600px;margin:0 auto}.main-header{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--border);margin-bottom:20px;min-height:66px}.main-header-copy{min-width:0}.main-header-copy h1{overflow-wrap:anywhere}.header-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}h1,h2,h3{margin:0 0 8px;line-height:1.2}.page-subtitle{color:var(--muted);margin:0}.role,.badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:8px;background:var(--panel2);color:var(--text);font-weight:700;font-size:12px;white-space:nowrap}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 12px;border:1px solid var(--border2);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer;white-space:nowrap}.theme-toggle:hover{border-color:var(--blue)}
.cards{display:grid;gap:12px;margin-bottom:18px}.cards.five{grid-template-columns:repeat(5,minmax(0,1fr))}.card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:18px;min-width:0;min-height:104px;display:flex;flex-direction:column;justify-content:center}.card small{color:var(--muted)}.card b{display:block;font-size:28px;line-height:1.15;margin-top:7px}.card.good{border-color:var(--green)}.card.warn{border-color:var(--orange)}.card.bad{border-color:var(--red)}.panel{padding:16px 16px 18px;margin-bottom:18px;min-width:0;max-width:100%;overflow:hidden}.panel-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px;min-height:42px}.panel-head>div{min-width:0;flex:1 1 auto}.panel-head form{flex:0 0 auto;margin:0}
.table-wrap{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;border-radius:10px}.table-wrap table{width:100%;min-width:860px}table{width:100%;border-collapse:collapse}th,td{padding:12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}th{font-size:12px;color:var(--muted);background:var(--thead);white-space:nowrap}td{overflow-wrap:anywhere}tbody tr:last-child td{border-bottom:0}.btn,button.primary{display:inline-flex;align-items:center;justify-content:center;min-height:var(--controlH);background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:9px;padding:9px 14px;text-decoration:none;cursor:pointer;font-weight:600;white-space:nowrap}
.filters,.form-grid{display:grid;gap:14px 12px;margin-bottom:14px;align-items:start}.filters{grid-template-columns:minmax(220px,1fr) minmax(180px,240px) auto}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid .span2{grid-column:1/-1}.form-grid>button.primary{width:100%;justify-self:stretch}.form-grid>label,.field{display:grid;grid-template-rows:auto var(--controlH) 18px;align-content:start;gap:6px;min-width:0;margin:0;color:var(--text)}.field-help{display:block;min-height:18px;line-height:18px;margin:0;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}label{color:var(--text)}input,select,textarea{width:100%;min-width:0;min-height:var(--controlH);height:var(--controlH);background:var(--control);border:1px solid var(--border2);color:var(--text);border-radius:8px;padding:9px 11px;outline:none}textarea{height:auto;min-height:110px;resize:vertical}.form-grid textarea{grid-row:2/4}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,133,255,.15)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}
.details{display:grid;grid-template-columns:minmax(150px,190px) minmax(0,1fr);gap:9px 14px;margin:16px 0 0}.details dt{color:var(--muted)}.details dd{margin:0;min-width:0;overflow-wrap:anywhere}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.notice,.hint{padding:12px;border-radius:9px;background:var(--notice);color:var(--noticeText);border:1px solid var(--border)}.alert{padding:12px 14px;border-radius:9px;margin-bottom:14px;border:1px solid var(--border)}.alert.success{background:var(--successBg)}.alert.danger{background:var(--dangerBg)}
.guest{min-height:100vh}.guest .main{margin:0!important;width:100%!important;min-height:100vh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important}.guest .main-inner{width:auto!important;max-width:none!important;margin:0!important}.guest .login-card{width:min(430px,92vw)!important;margin:0 auto!important}.guest-theme-toggle{position:fixed!important;top:18px!important;right:18px!important;z-index:50!important}.login-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:var(--shadow)}.login-card h2{margin-top:10px}.login-card p{color:var(--muted);margin:0 0 18px}.login-card form{display:grid;gap:11px}.login-card form label{display:grid;gap:6px}.brand-lg{font-size:28px;font-weight:800;color:var(--blue)}
@media(max-width:1200px){.cards.five{grid-template-columns:repeat(3,minmax(0,1fr))}.grid2{grid-template-columns:1fr}}@media(max-width:900px){.cards.five{grid-template-columns:repeat(2,minmax(0,1fr))}.main{padding:18px}.filters{grid-template-columns:1fr 180px auto}}@media(max-width:720px){.sidebar{position:static;width:auto;min-height:auto}.sidebar form{margin-top:16px}.main{margin:0;padding:16px}.main-header{align-items:flex-start}.header-actions{flex-wrap:wrap}.cards.five,.filters,.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:auto}.form-grid>button.primary{width:100%}.panel-head{align-items:flex-start;flex-direction:column}.panel-head form,.panel-head .btn,.panel-head form button{width:100%}.details{grid-template-columns:1fr}.guest .main{padding:16px!important}.guest .login-card{width:100%!important}.guest-theme-toggle{top:10px!important;right:10px!important}}@media(max-width:430px){.cards.five{grid-template-columns:1fr}.main-header{flex-direction:column}.header-actions{width:100%;justify-content:space-between}.login-card{padding:22px}}
.btn.secondary{background:var(--panel2);border-color:var(--border2);color:var(--text)}.btn.danger{background:var(--dangerBg);border-color:var(--red);color:var(--text)}.btn.small{min-height:34px;padding:6px 10px;font-size:12px}.row-actions{display:flex;gap:7px;align-items:center;white-space:nowrap}.row-actions form{margin:0}.empty-cell{text-align:center;color:var(--muted);padding:24px}.discovery-box{margin-top:14px}.discovery-form{margin:14px 0 0}.action-field button{width:100%}.channels-table{min-width:1180px}
