@font-face{font-family:Unbounded;src:url(./unbounded-BHPQLmif.ttf)format("truetype");font-weight:200 900;font-display:swap}@font-face{font-family:Manrope;src:url(./manrope-DIRNzeTG.ttf)format("truetype");font-weight:200 800;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(./jetbrains_mono--VKQJH3W.ttf)format("truetype");font-weight:100 800;font-display:swap}:root{--night:#0a0e1a;--sheet:#0f1527;--surface:#10162a;--raised:#131a2b;--chip:#18203a;--border:#222c46;--border-field:#263150;--ink:#eef1f7;--muted:#a9b2c6;--subtle:#8a93a8;--amber:#f2b544;--on-amber:#1a1204;--mint:#3fd4b0;--mint-light:#7be6cc;--coral:#ff8a5b;--coral-light:#ffb08f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--night);color:var(--ink);background-image:linear-gradient(#131a2b 1px,#0000 1px),linear-gradient(90deg,#131a2b 1px,#0000 1px);background-size:26px 26px;min-height:100vh;margin:0;font:15px/1.5 Manrope,system-ui,sans-serif}h1,h2{margin:0;font-family:Unbounded,sans-serif;font-weight:700}h1{font-size:24px}h2{font-size:16px}code,.mono{font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px}.muted{color:var(--subtle)}.block{font-size:13px;display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pad{padding:16px 20px 20px}.stack{flex-direction:column;gap:12px;display:flex}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}button{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:44px;padding:0 18px;font-weight:700}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--amber);color:var(--on-amber)}button.ghost{background:var(--surface);color:var(--ink);border-color:var(--border)}button.ghost:hover:not(:disabled){border-color:var(--border-field)}button.danger{color:var(--coral-light);background:0 0;border-color:#ff8a5b59}button.danger:hover{background:#ff8a5b1a}button.small{border-radius:10px;min-height:36px;padding:0 12px;font-size:13px}button.icon{width:28px;min-height:22px;color:var(--subtle);background:0 0;border-radius:6px;padding:0;font-size:10px}button.icon:hover:not(:disabled){color:var(--amber)}input,textarea,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--border-field);border-radius:12px;width:100%;min-height:44px;padding:10px 14px}input:focus,textarea:focus,select:focus{border-color:var(--amber);outline:none}input::placeholder,textarea::placeholder{color:#6f7890}textarea{resize:vertical;font-family:JetBrains Mono,monospace;font-size:13px}input[type=date]{width:auto;min-height:36px;padding:4px 10px}label{color:#c9d0de;font-size:13px;font-weight:700}.boot{place-items:center;min-height:100vh;display:grid}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--sheet);border:1px solid var(--border);border-radius:24px;flex-direction:column;gap:12px;width:100%;max-width:380px;padding:32px 28px;display:flex}.login-card h1{margin-top:8px}.login-card p{margin:0 0 8px}.login-card button{margin-top:8px}.error{color:var(--coral-light);margin:0;font-size:14px}.shell{max-width:1120px;margin:0 auto;padding:0 16px 48px}.topbar{flex-wrap:wrap;align-items:center;gap:16px;padding:20px 0;display:flex}.brand{align-items:center;gap:10px;font-family:Unbounded,sans-serif;font-size:17px;font-weight:700;display:flex}.brand-sub{color:var(--amber);border:1px solid #f2b54466;border-radius:999px;padding:2px 10px;font-family:Manrope,sans-serif;font-size:12px}.tabs{background:var(--raised);border:1px solid #1f2840;border-radius:14px;gap:4px;margin-left:auto;padding:4px;display:flex}.tab{color:var(--muted);background:0 0;border-radius:10px;min-height:40px}.tab.on{background:var(--amber);color:var(--on-amber)}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.stat{background:var(--sheet);border:1px solid var(--border);border-radius:18px;flex-direction:column;padding:16px 20px;display:flex}.stat-label{color:var(--subtle);font-size:13px;font-weight:700}.stat-value{font-family:Unbounded,sans-serif;font-size:26px;font-weight:700}.stat-value small{color:var(--subtle);font-family:Manrope,sans-serif;font-size:13px;font-weight:500}main{flex-direction:column;gap:16px;display:flex}.card{background:var(--sheet);border:1px solid var(--border);border-radius:22px;overflow:hidden}.card-head{flex-wrap:wrap;align-items:center;gap:16px;padding:18px 20px 0;display:flex}.card-head .muted{font-size:13px}.card-head .search{max-width:280px;min-height:40px;margin-left:auto}.banner{color:var(--coral-light);background:#ff8a5b1a;border:1px solid #ff8a5b66;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 16px;display:flex}.row-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.ok{color:var(--mint-light);font-weight:700}.warn{color:var(--amber);font-weight:700}.errors{color:var(--coral-light);margin:0;padding-left:18px;font-size:14px}.errors .muted{font-family:JetBrains Mono,monospace;font-size:12px}.rows{flex-direction:column;gap:6px;margin:0;padding:12px;list-style:none;display:flex}.row{border:1px solid #0000;border-radius:16px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 12px;display:flex}.row:hover{background:var(--chip)}.row.off .title,.row.off .badge{opacity:.45}.order{flex-direction:column;display:flex}.badge{color:#c9d0de;background:#1c2540;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:20px;font-weight:700;display:grid}.row .main{flex-direction:column;flex:1;min-width:160px;display:flex}.title{font-weight:700}.row .mono{font-size:12px}.edit{flex:1;align-items:center;gap:8px;min-width:260px;display:flex}.edit .cc{text-transform:uppercase;text-align:center;width:64px}.chip{background:var(--chip);color:var(--muted);letter-spacing:.3px;border-radius:8px;padding:4px 8px;font-size:11px;font-weight:700}.actions{flex-wrap:wrap;gap:6px;display:flex}.switch{flex-shrink:0;width:44px;height:26px;position:relative}.switch input{opacity:0;cursor:pointer;min-height:0;margin:0;position:absolute;inset:0}.switch span[aria-hidden]{pointer-events:none;background:#3a4566;border-radius:999px;transition:background .15s;position:absolute;inset:0}.switch span[aria-hidden]:after{content:"";background:var(--ink);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+span{background:var(--mint)}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline:2px solid var(--amber);outline-offset:2px}.grid-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.table-wrap{padding:8px 12px 12px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{text-align:left;color:var(--subtle);letter-spacing:.3px;padding:10px;font-size:12px;font-weight:700}td{border-top:1px solid var(--border);vertical-align:middle;padding:10px}.status{text-transform:uppercase;letter-spacing:.3px;border-radius:8px;padding:4px 8px;font-size:11px;font-weight:700}.status.active{color:var(--mint-light);background:#3fd4b024}.status.expired{color:var(--amber);background:#f2b54424}.status.disabled{color:var(--coral-light);background:#ff8a5b24}@media (width<=760px){.tabs{order:3;width:100%;margin-left:0}.topbar>.ghost{margin-left:auto}.tabs .tab{flex:1}.stats,.grid-form{grid-template-columns:1fr}.card-head .search{max-width:none;margin-left:0}}.field input[type=date]{width:100%;min-height:44px}.plain{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.org-picker{align-items:center;gap:8px;display:flex}.org-picker label{color:var(--subtle);font-size:12px;font-weight:700}.org-picker select{max-width:220px;min-height:40px}.who{font-size:13px}.inline-form{flex-wrap:wrap;gap:12px;display:flex}.inline-form input{flex:1;min-width:200px}.narrow{max-width:460px}button.link{min-height:0;color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--border-field);text-decoration-color:var(--border-field);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;padding:0}button.link:hover{-webkit-text-decoration-color:var(--amber);text-decoration-color:var(--amber)}.with-button{align-items:center;gap:6px;display:flex}.with-button input{flex:1;min-width:0}.secret{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.secret .reveal{min-width:10ch;min-height:32px;color:var(--ink);border:1px dashed var(--border-field);text-align:left;background:0 0;border-radius:8px;padding:4px 8px;font-family:JetBrains Mono,monospace;font-size:13px}.secret .reveal:hover{border-color:var(--amber)}.traffic{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.traffic .gb{text-align:right;width:64px;min-height:36px}.users-form{grid-template-columns:repeat(3,minmax(0,1fr))}.users-form>button{align-self:end}.status.limit{color:var(--amber);background:#f2b54424}.small-text{font-size:12px}.segmented{background:var(--raised);border:1px solid #1f2840;border-radius:12px;gap:4px;margin-left:auto;padding:4px;display:flex}.segmented button{color:var(--muted);background:0 0;border-radius:9px;min-height:36px;font-size:13px}.segmented button.on{background:var(--chip);color:var(--ink)}.form-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.form-grid.two{grid-template-columns:2fr 1fr}.form-grid select,.grid-form select{width:100%;min-height:44px}.sub-links{flex-direction:column;gap:6px;width:100%;margin:4px 0 0 52px;padding:0;list-style:none;display:flex}.sub-links li{flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;display:flex}.sub-links .mono{font-size:12px}@media (width<=960px){.form-grid,.users-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.form-grid,.form-grid.two,.users-form{grid-template-columns:1fr}.segmented{width:100%;margin-left:0}.segmented button{flex:1}.org-picker{width:100%}.org-picker select{flex:1;max-width:none}}.topbar-end{align-items:center;gap:12px;display:flex}.topbar.two-rows .topbar-end{margin-left:auto}.topbar.two-rows .tabs{order:3;width:100%;margin-left:0}.topbar.two-rows .tabs .tab{flex:1}.stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}th{white-space:nowrap}table{min-width:940px}.actions{flex-wrap:nowrap}.actions button,.secret button{white-space:nowrap}@media (width<=760px){.topbar-end{margin-left:auto}}.devices{white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.devices select{width:64px;min-height:36px;padding:4px 8px}
