:root{--bg:#0b0f14;--panel:#121821;--panel2:#18212d;--border:#243041;--text:#e6edf7;--muted:#8b9bb0;--green:#22c55e;--red:#ef4444;--amber:#f59e0b;--blue:#38bdf8;--accent:#10b981;--danger:#f43f5e;font-family:Segoe UI,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);min-height:100%}a{color:var(--blue);text-decoration:none}.app{max-width:1400px;margin:0 auto;padding:.85rem 1.1rem 2rem}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:flex-start;justify-content:space-between;margin:0 -1.1rem 1rem;padding:.65rem 1.1rem .75rem;background:var(--bg);border-bottom:1px solid var(--border)}.topbar h1{margin:0;font-size:1.2rem;letter-spacing:.02em;font-weight:700}.meta{font-size:.85rem;margin:.2rem 0 0}.meta,.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}.health-dock{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end;max-width:720px}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.28rem .55rem;min-height:32px;border-radius:999px;font-size:.75rem;border:1px solid var(--border);background:var(--panel);color:var(--muted);font-weight:600;line-height:1.2}.badge.on{color:var(--green);border-color:#166534}.badge.warn{border-color:#92400e;background:#422006}.badge.off,.badge.warn{color:var(--amber)}.badge.err{color:var(--danger);border-color:#7f1d1d}button.badge.clickable{cursor:pointer;font-family:inherit}button.badge.clickable:hover{border-color:var(--blue)}button.badge.clickable:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.banner-demo,.banner-err{margin:0 0 1rem;padding:.65rem .9rem;border-radius:8px;font-size:.9rem;font-weight:600}.banner-demo{border:1px solid #92400e;background:#422006;color:#fbbf24}.banner-err{border:1px solid #7f1d1d;background:#3f1212;color:#fecaca}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem;margin-bottom:1rem}.panel-wide{width:100%}.panel h2{margin:0 0 .55rem;font-size:.95rem;letter-spacing:.03em;color:var(--muted);font-weight:700}.radar-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}.radar-grid .panel{margin-bottom:0}@media (max-width:960px){.radar-grid{grid-template-columns:1fr}.health-dock{max-width:100%;justify-content:flex-start}}.table{width:100%;border-collapse:collapse;font-size:.88rem}.table td,.table th{text-align:left;padding:.5rem .4rem;border-bottom:1px solid var(--border);vertical-align:top}.table th{color:var(--muted);font-weight:600;font-size:.75rem;letter-spacing:.03em}.table .sym{font-weight:700}.table-wide td:last-child{color:var(--text)}.row-demo td{color:#fbbf24}.chg-up{color:var(--green);font-weight:700}.chg-down{color:var(--danger);font-weight:700}.chg-flat{color:var(--muted)}.journal-scroll{max-height:280px;overflow-y:auto;overflow-x:auto}.journal-scroll .table thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--panel);z-index:1}