:root{--navy:#0b1a3c;--navy-2:#13244b;--navy-3:#1b2f5c;--blue:#4d86d6;--teal:#5fd0dc;--slate:#b8c6d1;--text:#fff;--muted:#8fa3b8;--line:#ffffff17;--success:#4cc38a;--warning:#f5a524;--danger:#f2555a;--radius:12px;--gradient:linear-gradient(135deg, #1f4f96, #298f9e);color:var(--text);background:var(--navy);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;font-size:15px}*{box-sizing:border-box}body{background:var(--navy);min-height:100vh;margin:0}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 4px;font-size:26px}h2{margin:0 0 12px;font-size:18px}h3{color:var(--slate);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:15px}code,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.muted{color:var(--muted)}.small{font-size:13px}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#08142f;flex-direction:column;gap:4px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 8px 22px;display:flex}.brand img{border-radius:10px;width:40px;height:40px}.wordmark{line-height:1.05}.wordmark .soft{opacity:.75;font-size:19px}.wordmark .cms{font-size:19px;font-weight:900}.wordmark .iptv{color:var(--teal);letter-spacing:.3em;font-size:10px;font-weight:700;display:block}.nav-item{color:var(--slate);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.nav-item:hover{color:var(--text);background:#ffffff0d;text-decoration:none}.nav-item.active{color:var(--teal);background:#5fd0dc24;font-weight:600}.nav-item .count{background:var(--warning);color:var(--navy);border-radius:999px;margin-left:auto;padding:0 8px;font-size:12px;font-weight:700}.sidebar .spacer{flex:1}.main{width:100%;max-width:1280px;padding:28px 36px 60px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.card{background:var(--navy-2);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.grid{gap:16px;display:grid}.grid.stats{grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start}.stat .value{margin-top:6px;font-size:30px;font-weight:800}.stat .label{color:var(--muted);font-size:13px}.stat.warn .value{color:var(--warning)}.stat.danger .value{color:var(--danger)}.stack{flex-direction:column;gap:14px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row.end{justify-content:flex-end}.between{justify-content:space-between;align-items:center;gap:12px;display:flex}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--navy-2);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 14px}th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#0000001f;font-size:12px;font-weight:600}tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover td{background:#ffffff08}td.actions{text-align:right;white-space:nowrap}label.field{color:var(--slate);flex-direction:column;gap:6px;font-size:13px;display:flex}label.field .hint{color:var(--muted);font-size:12px}input,select,textarea{font:inherit;color:var(--text);background:var(--navy);border:1px solid #ffffff29;border-radius:10px;width:100%;padding:10px 12px}textarea{resize:vertical;min-height:80px}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--teal);outline-offset:1px}label.check{color:var(--text);cursor:pointer;align-items:center;gap:10px;display:flex}label.check input{width:18px;height:18px;accent-color:var(--teal)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.btn{font:inherit;cursor:pointer;color:var(--text);white-space:nowrap;background:#ffffff14;border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:9px 18px;font-weight:600;display:inline-flex}.btn:hover{background:#ffffff24}.btn.primary{background:var(--gradient)}.btn.primary:hover{filter:brightness(1.1)}.btn.danger{color:var(--danger);background:0 0;border-color:#f2555a66}.btn.danger:hover{background:#f2555a1f}.btn.small{padding:5px 12px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}.badge{color:var(--slate);background:#ffffff1a;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.badge.success{color:var(--success);background:#4cc38a29}.badge.warning{color:var(--warning);background:#f5a52429}.badge.danger{color:var(--danger);background:#f2555a29}.badge.info{color:var(--teal);background:#5fd0dc29}.alert{border:1px solid;border-radius:10px;padding:12px 14px}.alert.error{color:#ffb3b5;background:#f2555a1a;border-color:#f2555a66}.alert.success{color:#a8ebc9;background:#4cc38a1a;border-color:#4cc38a66}.alert.warning{color:#ffd79a;background:#f5a5241a;border-color:#f5a52466}.secret{color:var(--teal);background:var(--navy);-webkit-user-select:all;user-select:all;border-radius:8px;padding:8px 12px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:18px}.backdrop{z-index:50;background:#030814b3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--navy-2);border:1px solid var(--line);border-radius:16px;width:min(640px,100%);max-height:calc(100vh - 40px);padding:24px;overflow:auto}.toast{background:var(--navy-3);border:1px solid var(--line);border-left:4px solid var(--teal);z-index:60;border-radius:10px;max-width:420px;padding:12px 16px;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 30px #0006}.toast.error{border-left-color:var(--danger)}.auth{background:radial-gradient(circle at 20% 10%, #12305e, var(--navy) 60%);place-items:center;min-height:100vh;padding:20px;display:grid}.auth .card{width:min(420px,100%);padding:32px}.pager{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.empty{text-align:center;color:var(--muted);padding:36px}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{flex-flow:wrap;height:auto;position:static}.brand{width:100%;padding-bottom:8px}.nav-item{width:auto}.main{padding:20px 16px 40px}}
