/* Workspace refresh. Shared tokens keep every existing admin view consistent. */
:root {
  --bg:#08090e; --panel:#101320; --panel2:#141826; --tile:#171b2a;
  --rail:#0b0d16; --sunken:#0a0c14; --void:#05060b; --pip:#0d1018;
  --line:#252a3d; --line2:#1b2030; --line3:#3d4561;
  --ctl:#181d2c; --ctl-h:#212739; --ctl-h2:#2b3346;
  --text:#edf0f8; --text2:#d5dceb; --text3:#bdc6db;
  --muted:#a3adc4; --dim:#8994af; --slate:#b0bbd0; --mono-fg:#a9c5df;
  --cyan:#35dcf0; --cyan-fg:#a9edf8; --green:#3ddc84;
  --side:248px; --fs-micro:.69rem; --fs-2xs:.73rem; --fs-xs:.77rem;
  --fs-sm:.81rem; --fs-md:.88rem; --fs-lg:.96rem; --fs-xl:1.08rem;
  --fs-2xl:1.3rem; --fs-3xl:1.55rem; --tap:44px;
}
body { font-family:Manrope,'Segoe UI',sans-serif; line-height:1.5; }
button,input,select,textarea { font-family:inherit; }
button,a,input { -webkit-tap-highlight-color:transparent; }
button { transition:background .16s,color .16s,border-color .16s; }
button:active:not(:disabled) { transform:translateY(1px); }
button:disabled { cursor:not-allowed; }
[hidden] { display:none !important; }
button svg { flex-shrink:0; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.skip-link { position:fixed;left:16px;top:-80px;z-index:30;background:var(--cyan);color:var(--bg);padding:12px 18px;border-radius:8px; }
.skip-link:focus { top:12px; }
.side { height:100dvh;border-right:1px solid var(--line); }
.side-top { padding:20px 22px 16px;gap:10px; }
.side-logo { max-width:142px;border-radius:0; }
.side-sub { flex-basis:100%;text-align:center;font-size:.65rem;letter-spacing:1.8px; }
.side-status { margin:0 16px 16px;padding:10px 12px;background:var(--sunken);border-color:var(--line);font-size:.76rem;text-transform:capitalize; }
.dot.on,.dot.off { box-shadow:none; }
.nav-search { position:relative;margin:0 16px 10px; }
.nav-search input { margin:0;padding:10px 32px 10px 12px;font-size:.78rem;border-radius:7px;background:transparent; }
.nav-search kbd { position:absolute;right:10px;top:9px;font-size:.7rem;border:1px solid var(--line3);border-radius:3px;color:var(--muted);padding:0 5px;pointer-events:none; }
.nav { padding:0 12px 16px;scrollbar-width:thin;scrollbar-color:var(--line3) transparent; }
.nav-g { padding:20px 12px 9px;letter-spacing:1.7px;font-size:.63rem;color:var(--dim); }
.nv { min-height:39px;padding:9px 12px;gap:12px;font-size:.8rem;border-radius:6px;margin:2px 0;position:relative; }
.nv svg { width:17px;height:17px;stroke-width:1.6; }
.nv.on { background:#112b39;color:#7ce9f6; }
.nv.on::before { content:'';position:absolute;left:0;top:11px;bottom:11px;width:3px;border-radius:4px;background:var(--cyan); }
.badge:empty { display:none; }
.side-user { padding:16px;background:var(--rail); }
.ua { background:#24203b;color:#e1d6ff;border:1px solid #52446d; }
.bar { min-height:76px;padding:16px 34px;background:rgba(8,9,14,.94);border-bottom:1px solid var(--line);gap:14px; }
.bar-context { display:flex;align-items:center;gap:14px;flex:1;min-width:0;font-size:.79rem;color:var(--dim); }
.bar-context h1 { font-size:.82rem;font-weight:600;letter-spacing:0;color:var(--text2);flex:initial; }
.bar-r { gap:14px; }
.chip { background:transparent;border:0;font-family:Consolas,monospace;font-size:.75rem; }
.ghost.sm { min-height:36px;min-width:36px;background:transparent; }
.views { width:100%;max-width:1560px;margin:0 auto;padding:32px 34px 60px; }
.main { min-height:100dvh; }
.panel { padding:24px;border-radius:12px;box-shadow:0 3px 8px #05060b24; }
.p-h { color:var(--text2);font-size:.88rem;text-transform:none;letter-spacing:0;font-weight:700; }
.pw { text-transform:none;letter-spacing:0;min-height:40px;font-size:.8rem; }
.mini { min-height:32px;border-radius:6px; }
.tile { text-align:left;padding:20px;border-left:1px solid var(--line); }
.tile-v { font-size:2rem;font-variant-numeric:tabular-nums;letter-spacing:-1px; }
.tile-k { font-size:.75rem;letter-spacing:.2px;text-transform:none; }
.tile-s { margin-top:6px; }
.fill { background:var(--cyan); }
.fill.warn { background:var(--amber); }.fill.danger { background:var(--red); }
.track { border:0;height:5px;border-radius:2px; }.fill { border-radius:2px; }
.dtable th,.au-t th { text-transform:none;letter-spacing:0; }
.dtable td,.au-t td { padding-top:13px;padding-bottom:13px; }
.chartcard { margin-bottom:20px; }
.con { background:var(--void);border-color:var(--line);border-radius:10px;font-size:.8rem; }
.modal { border:1px solid var(--line3);box-shadow:0 24px 100px #05060bdd; }
.loginwrap::before { background:radial-gradient(ellipse at 15% 80%,#35dcf016,transparent 60%),radial-gradient(ellipse at 85% 15%,#ff3d9a20,transparent 60%); }
.loginwrap .card { border-color:var(--line3);padding:36px;box-shadow:0 20px 100px #05060b88; }
.loginwrap .sub { text-align:center;margin:12px 0 28px;letter-spacing:2px;text-transform:uppercase;font-size:.7rem; }
#go { background:var(--cyan);color:#06222a;text-transform:none;letter-spacing:0; }
#go:hover { background:#7ce9f6; }
.ov-heading { display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 26px; }
.ov-eyebrow { font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--cyan);margin-bottom:8px; }
.ov-heading h2 { font-size:clamp(1.8rem,2.7vw,2.55rem);font-weight:600;line-height:1.15;letter-spacing:-1.4px;margin:0 0 10px; }
.ov-heading p { margin:0;font-size:.83rem;color:var(--muted); }
.ov-button { display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 16px;border:1px solid var(--line3);border-radius:7px;background:var(--panel2);color:var(--text);font-size:.79rem;font-weight:600;white-space:nowrap; }
.ov-button.primary { background:var(--cyan);color:#06222a;border-color:var(--cyan); }
.ov-button:hover { background:var(--ctl-h2); }.ov-button.primary:hover { background:#7ce9f6; }
.ov-button svg,.ov-icon svg { width:19px;height:19px; }
.ov-hero { position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;padding:28px 30px;margin-bottom:22px;border:1px solid #3b3151;border-radius:12px;background:radial-gradient(ellipse at 100% 0,#ff3d9a14,transparent 60%),linear-gradient(110deg,#10212d,#121725 60%,#1d1429); }
.ov-hero::after { content:'';position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(#b892e924 1px,transparent 1px),linear-gradient(90deg,#b892e924 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(90deg,transparent,#000); }
.ov-hero>* { z-index:1;position:relative; }
.ov-state { display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1.6px; }
.ov-state.is-off { color:var(--amber); }.ov-state.is-off .dot { background:var(--amber); }
.ov-server-name { margin:12px 0 17px;font-size:clamp(1.1rem,1.55vw,1.55rem);line-height:1.35;font-weight:600;letter-spacing:-.3px;overflow-wrap:anywhere; }
.ov-address { display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.75rem; }
.ov-address code { background:#05060b60;color:var(--text2);padding:7px 10px;font-size:.83rem;overflow-wrap:anywhere; }
.ov-uptime { align-self:center;min-width:150px;text-align:right;border-left:1px solid #3a354f;padding-left:32px; }
.ov-uptime span { display:block;font-size:.69rem;color:var(--muted); }
.ov-uptime strong { display:block;font-family:'Chakra Petch',sans-serif;font-weight:500;font-size:2.5rem;letter-spacing:-1px;line-height:1.5; }
.ov-metrics { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px; }
.ov-metric { padding:20px 22px;background:var(--panel);border:1px solid var(--line);border-radius:10px;min-width:0; }
.ov-metric-label { display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.77rem;font-weight:600;color:var(--muted); }
.ov-metric-label svg { width:17px;height:17px;color:var(--dim); }
.ov-metric-value { font-size:clamp(1.65rem,2.6vw,2.25rem);font-weight:500;letter-spacing:-1px;margin:12px 0 6px;font-variant-numeric:tabular-nums;line-height:1.2; }
.ov-metric-note { font-size:.7rem;color:var(--dim);margin-bottom:16px;min-height:20px; }
.ov-metric .track { background:#252b41; }
.ov-meter-label { display:flex;justify-content:space-between;gap:8px;font-size:.65rem;color:var(--muted);margin-top:8px; }
.ov-grid { display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:22px;align-items:start; }
.ov-section-head { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px; }
.ov-section-head h3 { margin:0;font-size:.96rem;font-weight:600;letter-spacing:-.2px; }
.ov-section-head span { font-size:.68rem;color:var(--dim); }
.ov-details { display:grid;grid-template-columns:1fr 1fr;gap:0 28px; }
.ov-detail { padding:16px 0;border-top:1px solid var(--line);min-width:0; }
.ov-detail dt { font-size:.71rem;color:var(--muted);margin-bottom:5px; }
.ov-detail dd { margin:0;font-size:.86rem;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums; }
.ov-details { margin:0; }
.ov-network { display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-top:1px solid var(--line);padding-top:18px;margin-top:5px;font-size:.74rem;color:var(--muted); }
.ov-network strong { color:var(--text2);font-weight:500; }
.ov-tools { padding:23px 22px 12px; }
.ov-tool { display:grid;grid-template-columns:38px 1fr 16px;align-items:center;gap:12px;width:100%;background:none;color:var(--text);border:0;border-top:1px solid var(--line);padding:17px 0;text-align:left; }
.ov-tool:hover { color:var(--cyan); }.ov-tool:hover .ov-icon { background:#183548; }
.ov-icon { display:grid;place-items:center;width:38px;height:38px;background:var(--ctl);border:1px solid var(--line);border-radius:8px;color:var(--muted); }
.ov-tool b { display:block;font-size:.8rem;font-weight:600;margin-bottom:3px; }.ov-tool small { display:block;color:var(--dim);font-size:.68rem; }.ov-arrow { color:var(--dim); }
.ov-foot { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px;font-size:.68rem;color:var(--dim); }
.ov-foot span:first-child::before { content:'';display:inline-block;width:5px;height:5px;background:var(--cyan);border-radius:50%;margin-right:8px;vertical-align:middle; }
.ov-loading { height:210px;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:grid;place-items:center;color:var(--muted); }
.ov-error { padding:24px;border:1px solid #773248;border-radius:12px;background:#26131f; }.ov-error h3 { margin:0 0 8px; }.ov-error p { color:var(--text3);font-size:.84rem; }
.nav-empty { padding:16px 12px;color:var(--muted);font-size:.8rem; }
@media(min-width:721px) and (max-width:1100px) { :root { --side:216px; }.views { padding:26px 24px; }.ov-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.ov-grid { grid-template-columns:1fr; }.ov-uptime { min-width:120px;padding-left:20px; } }
@media(max-width:720px) {
  .bar { min-height:64px;padding:12px 16px; }.bar-context>span { display:none; }.bar-r { gap:8px; }.fresh { font-size:.65rem; }
  .views { padding:24px 16px 40px; }.ov-heading { align-items:flex-start;flex-wrap:wrap;margin-bottom:20px; }.ov-heading h2 { font-size:2rem; }
  .ov-hero { padding:22px;grid-template-columns:1fr;gap:20px; }.ov-uptime { display:flex;align-items:baseline;gap:12px;text-align:left;border-left:0;border-top:1px solid #3a354f;padding:12px 0 0; }.ov-uptime strong { font-size:1.65rem; }
  .ov-metrics { grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }.ov-metric { padding:18px 16px; }.ov-metric-value { font-size:1.9rem; }
  .ov-grid { grid-template-columns:1fr;gap:16px; }.panel { padding:20px; }.ov-tools { padding-bottom:8px; }.ov-details { gap:0 16px; }.ov-foot { align-items:flex-start;flex-direction:column; }
  .nv { min-height:44px; }.side-logo { max-width:120px; }.side-top { padding-top:14px; }.side-sub { flex-basis:auto; }.ov-address .ov-button { min-height:38px; }
}
@media(max-width:370px) { .ov-metrics,.ov-details { grid-template-columns:1fr; }.bar-context h1 { font-size:.74rem; }.fresh { max-width:110px;overflow:hidden;text-overflow:ellipsis; } }

/* FATKIDz identity: cyan actions, magenta highlights, violet supporting accents. */
:root { --magenta:#ff3d9a; --purple:#a78bfa; }
.ov-eyebrow { color:var(--magenta); }
.ov-hero::before { content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--magenta)); }
.ov-metric:nth-child(2) .fill:not(.warn):not(.danger) { background:var(--magenta); }
.ov-metric:nth-child(3) .fill:not(.warn):not(.danger) { background:var(--purple); }
.ov-tool:hover .ov-arrow { color:var(--magenta); }
.loginwrap .card { border-top:2px solid var(--magenta); }
