:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#fcfcfb;--ink:#111;--muted:#555;--grid:#d9d9d9;--accent:#1f4e79;--accent2:#7a1f4e;--ok:#2b6a3e;--warn:#8a4b0f;--bad:#7a1f1f;--panel:#fff;--panelBorder:#e6e6e6;--shadow:0 1px 0 #00000005}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f1115;--ink:#eaeaea;--muted:#a7a7a7;--grid:#2a2f3a;--accent:#8db7ff;--accent2:#ff8dc6;--ok:#5fd38a;--warn:#ffb86b;--bad:#ff6b6b;--panel:#141824;--panelBorder:#242b3a;--shadow:0 8px 18px #00000059}}:root[data-theme=light]{--bg:#fcfcfb;--ink:#111;--muted:#555;--grid:#d9d9d9;--accent:#1f4e79;--accent2:#7a1f4e;--ok:#2b6a3e;--warn:#8a4b0f;--bad:#7a1f1f;--panel:#fff;--panelBorder:#e6e6e6;--shadow:0 1px 0 #00000005}:root[data-theme=dark]{--bg:#0f1115;--ink:#eaeaea;--muted:#a7a7a7;--grid:#2a2f3a;--accent:#8db7ff;--accent2:#ff8dc6;--ok:#5fd38a;--warn:#ffb86b;--bad:#ff6b6b;--panel:#141824;--panelBorder:#242b3a;--shadow:0 8px 18px #00000059}html,body{height:100%}body{background:var(--bg);color:var(--ink);margin:0;font-family:ui-serif,STIX Two Text,Times New Roman,Times,serif}button,input,select{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji}#app{max-width:1100px;margin:28px auto;padding:0 18px 40px}h1{letter-spacing:.2px;margin:0 0 6px;font-size:22px;font-weight:600}.subtitle{color:color-mix(in oklab, var(--muted) 92%, var(--ink) 8%);margin-bottom:18px;font-size:14px;line-height:1.35}.grid{grid-template-columns:1.15fr .85fr;gap:16px;display:grid}@media (width<=980px){.grid{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--panelBorder);box-shadow:var(--shadow);border-radius:10px;padding:14px 14px 10px}.panel h2{letter-spacing:.4px;text-transform:uppercase;color:color-mix(in oklab, var(--ink) 92%, transparent);margin:0 0 10px;font-size:14px;font-weight:700}.controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.control{flex-direction:column;gap:6px;display:flex}label{color:var(--muted);font-size:12px}input[type=number],input[type=range]{width:100%}.kv{grid-template-columns:1fr 1fr;gap:8px 12px;margin-top:10px;font-size:13px;display:grid}.kv div{justify-content:space-between;gap:10px;display:flex}.kv .k{color:var(--muted)}.kv .v{font-variant-numeric:tabular-nums}button{color:var(--ink);border:1px solid color-mix(in oklab, var(--muted) 35%, transparent);cursor:pointer;background:0 0;border-radius:9px;padding:8px 10px;font-family:inherit}button:hover{border-color:color-mix(in oklab, var(--muted) 60%, transparent)}small.note{color:var(--muted);margin-top:10px;line-height:1.35;display:block}svg{width:100%;height:auto}.math{font-family:ui-serif,STIX Two Text,Times New Roman,Times,serif;font-style:italic}.legend{fill:var(--muted);font-size:12px}.axis text{fill:var(--muted);font-size:11px}.axis path,.axis line{stroke:#bcbcbc}.line-hoe{stroke:var(--accent);stroke-width:2px;fill:none}.line-che{stroke:var(--accent2);stroke-width:2px;fill:none}.line-cheb{stroke:var(--warn);stroke-width:1.8px;fill:none;opacity:.95}.line-norm{stroke:var(--ok);stroke-width:1.8px;fill:none;opacity:.95}.matrix-cell{shape-rendering:crispedges}.matrix-cell.on{fill:var(--accent)}.matrix-cell.off{fill:color-mix(in oklab, var(--panel) 78%, var(--ink) 6%)}.matrix-cell.diag{fill:#0000}.matrix-cell:hover{stroke:#333;stroke-width:1px}hr.sep{border:none;border-top:1px solid #ededed;margin:12px 0}
