:root{--paper:#f1f6f7;--panel:#fff;--panel-2:#f7fbfb;--ink:#0d2a32;--ink-2:#4c6e76;--ink-3:#84a2a9;--rule:#c6dbdf;--rule-2:#e0edef;--shoal:#cfe7ec;--deep:#a3cfd8;--pos:#12735a;--neg:#c1006a;--warn:#a76200;--accent:#1d6e8f;--shadow:0 1px 2px #0d2a320f, 0 8px 24px #0d2a320f;--r:4px;--sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#071519;--panel:#0d2027;--panel-2:#102830;--ink:#deebed;--ink-2:#93b3ba;--ink-3:#5f8189;--rule:#1d3a43;--rule-2:#152d35;--shoal:#102e37;--deep:#17434f;--pos:#3ccf9c;--neg:#ff52a0;--warn:#e7a44a;--accent:#58b6d8;--shadow:0 1px 2px #0000004d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px}button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--rule);background:var(--panel);border-radius:var(--r);padding:6px 12px}button:hover{border-color:var(--deep)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;padding:10px 22px;font-weight:600}button.link{color:var(--accent);background:0 0;border:0;padding:0}.splash,.empty{color:var(--ink-2);text-align:center;padding:48px 24px}.gate{background:radial-gradient(ellipse at 20% 0%, var(--shoal), transparent 55%), radial-gradient(ellipse at 90% 100%, var(--rule-2), transparent 50%), var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.gate-card{background:var(--panel);border:1px solid var(--rule-2);max-width:460px;box-shadow:var(--shadow);border-radius:8px;padding:40px}.gate h1{letter-spacing:-.01em;margin:4px 0 12px;font-size:30px}.eyebrow{font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0}.lede{color:var(--ink-2);margin:0 0 24px;line-height:1.55}.fine{color:var(--ink-3);margin:16px 0 0;font-size:12px}.notice{background:color-mix(in srgb, var(--neg) 9%, var(--panel));border:1px solid color-mix(in srgb, var(--neg) 30%, var(--panel));color:var(--ink);border-radius:var(--r);margin:0 0 16px;padding:10px 12px}.topbar{background:var(--panel);border-bottom:1px solid var(--rule-2);z-index:2;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex;position:sticky;top:0}.brand{font-size:16px;font-weight:700}.brand .ws{color:var(--ink-2);border-left:1px solid var(--rule);margin-left:10px;padding-left:10px;font-weight:500}.who{color:var(--ink-2);align-items:center;gap:16px;font-size:13px;display:flex}.layout{grid-template-columns:300px minmax(0,1fr);gap:24px;max-width:1500px;margin:0 auto;padding:24px;display:grid}@media (width<=960px){.layout{grid-template-columns:1fr}}.controls{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;align-self:start;max-height:calc(100vh - 96px);padding:18px;position:sticky;top:72px;overflow:auto}@media (width<=960px){.controls{max-height:none;position:static}}.controls h2{font-size:12px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2);margin:0 0 14px}.seg{gap:0;margin:4px 0 6px;display:flex}.seg button{border-radius:0;flex:1;padding:7px 4px;font-size:12.5px}.seg button:first-child{border-radius:var(--r) 0 0 var(--r)}.seg button:last-child{border-radius:0 var(--r) var(--r) 0}.seg button+button{margin-left:-1px}.seg button.on{background:var(--ink);border-color:var(--ink);color:var(--panel);position:relative}.slider{border-top:1px solid var(--rule-2);padding:12px 0 10px;display:block}.slider .row{justify-content:space-between;font-size:13px;display:flex}.slider b{font-family:var(--mono);font-weight:600}.slider input{width:100%;accent-color:var(--accent);margin:8px 0 4px}.slider.off{opacity:.45}.hint{color:var(--ink-3);margin:0 0 6px;font-size:11.5px;line-height:1.4;display:block}.reset{width:100%;color:var(--ink-2);margin-top:14px;font-size:12.5px}.board{min-width:0}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}@media (width<=700px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.kpi{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.kpi span{color:var(--ink-2);font-size:12px}.kpi b{font:600 24px/1.1 var(--mono)}.kpi b small{color:var(--ink-3);font-size:13px;font-weight:500}.kpi>small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chips button{color:var(--ink-2);border-radius:999px;padding:5px 12px;font-size:12.5px}.chips button.on{background:var(--shoal);border-color:var(--deep);color:var(--ink)}.status{font:500 11.5px var(--mono);color:var(--ink-3);margin-left:auto}.status.busy{color:var(--accent)}.tablewrap{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th,td{text-align:right;white-space:nowrap;border-bottom:1px solid var(--rule-2);padding:9px 12px}td{font-family:var(--mono);font-size:13px}thead th{background:var(--panel-2);color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;font-size:11.5px;font-weight:600;position:sticky;top:0}.l{text-align:left}tr.group th{background:var(--panel-2);color:var(--ink);text-transform:none;letter-spacing:0;padding-top:14px;font-size:13px;font-weight:700}tr.group th span{color:var(--ink-2);margin-left:12px;font-size:12px;font-weight:400}tbody tr:not(.group):hover td{background:var(--panel-2)}tr.best td{background:color-mix(in srgb, var(--pos) 7%, var(--panel))}.pname{font-family:var(--sans);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.pmeta{font-family:var(--sans);color:var(--ink-3);margin-top:2px;font-size:12px}.tag{font:500 10.5px var(--mono);color:var(--accent);border:1px solid var(--rule);border-radius:3px;padding:1px 5px;font-style:normal}.tag.warn{color:var(--warn)}.pos{color:var(--pos)}.neg{color:var(--neg)}.foot{color:var(--ink-3);margin:12px 2px 32px;font-size:12px}tr.pick{cursor:pointer}tr.pick:focus-visible td{outline:2px solid var(--accent);outline-offset:-2px}tr.open td{background:var(--shoal)}.scrim{z-index:5;background:#07151947;position:fixed;inset:0}.sheet{background:var(--panel);border-left:1px solid var(--rule);z-index:6;width:min(640px,100vw);padding:28px 28px 48px;position:fixed;top:0;bottom:0;right:0;overflow-y:auto;box-shadow:-12px 0 40px #0715192e}.close{padding:4px 10px;font-size:22px;line-height:1;position:absolute;top:14px;right:16px}.sheet-head h2{margin:4px 0;font-size:22px}.sheet-head .addr{color:var(--ink-2);margin:0 0 6px}.sheet-head .facts{color:var(--ink-3);margin:0 0 8px;font-size:12.5px}.sheet-head .tags{gap:6px;margin:0 0 10px;display:flex}.sheet-head .note{color:var(--ink-2);background:var(--panel-2);border-left:3px solid var(--deep);border-radius:0 var(--r) var(--r) 0;margin:0 0 18px;padding:10px 12px;font-size:13px;line-height:1.5}.heads{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 20px;display:grid}.heads div{background:var(--panel-2);border:1px solid var(--rule-2);border-radius:6px;padding:10px 12px}.heads span{color:var(--ink-2);font-size:11.5px;display:block}.heads b{font:600 18px/1.3 var(--mono)}.block{border-top:1px solid var(--rule-2);padding:16px 0 6px}.block h3{font:600 11.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:0 0 10px}.line{align-items:baseline;gap:10px;padding:4px 0;font-size:13px;display:flex}.line span{flex:1}.line em{color:var(--ink-3);font-size:11.5px;font-style:normal;font-family:var(--mono)}.line b{font:500 13px var(--mono);text-align:right;min-width:96px}.line.strong{border-top:1px dashed var(--rule-2);margin-top:2px;padding-top:7px}.line.strong span,.line.strong b{font-weight:700}.check{padding:4px 0;font-size:13px}.lede-sm{color:var(--ink-2);margin:0 0 10px;font-size:13px;line-height:1.55}.lede-sm b{font-family:var(--mono);color:var(--ink)}.acts{border-left:2px solid var(--rule-2);margin-top:8px;padding-left:10px}table.modes{width:100%;margin:0 0 10px}table.modes th,table.modes td{padding:6px 8px}button.add{border-color:var(--accent);color:var(--accent);border-radius:999px;padding:5px 14px;font-size:12.5px;font-weight:600}.sheet-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 18px;display:flex}.sheet-actions button{font-size:12.5px}.sheet-actions .source{color:var(--ink-3);margin-left:auto;font-size:11.5px}.formtitle{margin:4px 0 18px;font-size:22px}.pform fieldset{border:0;border-top:1px solid var(--rule-2);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0;padding:14px 0 6px;display:grid}.pform legend{font:600 11.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);padding:0 0 8px}.field{color:var(--ink-2);flex-direction:column;gap:4px;font-size:12.5px;display:flex}.field.wide{grid-column:1/-1}.field i{color:var(--neg);font-style:normal}.field small{color:var(--ink-3);font-size:11px}.inputwrap{align-items:center;gap:6px;display:flex}.inputwrap em{font-style:normal;font-family:var(--mono);color:var(--ink-3);white-space:nowrap;font-size:11px}.field input,.field select,.field textarea{font:13px var(--sans);color:var(--ink);background:var(--panel-2);border:1px solid var(--rule);border-radius:var(--r);width:100%;padding:7px 9px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.check-field{color:var(--ink);flex-direction:row;align-items:center;gap:8px}.check-field input{width:auto}.actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.scenario{background:var(--panel-2);border:1px solid var(--rule-2);border-radius:6px;margin:0 0 14px;padding:10px 10px 8px}.scenario-pick{color:var(--ink-2);flex-direction:column;gap:4px;font-size:12px;display:flex}.scenario-pick select{font:600 13px var(--sans);color:var(--ink);background:var(--panel);border:1px solid var(--rule);border-radius:var(--r);padding:6px 8px}.dirty{color:var(--warn);margin:6px 0 0;font-size:11.5px}.scenario-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.scenario-actions button{padding:4px 9px;font-size:11.5px}.scenario-actions button:disabled{opacity:.45;cursor:default}.markets,.soundings{margin:8px 0 22px}.shead h2{margin:0 0 4px;font-size:16px}.shead p{color:var(--ink-2);max-width:80ch;margin:0 0 12px;font-size:13px;line-height:1.5}.mcards{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}@media (width<=1300px){.mcards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=700px){.mcards{grid-template-columns:minmax(0,1fr)}}.mcard{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;padding:14px 16px}.mcard h3{margin:0;font-size:15px}.msub{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;margin:2px 0 10px;font-size:11px}.mcard dl{grid-template-columns:auto 1fr;gap:4px 10px;margin:0;font-size:12.5px;display:grid}.mcard dt{color:var(--ink-2)}.mcard dd{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums;margin:0}.mnone{color:var(--ink-3);margin:0;font-size:12.5px}.compare{margin-top:12px}.compare summary{cursor:pointer;color:var(--accent);padding:6px 0 10px;font-size:13px;font-weight:600}.compare td,.compare th.feature{white-space:normal;vertical-align:top;font-family:var(--sans);min-width:120px;font-size:12.5px;line-height:1.4}.compare td.cell{color:var(--ink-2)}.compare th.feature{color:var(--ink);min-width:140px;font-weight:600}.compare td.verdict{min-width:170px;font-weight:600}.compare td.verdict.win{color:var(--pos)}.compare td.verdict.lose{color:var(--neg)}.compare td.verdict.tie{color:var(--ink-3)}.sound-wrap{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px 8px 0 0;overflow-x:auto}.sound-wrap svg{display:block}.soundings .water{fill:var(--shoal);opacity:.55}.soundings .grid{stroke:var(--rule-2)}.soundings .zero{stroke:var(--rule)}.soundings .tick,.soundings .val,.soundings .spread{font-family:var(--mono);fill:var(--ink-3);font-size:10px}.soundings .val{fill:var(--ink);font-size:11px;font-weight:600}.soundings .waterline{stroke:var(--neg);stroke-width:1.5px;stroke-dasharray:7 4}.soundings .wl-label{letter-spacing:.06em;fill:var(--neg);font-size:10.5px;font-weight:600}.soundings .name{fill:var(--ink-2);font-size:10px}.bar{cursor:pointer;outline:none}.bar .hit{fill:#0000}.bar:hover .hit,.bar:focus-visible .hit{fill:var(--rule-2);opacity:.6}.bar.over .fill,.sw.over{fill:var(--pos);background:var(--pos)}.bar.under .fill,.sw.under{fill:var(--neg);background:var(--neg)}.bar.under .fill{opacity:.82}.bar.over .spread{fill:var(--pos)}.bar.under .spread{fill:var(--neg)}.bar.open .fill{stroke:var(--ink);stroke-width:2px}.bar.open .name{fill:var(--ink);font-weight:700}.sound-legend{background:var(--panel);border:1px solid var(--rule-2);color:var(--ink-2);border-top:0;border-radius:0 0 8px 8px;flex-wrap:wrap;gap:20px;padding:10px 16px;font-size:12px;display:flex}.sound-legend span{align-items:center;gap:7px;display:flex}.sw{border-radius:1px;width:13px;height:11px;display:inline-block}.sw.water{background:var(--shoal);border:1px solid var(--deep)}h2.cands{margin:8px 0 10px;font-size:16px}.dd h3{align-items:baseline;gap:10px;display:flex}.ddcount{font:500 12px var(--mono);color:var(--ink-2)}.ddlist{margin:8px 0 0;padding:0;list-style:none}.ddlist li{border-bottom:1px solid var(--rule-2)}.ddlist li:last-child{border-bottom:0}.ddlist label{cursor:pointer;align-items:flex-start;gap:10px;padding:9px 0;font-size:13px;display:flex}.ddlist input{width:15px;height:15px;accent-color:var(--neg);cursor:pointer;flex:none;margin-top:2px}.ddlist .ddtitle{color:var(--ink)}.ddlist li.done .ddtitle{color:var(--ink-3);text-decoration:line-through}.ddlist .why,.ddlist .by{color:var(--ink-3);margin-top:2px;font-size:11.5px;line-height:1.45;display:block}.ddlist .by{color:var(--pos)}.tag.dd{color:var(--ink-2)}.tag.dd.complete{color:var(--pos);border-color:var(--pos)}.screened{margin:26px 0 18px}.screened .shead h2{align-items:baseline;gap:10px;display:flex}.screened>button.add{margin-bottom:12px}.soform{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;margin-bottom:14px;padding:14px 16px}.rej{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.rejitem{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;flex-direction:column;padding:14px 16px;display:flex}.rejitem h4{justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 2px;font-size:13.5px;display:flex}.rejitem h4 .p{font:500 12.5px var(--mono);color:var(--ink-2)}.rejitem .meta{color:var(--ink-3);margin-bottom:7px;font-size:11.5px}.rejitem .reason{color:var(--neg);font-weight:600}.rejitem p{color:var(--ink-2);margin:0 0 8px;font-size:12.5px;line-height:1.5}.rejitem .rm{align-self:flex-start;margin-top:auto;font-size:12px}.rules{margin:26px 0 18px}.rulegrid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.rulecard{background:var(--panel);border:1px solid var(--rule-2);border-radius:8px;padding:14px 16px}.rulecard h4{justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 8px;font-size:14px;display:flex}.rulecard ul{color:var(--ink-2);margin:0;padding-left:16px;font-size:12.5px;line-height:1.55}.rulecard li{margin-bottom:5px}.rulecard strong{color:var(--ink)}.rules .ok{color:var(--pos);font-weight:600}.rules .no{color:var(--neg);font-weight:600}.agentmail{margin:10px 0 6px}.agentmail.open{background:var(--panel-2);border:1px solid var(--rule-2);border-radius:8px;padding:12px 14px}.agentmail .field{margin-top:10px}.agentmail textarea{font:12.5px/1.5 var(--mono);resize:vertical}.agentmail .actions{align-items:center;margin-top:12px}a.button{border-radius:var(--r);text-decoration:none;display:inline-block}a.button.primary{background:var(--accent);color:#fff;padding:10px 22px;font-weight:600}.why-not{color:var(--ink-3);margin:10px 0 0;font-size:11.5px;line-height:1.45}.agentmail .to-line{color:var(--ink-2);margin:8px 0 0;font-size:12.5px}
