:root{--bg:#f7f7f5;--panel:#ffffff;--text:#1c1c1a;--muted:#6b6b66;--border:#e3e3de;--accent:#2f6fde;--buy:#12805c;--sell:#c2410c;--watch:#a16207;--hold:#6b6b66;--buy-bg:#e3f4ec;--sell-bg:#fbe9df;--watch-bg:#fbf1d6;--hold-bg:#efefeb;--row-hover:#f2f2ee;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121211;--panel:#1b1b1a;--text:#ededea;--muted:#9a9a94;--border:#2c2c2a;--accent:#6f9cf0;--buy:#3ccf96;--sell:#f08a4b;--watch:#e0b341;--hold:#9a9a94;--buy-bg:#12301f;--sell-bg:#3a1f12;--watch-bg:#33290f;--hold-bg:#262624;--row-hover:#232321;color-scheme:dark}}*{box-sizing:border-box}html{font-size:clamp(1rem,.85rem + .25vw,1.1875rem)}body,html{margin:0}body{background:var(--bg);color:var(--text);font:.875rem/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8125rem}.shell{max-width:min(100%,120rem);margin:0 auto;padding:1rem;display:grid;grid-gap:1rem;gap:1rem}header.top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem}header.top h1{font-size:1.125rem;margin:0}header.top h1 .maker{font-size:.75rem;font-weight:500;color:var(--muted);text-decoration:none;margin-left:.25rem}header.top h1 .maker:focus-visible,header.top h1 .maker:hover{color:var(--accent);text-decoration:underline}.status{color:var(--muted);font-size:.8125rem}.status .stale{color:var(--sell);font-weight:600}.grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) 23.75rem}@media (max-width:1100px){.grid{grid-template-columns:minmax(0,1fr)}.agent{min-height:16rem}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:.625rem;padding:.75rem;min-width:0}.panel h2{font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 .5rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}td,th{padding:.4375rem .5rem;text-align:right;white-space:nowrap;border-bottom:1px solid var(--border)}th{font-size:.75rem;font-weight:500;color:var(--muted)}td:nth-child(-n+3),th:nth-child(-n+3){text-align:left}tbody tr{cursor:pointer}tbody tr.selected,tbody tr:hover{background:var(--row-hover)}tbody tr.selected{box-shadow:inset 3px 0 0 var(--accent)}.up{color:var(--buy)}.down{color:var(--sell)}.badge{display:inline-block;min-width:3.375rem;text-align:center;padding:2px .5rem;border-radius:999px;font-size:.75rem;font-weight:600}.badge.BUY{color:var(--buy);background:var(--buy-bg)}.badge.SELL{color:var(--sell);background:var(--sell-bg)}.badge.WATCH{color:var(--watch);background:var(--watch-bg)}.badge.HOLD{color:var(--hold);background:var(--hold-bg)}.detail{display:grid;grid-gap:.75rem;gap:.75rem}.chart{height:clamp(18rem,42vh,40rem)}.levels{display:flex;flex-wrap:wrap;gap:.375rem 1rem;color:var(--muted);font-size:.8125rem}.levels b{color:var(--text);font-weight:500}ul.reasons{margin:0;padding-left:1.125rem}.chip{display:inline-block;font-size:.75rem;padding:1px .4375rem;border:1px solid var(--border);border-radius:.375rem;margin:0 .25rem .25rem 0;color:var(--muted)}.chip.blocked{color:var(--sell);border-color:var(--sell)}.chip.opinion{margin:0 0 0 .375rem}.second-opinion{margin:.625rem 0 0;color:var(--muted);font-size:.8125rem}.agent{display:flex;flex-direction:column;gap:.625rem;min-height:26.25rem}.agent .log{flex:1 1;overflow-y:auto;max-height:60vh;display:grid;grid-gap:.625rem;gap:.625rem;align-content:start}.msg{white-space:pre-wrap;padding:.5rem .625rem;border-radius:.5rem;border:1px solid var(--border)}.msg.user{background:var(--row-hover)}.msg.err{color:var(--sell)}form.ask{display:flex;gap:.5rem}form.ask input{flex:1 1;min-width:0;padding:.5rem .625rem;background:var(--bg)}button,form.ask input{border-radius:.5rem;border:1px solid var(--border);color:var(--text);font:inherit}button{padding:.5rem .75rem;background:var(--panel);cursor:pointer}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button:disabled{opacity:.55;cursor:default}.empty{padding:1.5rem .5rem;text-align:center}.empty,.foot{color:var(--muted)}.foot{font-size:.75rem}.controls{display:flex;flex-wrap:wrap;gap:.5rem}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:.5625rem;padding:2px;background:var(--panel)}.segmented button{border:0;background:transparent;padding:.3125rem .75rem;border-radius:.4375rem;color:var(--muted)}.segmented button.on{background:var(--row-hover);color:var(--text);font-weight:600}.segmented .hint{margin-left:.375rem;font-weight:400}.segmented .hint,.sub{font-size:.6875rem;color:var(--muted)}.chip.coarse{color:var(--watch);border-color:var(--watch)}.chip.status-done{color:var(--buy);border-color:var(--buy)}.chip.status-error{color:var(--sell);border-color:var(--sell)}.chip.status-queued,.chip.status-running{color:var(--watch);border-color:var(--watch)}.bt-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:flex-end}.bt-form label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.75rem;color:var(--muted)}.bt-form label.grow{flex:1 1;min-width:12.5rem}.bt-form input{padding:.4375rem .5625rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;min-width:0}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.875rem,1fr));grid-gap:.5rem;gap:.5rem}.tiles div{border:1px solid var(--border);border-radius:.5rem;padding:.5rem .625rem;display:grid;grid-gap:2px;gap:2px}.tiles span{font-size:.75rem;color:var(--muted)}.tiles b{font-size:1.125rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.equity{height:11.25rem}.refresh{display:flex;align-items:center;gap:.625rem}.refresh button{padding:.375rem .875rem}tbody tr.placeholder{cursor:default}tbody tr.placeholder:hover{background:transparent}tbody tr.placeholder td{text-align:center}.msg.agent-reply{white-space:normal}.md{display:grid;grid-gap:.5rem;gap:.5rem}.md ol,.md p,.md pre,.md ul{margin:0}.md ol,.md ul{padding-left:1.125rem;display:grid;grid-gap:.375rem;gap:.375rem}.md pre{white-space:pre;overflow-x:auto;padding:.5rem;border-radius:.375rem;background:var(--bg);font:.75rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.md li::marker{color:var(--muted)}.md strong{font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.md code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.ind-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}@media (max-width:640px){.ind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.ind-grid div{border:1px solid var(--border);border-radius:.5rem;padding:.4375rem .625rem;display:grid;grid-gap:1px;gap:1px}.ind-grid span{font-family:ui-sans-serif,system-ui,sans-serif;font-size:.6875rem;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.ind-grid b{font-size:.9375rem;font-weight:600}.ind-grid em{font-style:normal;font-size:.6875rem;color:var(--muted)}.ind-grid em.up{color:var(--buy)}.ind-grid em.down{color:var(--sell)}.chart-wrap{display:grid;grid-gap:.375rem;gap:.375rem}.chart-wrap .chart{height:clamp(22rem,58vh,56rem)}.legend{display:flex;flex-wrap:wrap;gap:.25rem .875rem;font-size:.75rem;color:var(--muted)}.legend i{display:inline-block;width:.625rem;height:2px;margin-right:.3125rem;vertical-align:middle}form.filters{display:flex;flex-wrap:wrap;gap:.5rem .625rem;align-items:flex-end}form.filters label{display:grid;grid-gap:.25rem;gap:.25rem;font-size:.75rem;color:var(--muted);flex:1 1 8.125rem;min-width:0}form.filters label.granularity{flex:0 0 auto}form.filters input,form.filters select{padding:.4375rem .5625rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg);color:var(--text);font:.8125rem ui-monospace,SFMono-Regular,Menlo,monospace;min-width:0}form.filters label.invalid{color:var(--sell)}form.filters label.invalid input{border-color:var(--sell)}form.filters .msg{flex-basis:100%;padding:.375rem .625rem}.agents-authority{display:flex;flex-wrap:wrap;gap:.5rem .75rem;align-items:center}.chip.agents{color:var(--accent);border-color:var(--accent);margin:0}.finding+.finding{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}p.gate-lead{margin:.75rem 0 .375rem}p.findings-lead{margin:0 0 .5rem}.day-summary{display:grid;grid-gap:.375rem;gap:.375rem;margin-bottom:.625rem}.day-summary .headline{margin:0;font-weight:600}.day-summary p.status{margin:0}details.all-findings>summary{cursor:pointer;color:var(--accent);margin:.25rem 0 .5rem}ul.gate-checks{list-style:none;margin:0;padding:0;display:grid;grid-gap:.3125rem;gap:.3125rem}ul.gate-checks li{display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto;grid-gap:.5rem;gap:.5rem;align-items:baseline}ul.gate-checks li .mark{text-align:center;color:var(--muted)}ul.gate-checks li.ok .mark{color:var(--buy);font-weight:700}ul.gate-checks li .sub{text-align:right}@media (max-width:40rem){ul.gate-checks li{grid-template-columns:1.25rem minmax(0,1fr)}ul.gate-checks li .sub{grid-column:2;text-align:left}}.tiles em{font-style:normal}.research{margin:.25rem 0 0}.signin{min-height:100vh;display:grid;place-items:center;padding:1rem}.signin-card{width:min(100%,22rem);display:grid;grid-gap:.875rem;gap:.875rem;padding:1.5rem;background:var(--panel);border:1px solid var(--border);border-radius:.75rem}.signin-card h1{font-size:1.125rem;margin:0}.signin-card h1 .maker{font-size:.75rem;font-weight:500;color:var(--muted);margin-left:.25rem}.signin-foot,.signin-lead{margin:0;color:var(--muted)}.signin-foot{font-size:.75rem}.signin-card label{display:grid;grid-gap:.3125rem;gap:.3125rem;font-weight:600;font-size:.8125rem}.signin-card input{font:inherit;font-weight:400;padding:.5rem .625rem;border-radius:.5rem;border:1px solid var(--border);background:var(--bg);color:var(--text)}.signin-card input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.signin-card button{padding:.5625rem .75rem;font-weight:600}.signin-note{margin:0;padding:.5rem .625rem;border-radius:.5rem;font-size:.8125rem}.signin-note.error{background:var(--sell-bg);color:var(--sell)}.signin-note.info{background:var(--hold-bg);color:var(--text)}.signout{margin:0}.signout button{padding:.375rem .75rem}