:root{
  --bg:#f5f7fa;--panel:#fff;--panel-subtle:#fafbfc;--graphite:#111827;
  --muted:#6b7280;--border:#e5e7eb;--accent:#2563eb;--shadow:0 6px 24px rgba(17,24,39,.06);
  --up:#10b981;--down:#ef4444
}
:root[data-theme='dark']{
  --bg:#0b1220;--panel:#111827;--panel-subtle:#0f172a;--graphite:#e5e7eb;
  --muted:#94a3b8;--border:#1f2937;--accent:#3b82f6
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--graphite)}
.container{max-width:1200px;margin:0 auto;padding:24px}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(245,247,250,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
:root[data-theme='dark'] .site-header{background:rgba(17,24,39,.85)}
.header-inner{display:flex;justify-content:space-between;align-items:center}
.brand{display:flex;gap:10px;align-items:center}
.brand-name{font-weight:800}
.beta-badge{font-size:10px;background:#111827;color:#fff;border-radius:6px;padding:3px 6px}
.nav{display:flex;gap:16px}
.nav-link{color:var(--muted);text-decoration:none;padding:10px 12px;border-radius:10px}
.nav-link:hover{color:var(--graphite);background:var(--panel)}
.header-actions{display:flex;gap:8px;align-items:center}
.btn{border:1px solid var(--border);background:var(--panel);padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:600}
.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);margin:16px 0}
.card-header{padding:16px 18px;border-bottom:1px solid var(--border)}
.card-title{margin:0}
.card-body{padding:16px 18px}
.live-indicator{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:12px;background:var(--panel-subtle);border:1px solid var(--border)}
.live-indicator .dot{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:blink 1.2s infinite}
@keyframes blink{0%{opacity:.5}50%{opacity:1}100%{opacity:.5}}
.metrics{display:grid !important;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:8px 0 16px 0}
@media (max-width:1024px){.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.metrics>.metric{display:flex !important;flex-direction:column;justify-content:flex-start;align-items:flex-start;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:14px;min-height:84px}
.metric .label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.metric .value{font-size:20px;font-weight:800;margin-top:6px}
.metric .delta{font-size:12px;margin-top:4px}
.metric .delta.up{color:var(--up)}
.metric .delta.down{color:var(--down)}
.input,.textarea,.select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--graphite)}
.textarea{min-height:120px;resize:vertical}
.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.helper{font-size:12px;color:var(--muted)}
.actions{display:flex;gap:10px;align-items:center;margin-top:14px}
.button{padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:var(--accent);color:#fff;font-weight:700;cursor:pointer}
.button.secondary{background:var(--panel);color:var(--graphite)}
.table{width:100%;border-collapse:separate;border-spacing:0}
.table th,.table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left}
.table thead th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.row-flash-up{animation:flashUp 1.2s ease}
.row-flash-down{animation:flashDown 1.2s ease}
@keyframes flashUp{0%{background:rgba(16,185,129,.28)}100%{background:transparent}}
@keyframes flashDown{0%{background:rgba(239,68,68,.28)}100%{background:transparent}}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:var(--panel-subtle)}
.badge.upcoming{border-color:#f59e0b;color:#b45309}
.badge.live{border-color:#10b981;color:#047857}
.buy-now{font-weight:800}
.map-wrap{height:280px;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.kv{display:grid;grid-template-columns:180px 1fr;gap:8px;align-items:center}
