:root { color-scheme: dark; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background:#080b10; color:#eef2f7; }
* { box-sizing:border-box; }
body { margin:0; background:#080b10; color:#eef2f7; }
button,input { font:inherit; }
button,.link-button,.back { border:1px solid #323a46; background:#151a22; color:#eef2f7; border-radius:8px; padding:.58rem .78rem; text-decoration:none; cursor:pointer; }
button:hover,.link-button:hover,.back:hover { background:#1d2430; }
button:disabled { opacity:.55; cursor:not-allowed; }
.primary { background:#e8eef7; color:#0a0d12; border-color:#e8eef7; font-weight:700; }
.page { width:min(1050px, calc(100% - 32px)); margin:0 auto; padding:28px 0 60px; }
.masthead { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; margin-bottom:28px; }
.mast-actions { display:flex; gap:8px; }
h1,h2 { margin:.15rem 0 .35rem; }
h1 { font-size:clamp(1.65rem, 4vw, 2.25rem); }
h2 { font-size:1.12rem; }
.eyebrow { font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:#7f8b99; }
.muted { color:#929dac; }
.mono { font-family:ui-monospace, SFMono-Regular, Menlo, monospace; }
.login-card { max-width:420px; border:1px solid #252c36; border-radius:12px; padding:22px; background:#0e131a; }
form { display:grid; gap:14px; }
label { display:grid; gap:6px; color:#b7c0cc; }
input[type=email],input[type=password] { width:100%; background:#080b10; border:1px solid #343d49; border-radius:8px; padding:.72rem .8rem; color:#fff; }
.toolbar { display:flex; justify-content:flex-end; margin-bottom:12px; font-size:.88rem; }
.toolbar label { display:flex; align-items:center; gap:8px; }
.section { border-top:1px solid #242b34; padding:22px 0; }
.section-head { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:12px; }
.section-state { font-size:.78rem; color:#929dac; }
.section-state.ok { color:#8fbf9f; }
.section-state.error,.error { color:#f0a0a0; }
.signal-list { display:grid; gap:10px; }
.signal-card { border:1px solid #252c36; border-radius:10px; background:#0e131a; padding:16px; }
.signal-head { display:flex; justify-content:space-between; gap:10px; }
.signal-symbol { font-size:1.2rem; }
.badge { border:1px solid #3a4350; border-radius:999px; padding:.22rem .55rem; font-size:.75rem; }
.score { margin:.5rem 0 1rem; color:#b6c1cf; font-size:.86rem; }
.signal-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; }
.signal-grid div { min-width:0; }
.signal-grid dt { font-size:.72rem; color:#7f8b99; margin-bottom:3px; }
.signal-grid dd { margin:0; overflow-wrap:anywhere; }
.reports-list { border:1px solid #252c36; border-radius:10px; overflow:hidden; }
.report-row { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:13px 14px; background:#0e131a; border-bottom:1px solid #252c36; }
.report-row:last-child { border-bottom:0; }
.report-meta { display:grid; gap:4px; }
.report-actions { display:flex; gap:8px; flex-shrink:0; }
.link-button { display:inline-block; font-size:.82rem; }
.empty { color:#929dac; padding:12px 0; }
.report-page .masthead { align-items:center; }
.back { display:inline-block; margin-bottom:10px; }
.report-body { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; padding:18px; min-height:180px; border:1px solid #252c36; border-radius:10px; background:#0e131a; color:#e6ebf2; line-height:1.55; }
@media (max-width:760px) { .page{width:min(100% - 20px,1050px);padding-top:18px}.masthead{display:grid}.mast-actions{width:100%}.mast-actions>*{flex:1}.signal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-row{align-items:flex-start;display:grid}.report-actions{flex-wrap:wrap}.section-head{display:grid}.toolbar{justify-content:flex-start} }
