:root{color-scheme:dark;--bg:#081018;--panel:#101b27;--panel-2:#142231;--muted:#8fa1b5;--accent:#68f0b1;--line:#243448}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 80% 0,#173044 0,transparent 35%),var(--bg);color:#f4f8fb;font:15px/1.5 system-ui,sans-serif}
.container{max-width:1280px;margin:auto;padding:42px 24px 72px}
header{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}
.header-actions{display:flex;align-items:center;gap:12px}
h1{font-size:clamp(32px,5vw,58px);line-height:1;margin:0}.eyebrow{color:var(--accent);font-weight:700;letter-spacing:.18em}
.sync{padding:10px 14px;border:1px solid var(--line);border-radius:999px;color:var(--muted)}.sync.success{border-color:#287a58;color:var(--accent)}
.filter-bar{display:flex;justify-content:space-between;align-items:end;gap:18px;padding:16px;background:rgba(16,27,39,.84);border:1px solid var(--line);border-radius:16px}
.presets{display:flex;gap:8px}.presets a,.date-filter button{border:1px solid var(--line);border-radius:9px;padding:9px 13px;color:#dce7f2;text-decoration:none;background:#142231}.presets a:hover,.date-filter button:hover{border-color:var(--accent)}
.date-filter{display:flex;align-items:end;gap:10px}.date-filter label{display:grid;gap:4px;color:var(--muted);font-size:12px}.date-filter input{border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#09131e;color:#fff;color-scheme:dark}.date-filter button{cursor:pointer;background:var(--accent);color:#07130e;font-weight:800}
.tabs{display:flex;gap:5px;overflow-x:auto;margin:20px 0 16px;padding:5px;background:#0d1722;border:1px solid var(--line);border-radius:13px}.tab{white-space:nowrap;border:0;border-radius:9px;background:transparent;color:var(--muted);padding:10px 14px;font:inherit;cursor:pointer}.tab:hover{color:#fff}.tab.active{background:var(--panel-2);color:var(--accent);box-shadow:0 0 0 1px #2c4258}
.tab-panel{display:none}.tab-panel.active{display:block}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cards article,.panel,.empty{background:color-mix(in srgb,var(--panel) 94%,transparent);border:1px solid var(--line);border-radius:18px;padding:22px}
.cards span,.activity span,.muted{display:block;color:var(--muted)}.cards strong{display:block;font-size:30px;margin-top:6px}.cards small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.panel{min-width:0}.panel.wide{grid-column:span 2}.panel-title{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.panel-title h2{font-size:18px;margin:0}.panel-title span{color:var(--muted);font-size:12px}.chart{height:290px}.chart.tall{height:360px}
.activity{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid var(--line)}.activity:first-child{border-top:0}
code{color:var(--accent)}
.link-button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:8px;text-decoration:none}
.totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:18px}.total-card{display:grid;gap:4px;padding:15px;border-radius:12px;background:#0b1520;border:1px solid var(--line)}.total-card strong{text-transform:capitalize;color:var(--accent)}.total-card span{color:var(--muted)}
.table-wrap{overflow:auto;margin-top:16px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line)}th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}td{color:#cbd7e3}.pill{display:inline-block;padding:4px 8px;border-radius:999px;background:#1a2b3b;color:#9fc4e8;font-size:12px}
.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:18px}.metric-card{display:grid;gap:4px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#0b1520;text-decoration:none;color:#fff}.metric-card:hover{border-color:var(--accent);transform:translateY(-1px)}.metric-card strong{text-transform:capitalize}.availability{color:var(--accent);font-size:12px}.error-count{color:#ff718b;font-size:12px}.hint{color:var(--muted);margin:18px 0 0;font-size:13px}
.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}
.login-card{width:min(100%,420px);background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:32px}
.login-card h1{font-size:36px;margin-bottom:12px}
.login-form{display:grid;gap:18px;margin-top:28px}.login-form label{display:grid;gap:7px;color:var(--muted)}
.login-form input{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#0a131e;color:#fff;font:inherit}
.login-form input:focus{outline:2px solid var(--accent);outline-offset:1px}
.login-form button{border:0;border-radius:10px;padding:13px;background:var(--accent);color:#07130e;font-weight:800;cursor:pointer}
.form-error{margin-top:18px;padding:11px 13px;border:1px solid #8c3948;border-radius:10px;background:#351822;color:#ffb5c1}
.settings-container{max-width:1050px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-card{margin:0}.settings-card .panel-title>div span{display:block;margin-top:3px}.status-badge{padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px}.status-badge.connected{color:var(--accent);border-color:#287a58}.settings-form{display:grid;gap:14px;margin-top:22px}.settings-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.settings-form input,.token-reveal textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#09131e;color:#fff;font:inherit}.settings-form button{border:0;border-radius:9px;padding:12px;background:var(--accent);color:#07130e;font-weight:800;cursor:pointer}.mfa-form{border-top:1px solid var(--line);padding-top:20px}.notice{margin-bottom:16px;padding:13px 16px;border-radius:11px;border:1px solid #287a58;background:#10291f;color:#8dffc7}.notice.error{border-color:#8c3948;background:#351822;color:#ffb5c1}.copy-row{overflow:auto;padding:11px;border-radius:9px;background:#09131e;border:1px solid var(--line)}.token-reveal{display:grid;gap:9px;margin-top:18px;padding:14px;border:1px solid #b98531;border-radius:11px;background:#30230e;color:#ffd793}.token-reveal textarea{resize:none}.danger-form button{background:#ff718b;color:#260710}.endpoint-list{display:grid;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.endpoint-list h3{margin:0}.endpoint-list span{color:var(--muted)}.endpoint-list a{color:var(--accent)}
.setup-steps{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.setup-steps h3{margin:0}.setup-steps ol{padding-left:20px;color:#cbd7e3}.setup-steps li{margin:7px 0}.setup-steps code{overflow-wrap:anywhere}
@media(max-width:760px){header{align-items:start;flex-direction:column}.header-actions{width:100%;justify-content:space-between}.filter-bar,.date-filter{align-items:stretch;flex-direction:column}.presets{overflow:auto}.cards{grid-template-columns:repeat(2,1fr)}.chart-grid{grid-template-columns:1fr}.panel.wide{grid-column:auto}.chart{height:260px}}
@media(max-width:800px){.settings-grid{grid-template-columns:1fr}}
@media(max-width:460px){.cards{grid-template-columns:1fr}.container{padding:28px 14px}.sync{font-size:12px}.date-filter{display:grid;grid-template-columns:1fr 1fr}.date-filter button{grid-column:span 2}}
