/* Apple-inspired polished UI */
:root{
  --bg: #0f172a;
  --fg: #e5e7eb;
  --card:#0b1220;
  --muted:#94a3b8;
  --accent:#0A84FF;
  --border:#21314b;
  --shadow: 0 10px 30px rgba(2,6,23,0.35);
}
@media (prefers-color-scheme: light){
  :root{ --bg:#f8fafc; --fg:#0f172a; --card:#ffffff; --muted:#475569; --accent:#0A84FF; --border:#e2e8f0; --shadow: 0 8px 24px rgba(2,6,23,0.06); }
}
html,body{margin:0;height:100%;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--fg)}
a{color:var(--accent);text-decoration:none}
.container{max-width:1220px;margin:0 auto;padding:20px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media (max-width:900px){ .grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:600px){ .grid{grid-template-columns:1fr;} }
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:var(--shadow)}
.row{display:flex;justify-content:space-between;align-items:center;margin:8px 0}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;background:#0b6; color:#fff; font-size:12px;margin-inline-end:6px}
.badge.warn{background:#d97706}
.badge.gray{background:#64748b}
.small{color:var(--muted);font-size:12px}
.btn{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:12px;background:var(--accent);color:#fff;border:0;box-shadow:var(--shadow)}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.kv{display:flex;gap:8px;flex-wrap:wrap}
.kv .chip{border:1px dashed var(--border);padding:6px 10px;border-radius:10px;font-size:12px}
hr{border:0;border-top:1px solid var(--border);margin:16px 0}
header .nav a{padding:6px 10px;border-radius:8px}
header .nav a:hover{background:rgba(148,163,184,0.1)}
.chart-card canvas{width:100%;height:320px}
.icon{width:16px;height:16px;display:inline-block;vertical-align:middle}
