.admin-page { min-height:100vh;background:linear-gradient(180deg,#0d141a 0,#090d11 440px); }
.admin-header { grid-template-columns:1fr auto 1fr; }
.admin-nav { display:flex;align-items:center;gap:6px;padding:4px;border:1px solid var(--line);background:#0c1217; }
.admin-nav a { padding:7px 11px;color:var(--quiet);font-size:10px;font-weight:700;letter-spacing:.02em; }
.admin-nav a:hover,.admin-nav a:focus-visible { background:#182128;color:#eef4f6; }
.admin-shell { width:min(1500px,calc(100% - 48px));margin:0 auto;padding:112px 0 100px; }
.admin-command { display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:30px 0 28px;border-bottom:1px solid var(--line); }
.admin-command h1 { margin:4px 0 8px;font-size:clamp(38px,4vw,58px);line-height:1;letter-spacing:-.045em; }
.admin-command>div>p:last-child { margin:0;color:var(--muted);font-size:13px; }
.admin-command-actions { display:grid;grid-template-columns:auto auto;align-items:center;justify-items:end;gap:8px 16px; }
.admin-command-actions>b { color:var(--quiet);font-size:9px;font-weight:550; }
.admin-command-actions .button { grid-column:2;grid-row:1/3;min-width:96px;min-height:40px;padding:8px 14px; }
.service-status { display:inline-flex;align-items:center;gap:8px;color:#cfdbdf;font-size:11px;font-weight:700; }
.service-status i { width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(141,214,195,.55); }
.admin-state { min-height:360px;display:grid;place-content:center;justify-items:center;gap:16px;color:var(--muted); }
.admin-denied { max-width:560px;margin:80px auto;padding:45px;border:1px solid var(--line);background:#11181e;text-align:center; }
.admin-denied h2 { font-size:34px; }.admin-denied p { margin-bottom:25px;color:var(--muted); }.admin-error { margin:50px auto;max-width:700px; }

.metric-ledger { display:grid;grid-template-columns:1.15fr repeat(4,1fr);margin:24px 0 14px;border:1px solid var(--line);background:var(--line);gap:1px; }
.metric-ledger article { min-height:142px;display:flex;flex-direction:column;padding:21px;background:#0f161c; }
.metric-ledger .metric-primary { background:linear-gradient(145deg,#20313c,#111b22 78%); }
.metric-ledger span { color:var(--muted);font-size:10px;font-weight:650; }
.metric-ledger strong { margin:auto 0 7px;color:#edf4f7;font-size:clamp(35px,3.2vw,50px);line-height:.9;letter-spacing:-.055em; }
.metric-ledger small { color:var(--quiet);font-size:9px; }.metric-ledger small b { color:#cbd7dc; }

.admin-grid { display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.65fr);gap:14px;margin-bottom:14px; }
.growth-panel,.health-panel,.accounts-panel,.update-health-panel { border:1px solid var(--line);background:#0f161c; }
.growth-panel,.health-panel { min-height:384px;padding:28px; }
.panel-heading { display:flex;justify-content:space-between;gap:28px;align-items:flex-start; }
.panel-heading .section-kicker { margin-bottom:7px; }
.panel-heading h2 { margin:0;font-size:25px;letter-spacing:-.035em; }
.panel-heading>p { margin:3px 0 0;color:var(--muted);font-size:10px;text-align:right; }
.panel-heading>p b { display:block;color:var(--gold-bright);font-size:24px; }
.update-heading-actions { display:grid;justify-items:end;gap:6px;text-align:right; }.update-heading-actions p { margin:0;color:var(--muted);font-size:9px; }.update-heading-actions b { display:block;color:var(--gold-bright);font-size:24px; }.update-heading-actions a { color:var(--blue);font-size:9px;font-weight:700; }
.signup-chart { height:260px;display:grid;grid-template-columns:repeat(14,1fr);gap:7px;align-items:end;margin-top:28px;padding-top:16px;border-top:1px solid var(--line-soft); }
.signup-chart div { height:100%;display:grid;grid-template-rows:20px 1fr 17px;gap:5px;align-items:end;text-align:center; }
.signup-chart b { min-height:20px;color:#c9d4da;font-size:9px;font-weight:650; }
.signup-chart i { width:100%;height:var(--height);min-height:2px;background:linear-gradient(180deg,#8bc7ec,#385d75);box-shadow:0 0 18px rgba(136,190,229,.08); }
.signup-chart span { min-height:17px;color:var(--quiet);font-size:8px;white-space:nowrap; }
.health-panel { background:linear-gradient(145deg,rgba(57,79,91,.2),transparent 48%),#10171d; }
.health-stat { display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:24px; }
.health-stat span { color:var(--muted);font-size:10px; }.health-stat strong { color:#e8f0f2;font-size:11px; }
.health-stat>i { grid-column:1/-1;height:5px;overflow:hidden;background:#27343d; }.health-stat>i>b { display:block;height:100%;background:linear-gradient(90deg,#7aaed2,#8dd6c3); }
.health-panel dl { margin:28px 0 0;border-top:1px solid var(--line); }
.health-panel dl div { display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--line-soft);font-size:10px; }
.health-panel dt { color:var(--quiet); }.health-panel dd { margin:0;color:#d8e1e5;font-weight:700; }

.update-health-panel { margin:0 0 14px;padding:28px; }
.update-health-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:24px 0 20px;border:1px solid var(--line);background:var(--line); }
.update-health-grid article { min-height:112px;display:flex;flex-direction:column;padding:17px;background:#111a21; }
.update-health-grid span { color:var(--muted);font-size:10px; }.update-health-grid strong { margin:auto 0 5px;color:#edf4f7;font-size:32px;letter-spacing:-.045em; }.update-health-grid small { color:var(--quiet);font-size:8px; }
.update-version-list { display:grid;gap:9px; }
.update-version-list>div { display:grid;grid-template-columns:78px minmax(160px,1fr) 86px 210px;gap:14px;align-items:center; }
.update-version-list strong { color:#eef3f5;font-size:11px; }.update-version-list>div>span { height:6px;overflow:hidden;background:#25333d; }.update-version-list i { display:block;height:100%;background:linear-gradient(90deg,#71a9d2,#8dd6c3); }
.update-version-list b { color:#cbd7dc;font-size:9px; }.update-version-list small { color:var(--quiet);font-size:8px;text-align:right; }.update-version-list>p { margin:0;color:var(--muted);font-size:10px; }

.accounts-panel { padding:28px;scroll-margin-top:90px; }
.accounts-panel .panel-heading>div>p:last-child { margin:6px 0 0;text-align:left;color:var(--quiet);font-size:9px; }
.accounts-panel .panel-heading>.button { min-height:39px;padding:8px 14px; }
.account-toolbar { display:grid;grid-template-columns:minmax(260px,1.5fr) repeat(4,minmax(125px,.55fr));gap:8px;margin:24px 0 16px;padding:12px;border:1px solid var(--line);background:#0b1116; }
.account-toolbar label { display:grid;gap:5px;color:var(--quiet);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.06em; }
.account-toolbar input,.account-toolbar select { width:100%;min-height:38px;padding:8px 10px;border:1px solid #34434e;border-radius:3px;outline:0;background:#111a21;color:#e7eef1;font:inherit;font-size:10px;text-transform:none;letter-spacing:0; }
.account-toolbar input:focus,.account-toolbar select:focus { border-color:var(--blue);box-shadow:0 0 0 2px rgba(136,190,229,.1); }
.account-table-wrap { overflow-x:auto; }
.accounts-panel table { width:100%;border-collapse:collapse;min-width:1120px; }
.accounts-panel th { padding:9px 12px;text-align:left;color:var(--quiet);font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--line); }
.accounts-panel td { padding:14px 12px;color:#b7c3ca;font-size:10px;border-bottom:1px solid var(--line-soft);vertical-align:middle; }
.accounts-panel tbody tr:hover { background:#ffffff02; }
.accounts-panel td>small,.accounts-panel .account-name small { display:block;max-width:240px;margin-top:4px;overflow:hidden;color:var(--quiet);font-size:8px;font-weight:500;text-overflow:ellipsis;white-space:nowrap; }
.accounts-panel td>strong,.accounts-panel .account-name strong { color:#eef3f5;font-size:12px;font-weight:720; }
.account-status { display:inline-flex;align-items:center;gap:7px;color:var(--quiet);white-space:nowrap; }
.account-status::before { content:"";width:6px;height:6px;border-radius:50%;background:#45535c; }
.account-status.active { color:var(--green); }.account-status.active::before { background:var(--green);box-shadow:0 0 9px rgba(141,214,195,.45); }
.account-status.suspended { color:#f0cb80; }.account-status.suspended::before { background:#d8aa50; }
.account-status.banned { color:#ff9f91; }.account-status.banned::before { background:#d76e61; }
.manage-account { padding:7px 11px;border:1px solid #41515c;border-radius:3px;background:#17222a;color:var(--blue);font:inherit;font-size:9px;font-weight:700;cursor:pointer; }
.manage-account:hover,.manage-account:focus-visible { border-color:var(--blue);color:#e7f5ff; }
.account-empty { padding:34px;text-align:center;color:var(--quiet);font-size:11px;border-bottom:1px solid var(--line); }
.account-pagination { display:flex;align-items:center;justify-content:flex-end;gap:14px;padding-top:16px;color:var(--quiet);font-size:9px; }
.account-pagination button { padding:7px 10px;border:1px solid var(--line);color:#cbd6db;font-size:9px; }
.account-pagination button:hover:not(:disabled) { border-color:var(--blue);color:white; }.account-pagination button:disabled { opacity:.35;cursor:default; }

.account-manager { width:min(1040px,calc(100% - 30px));max-height:min(900px,calc(100vh - 34px));padding:0;border:1px solid #52616a;border-radius:7px;background:#10171d;color:var(--text);box-shadow:0 35px 100px rgba(0,0,0,.72); }
.account-manager::backdrop { background:rgba(3,6,8,.8);backdrop-filter:blur(5px); }.account-manager.busy { opacity:.76;pointer-events:none; }
.account-manager-shell { padding:28px; }
.account-manager header { display:flex;justify-content:space-between;gap:30px;padding-bottom:20px;border-bottom:1px solid var(--line); }
.account-manager header .section-kicker { margin-bottom:6px; }.account-manager h2 { margin:0;font-size:30px; }.account-manager header p:last-child { margin:6px 0 0;color:var(--quiet);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:8px; }
.manager-header-actions { display:flex;align-items:flex-start;gap:8px; }.manager-header-actions>button:first-child { min-height:34px;padding:7px 10px;border:1px solid var(--line);color:var(--muted);font-size:9px; }
.manager-close { width:34px;height:34px;border:1px solid var(--line);background:#172027;color:var(--muted);font-size:20px;cursor:pointer; }
.manager-facts { display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:18px 0;border:1px solid var(--line);background:var(--line); }
.manager-facts div { display:grid;gap:5px;padding:13px 16px;background:#0c1318; }.manager-facts span { color:var(--quiet);font-size:8px;text-transform:uppercase;letter-spacing:.06em; }.manager-facts strong { color:#e4ecef;font-size:10px; }
.manager-grid { display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0 0 18px;background:var(--line);border:1px solid var(--line); }
.manager-grid section { min-height:258px;padding:20px;background:#111920; }
.manager-grid .manager-note { grid-column:auto; }
.manager-grid h3 { margin:0 0 7px;font-size:16px; }.manager-grid section>p { min-height:42px;margin:0 0 15px;color:var(--muted);font-size:9px;line-height:1.55; }
.manager-grid label { display:grid;gap:6px;margin-bottom:11px;color:#d8e1e5;font-size:9px;font-weight:700; }
.manager-grid input,.manager-grid select,.manager-grid textarea { width:100%;padding:10px 11px;border:1px solid #3d4c56;border-radius:3px;outline:0;background:#0b1116;color:var(--text);font:inherit;font-size:10px;resize:vertical; }
.manager-grid input:focus,.manager-grid select:focus,.manager-grid textarea:focus { border-color:var(--blue);box-shadow:0 0 0 2px rgba(136,190,229,.1); }
.manager-grid .button { min-height:37px;padding:8px 11px;font-size:9px; }.manager-actions { display:flex;flex-wrap:wrap;gap:7px; }
.level-presets,.suspension-presets { display:flex;flex-wrap:wrap;gap:5px;margin:-3px 0 12px; }
.level-presets button,.suspension-presets button { padding:5px 7px;border:1px solid #34434d;background:#0c1318;color:#aebdc6;font-size:8px; }.level-presets button:hover,.suspension-presets button:hover { border-color:var(--blue);color:white; }
.session-breakdown { display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px; }.session-breakdown span { display:flex;justify-content:space-between;padding:9px;border:1px solid var(--line);color:var(--quiet);font-size:9px; }.session-breakdown b { color:#edf2f4; }
.manager-success { margin:0;padding:10px 12px;border:1px solid rgba(141,214,195,.3);border-radius:3px;background:rgba(49,104,90,.14);color:#b9efdf;font-size:10px; }
.admin-footer { grid-template-columns:1fr 1fr 1fr; }.admin-footer>a:last-child { justify-self:end;color:var(--blue); }
[hidden] { display:none!important; }

@media(max-width:1160px){.metric-ledger{grid-template-columns:repeat(2,1fr)}.metric-ledger .metric-primary{grid-column:span 2}.admin-grid{grid-template-columns:1fr}.health-panel{min-height:auto}.account-toolbar{grid-template-columns:1fr 1fr 1fr}.account-search{grid-column:span 2}.update-version-list>div{grid-template-columns:72px 1fr 84px}.update-version-list small{grid-column:2/-1;text-align:left}}
@media(max-width:720px){.admin-header{grid-template-columns:1fr auto}.admin-nav{display:none}.admin-shell{width:calc(100% - 28px);padding-top:88px}.admin-command{display:grid;align-items:start}.admin-command-actions{justify-items:start}.admin-command-actions .button{grid-column:2}.metric-ledger{grid-template-columns:1fr}.metric-ledger .metric-primary{grid-column:auto}.growth-panel,.health-panel,.accounts-panel,.update-health-panel{padding:22px 16px}.update-health-grid{grid-template-columns:1fr 1fr}.update-version-list>div{grid-template-columns:62px 1fr}.update-version-list b{grid-column:1}.update-version-list small{grid-column:2}.signup-chart{gap:3px}.signup-chart span{font-size:7px}.panel-heading{flex-direction:column}.panel-heading>p{text-align:left}.account-toolbar{grid-template-columns:1fr}.account-search{grid-column:auto}.admin-footer{grid-template-columns:1fr;text-align:center}.admin-footer>*{justify-self:center!important}.account-manager-shell{padding:20px 14px}.manager-facts{grid-template-columns:1fr 1fr}.manager-grid{grid-template-columns:1fr}.manager-grid .manager-note{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.service-status i{box-shadow:none}}
