:root{--bg:#f5f6f8;--surface:#fff;--text:#1a1d21;--muted:#5f6873;--border:#d9dde3;--accent:#1f6feb;--accent-text:#fff;--danger:#c62828;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#12151a;--surface:#1b1f26;--text:#e6e8eb;--muted:#9aa4b0;--border:#2d333c;--accent:#4c8dff;--accent-text:#0b0d10;--danger:#ff6b6b}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1{margin:0 0 1rem;font-size:1.4rem}.center-note{text-align:center;color:var(--muted);padding:2rem 1rem}.login{place-items:center;min-height:100vh;padding:1rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:1rem;width:100%;max-width:360px;padding:1.5rem;display:flex}.card h1{text-align:center;margin:0}label{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}input{font:inherit;color:var(--text);border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:.6rem .7rem}input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button[type=submit]{font:inherit;cursor:pointer;background:var(--accent);color:var(--accent-text);border:0;border-radius:6px;padding:.65rem;font-weight:600}button[disabled]{opacity:.6;cursor:not-allowed}.error{color:var(--danger);margin:0;font-size:.9rem}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex}.topbar nav{align-items:center;gap:1rem;display:flex}.topbar a,button.link{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem 0;text-decoration:none}.topbar a.active{color:var(--accent);font-weight:600}.content{max-width:1100px;margin:0 auto;padding:1rem}:root{--pos:#1b873f;--neg:#c62828;--warn-bg:#fff4d6;--warn-text:#6b4e00}@media (prefers-color-scheme:dark){:root{--pos:#4cd17a;--neg:#ff6b6b;--warn-bg:#3a2f10;--warn-text:#ffd97a}}.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--muted)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}select{font:inherit;color:var(--text);border:1px solid var(--border);background:var(--bg);border-radius:6px;padding:.5rem .6rem}.toolbar{flex-wrap:wrap;align-items:end;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.warn{background:var(--warn-bg);color:var(--warn-text);border-radius:6px;padding:.5rem .75rem}.status-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.status-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1rem}.status-card h2{margin:0 0 .5rem;font-size:1rem}.status-card ul{margin:0;padding-left:1.1rem}.status-card .big{margin:0;font-size:1.3rem;font-weight:600}.status-card.bad{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--surface))}.status-card.bad h2,.badge-bad{color:var(--danger);font-weight:700}.badge-bad{font-size:.8rem}.market-state{font-weight:600}.market-state.open{color:var(--pos)}.market-state.closed{color:var(--muted)}.table-wrap{overflow-x:auto}table.market{border-collapse:collapse;background:var(--surface);width:100%}table.market th,table.market td{border-bottom:1px solid var(--border);text-align:left;padding:.45rem .75rem}table.market .num{text-align:right;font-variant-numeric:tabular-nums}table.market th button.link{color:var(--text);font-weight:600}table.market tr.clickable{cursor:pointer}table.market tr.clickable:hover{background:var(--bg)}table.market td a{color:var(--accent);font-weight:600;text-decoration:none}.seg{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.seg button{font:inherit;background:var(--surface);color:var(--text);cursor:pointer;border:0;padding:.45rem .8rem}.seg button.on{background:var(--accent);color:var(--accent-text);font-weight:600}label.check{color:var(--text);flex-direction:row;align-items:center;gap:.4rem}label.check input{padding:0}fieldset.indicators{border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:.5rem 1.25rem;margin:0 0 1rem;display:flex}.indicator{align-items:center;gap:.5rem;display:flex}.indicator .param{flex-direction:row;align-items:center;gap:.3rem;font-size:.8rem}.indicator .param input{width:4.5rem;padding:.25rem .4rem}.chart{width:100%;height:480px;min-height:480px}
