/* Garsoore Console (admin.<domain>) — a working surface, not a shopfront: dense, calm, no marketing. */
body.console{background:var(--bg);margin:0;min-height:100vh}
body.console #app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.cs-boot{padding:60px;text-align:center;color:var(--muted)}

/* ---- sign-in gate */
.cs-gate{max-width:420px;margin:0 auto;padding:16vh 24px;text-align:center}
.cs-logo{font-size:44px;margin-bottom:10px}
.cs-gate h1{font-family:var(--fd);font-size:30px;margin:0 0 8px}
.cs-gate p{color:var(--muted);line-height:1.6;margin-bottom:20px}
.cs-foot{margin-top:28px;font-size:11px;color:var(--faint)}

/* ---- sidebar */
.cs-side{background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.cs-brand{font-family:var(--fd);font-size:19px;padding:18px 18px 14px;border-bottom:1px solid var(--line-2)}
.cs-side nav{padding:10px 8px;display:grid;gap:2px;flex:1;overflow:auto}
.cs-side nav a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;font-size:14px;font-weight:600;color:var(--fg);text-decoration:none}
.cs-side nav a i{font-style:normal;width:20px;text-align:center;opacity:.85}
.cs-side nav a:hover{background:var(--surface)}
.cs-side nav a.on{background:var(--pri);color:var(--pri-ink)}
.cs-side nav em{margin-left:auto;font-style:normal;background:var(--down);color:#fff;border-radius:9px;padding:0 6px;font-size:11px;font-weight:800}
.cs-side nav em:empty{display:none}
.cs-me{padding:12px 18px;border-top:1px solid var(--line-2);font-size:12px;display:grid;gap:2px}
.cs-me b{font-size:13px}.cs-me span{color:var(--muted)}
.cs-me a{color:var(--link);font-weight:700;text-decoration:none;margin-top:2px}
.cs-build{padding:8px 18px 14px;font-size:10px;color:var(--faint)}

/* ---- main */
.cs-main{min-width:0;padding:0 26px 60px}
.cs-top{display:flex;align-items:center;gap:12px;padding:20px 0 16px;position:sticky;top:0;background:var(--bg);z-index:5;border-bottom:1px solid var(--line-2);flex-wrap:wrap}
.cs-top h1{font-family:var(--fd);font-size:25px;margin:0;flex:1}
.cs-top #csTools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cs-main h2{font-family:var(--fd);font-size:18px;margin:26px 0 10px}
.cs-in{border:1px solid var(--line);background:var(--card);color:var(--fg);border-radius:10px;padding:8px 10px;font:inherit;font-size:13px}
.cs-in.sm{padding:5px 7px;font-size:12px;width:100%}
.btn.sm{padding:5px 9px;font-size:12px;margin-right:4px}

/* ---- kpis */
.cs-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;margin-top:16px}
.cs-kpi{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px}
.cs-kpi span{display:block;font-size:11.5px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.cs-kpi b{display:block;font-size:24px;margin:3px 0;font-variant-numeric:tabular-nums}
.cs-kpi em{font-style:normal;font-size:11.5px;color:var(--muted)}
.cs-kpi.good b{color:var(--up)}.cs-kpi.bad b{color:var(--down)}

/* ---- tables */
.cs-tbl{border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:13px;background:var(--line)}
.cs-th,.cs-tr{display:grid;grid-template-columns:var(--cols);gap:12px;padding:9px 12px;background:var(--card);align-items:center}
.cs-th{background:var(--surface);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}
.cs-tr{border-top:1px solid var(--line-2)}
.cs-tr>span{min-width:0;overflow-wrap:anywhere}
.cs-dim{font-style:normal;color:var(--muted);font-size:11.5px}
.cs-ok{color:var(--up);font-weight:700}.cs-warn{color:var(--gold);font-weight:700}.cs-bad{color:var(--down);font-weight:700}
.cs-empty{background:var(--card);padding:18px;text-align:center;color:var(--muted)}
.cs-note{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--muted);margin-top:10px}
.cs-note code{background:var(--surface);padding:1px 5px;border-radius:5px;font-size:12px;color:var(--fg)}
.cs-chips{display:flex;flex-wrap:wrap;gap:8px}
.cs-chip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12.5px;color:var(--muted)}
.cs-chip b{color:var(--fg);margin-left:3px}
.cs-funnel{display:grid;gap:6px;max-width:680px}
.cs-funnel div{display:grid;grid-template-columns:90px 1fr 46px 42px;align-items:center;gap:10px;font-size:13px}
.cs-funnel i{height:13px;border-radius:7px;background:var(--gold);display:block}
.cs-funnel em{font-style:normal;color:var(--muted);font-size:11.5px}

@media (max-width:900px){
  body.console #app{grid-template-columns:1fr}
  .cs-side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:0;border-bottom:1px solid var(--line)}
  .cs-side nav{flex-direction:row;display:flex;overflow-x:auto;flex:1 0 100%;order:9}
  .cs-me,.cs-build{border:0;padding:10px 14px}
  .cs-main{padding:0 14px 40px}
  .cs-th{display:none}
  .cs-tr{grid-template-columns:1fr}
}
