:root{--bg:#f7f7f5;--surface:#fff;--text:#1c1c1a;--muted:#6b6b66;--border:#e2e1dc;--accent:#2f5bd3;--accent-text:#fff;--danger:#b42318;--badge-bg:#e8eefc;--badge-text:#2448a8;--success:#006300;--warning:#8a5a00;--series-1:#2a78d6;--series-1-active:#5598e7;--grid:#e1e0d9;--axis-line:#c3c2b7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#161615;--surface:#1f1f1d;--text:#ececea;--muted:#9b9b95;--border:#34342f;--accent:#7c9cf0;--accent-text:#10131c;--danger:#f97066;--badge-bg:#26304a;--badge-text:#b9c9f7;--success:#0ca30c;--warning:#f5b84a;--series-1:#3987e5;--series-1-active:#6da7ec;--grid:#2c2c2a;--axis-line:#383835}}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2{margin:0;line-height:1.2}h1{font-size:1.25rem}h2{margin-bottom:.75rem;font-size:1.05rem}.app-header{border-bottom:1px solid var(--border);background:var(--surface);padding:1rem}.app-header h1,main{max-width:1100px;margin-inline:auto}.app-header-inner{justify-content:space-between;align-items:center;gap:1rem;max-width:1100px;margin-inline:auto;display:flex}.app-header-inner h1{max-width:none;margin:0}main{gap:2rem;padding:1.5rem 1rem 3rem;display:grid}section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.25rem}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);margin:0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:.6rem .75rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.company-name{flex-wrap:wrap;align-items:center;gap:.5rem;font-weight:600;display:flex}.badge{text-transform:uppercase;letter-spacing:.04em;background:var(--badge-bg);color:var(--badge-text);border-radius:999px;padding:.1rem .45rem;font-size:.7rem;font-weight:600}.actions{text-align:right;white-space:nowrap}button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;padding:.4rem .9rem}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button:disabled{opacity:.6;cursor:default}.research-status summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.research-status progress{width:6rem;accent-color:var(--accent)}.research-status ul{columns:2;margin:0;padding:.5rem 0 0;font-size:.9rem;list-style:none}.job-failed{color:var(--danger)}.add-company{gap:1rem;max-width:40rem;display:grid}.add-company label:not(.choice){gap:.25rem;font-weight:500;display:grid}input:not([type=checkbox],[type=radio]){font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:.45rem .6rem}fieldset{border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;gap:.5rem 1.25rem;margin:0;padding:.75rem 1rem;display:flex}legend{padding:0 .25rem;font-weight:500}.choice{align-items:center;gap:.4rem;display:inline-flex}.objectives .choice{min-width:11rem}main>*,.financials>*,.financials-body>*{min-width:0}.nowrap{white-space:nowrap}.actions button+button{margin-left:.5rem}.financials{gap:1.25rem;scroll-margin-top:1rem;display:grid}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.panel-header h2{margin-bottom:.25rem}.panel-header p,.kpis p,.empty-state p{margin:0}.panel-actions{gap:.5rem;display:flex}.financials-body{gap:1.5rem;transition:opacity .2s;display:grid}.financials-body.is-refreshing{opacity:.55}.empty-state{gap:.5rem;display:grid}.view-toggle{border:1px solid var(--border);border-radius:6px;justify-self:start;display:inline-flex;overflow:hidden}.view-toggle button{border:0;border-radius:0}.view-toggle button+button{border-left:1px solid var(--border)}.view-toggle button[aria-pressed=true]{background:var(--accent);color:var(--accent-text)}.kpis{gap:.5rem;display:grid}.tiles{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:.75rem;display:grid}.tile{border:1px solid var(--border);border-radius:8px;gap:.15rem;padding:.75rem 1rem;display:grid}.tile-label{color:var(--muted);font-size:.85rem}.tile-value{font-size:1.6rem;font-weight:600;line-height:1.2}.delta{font-size:.85rem;font-weight:500}.delta-up{color:var(--success)}.delta-down{color:var(--danger)}.delta-flat{color:var(--muted)}.chart{margin:0}.chart-title{margin-bottom:.5rem;font-weight:600}.chart-body{position:relative}.chart-body svg{display:block;overflow:visible}.chart-grid,.chart-baseline{stroke-width:1px;shape-rendering:crispedges}.chart-grid{stroke:var(--grid)}.chart-baseline{stroke:var(--axis-line)}.chart-axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.chart-label{fill:var(--text);font-size:12px;font-weight:600}.chart-bar{fill:var(--series-1)}.chart-bar.is-active{fill:var(--series-1-active)}.chart-hit{fill:#0000;outline:none}.chart-hit:focus-visible{stroke:var(--accent);stroke-width:2px}.chart-tooltip{z-index:1;background:var(--surface);border:1px solid var(--border);pointer-events:none;border-radius:6px;gap:.1rem;max-width:15rem;padding:.5rem .65rem;display:grid;position:absolute;box-shadow:0 4px 16px #0000001f}.chart-tooltip strong{font-size:1rem}.tooltip-row{color:var(--muted);align-items:center;gap:.4rem;font-size:.85rem;display:flex}.tooltip-key{background:var(--series-1);border-radius:1px;width:12px;height:2px}.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.financials-table tbody th{font-size:inherit;color:var(--text);text-transform:none;letter-spacing:normal;white-space:nowrap;font-weight:600}.cell-note{color:var(--muted);white-space:normal;font-size:.78rem;display:block}.sources{white-space:nowrap}.sources a{color:var(--accent);margin-right:.45rem}.tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:.25rem;display:flex;overflow-x:auto}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;padding:.5rem .75rem}.tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.tab-count{font-variant-numeric:tabular-nums;color:var(--muted);margin-left:.4rem;font-size:.75rem}.tab-panel{gap:1.5rem;min-width:0;display:grid}.claims{gap:.75rem;display:grid}.release{border:1px solid var(--border);border-radius:8px;min-width:0;padding:.75rem 1rem}.release summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;display:flex}.release-date{white-space:nowrap;font-weight:600}.release-title{flex:16rem}.release-link{margin:.5rem 0}.release-link a,.quote a,.quote summary{color:var(--accent)}.claims-table tbody th{font-size:inherit;color:var(--text);text-transform:none;letter-spacing:normal;min-width:12rem;font-weight:600}.claims-table td{min-width:6rem}.quote summary{cursor:pointer;font-size:.85rem}.quote blockquote,.quote-row blockquote{border-left:2px solid var(--border);max-width:32rem;color:var(--muted);white-space:normal;margin:.5rem 0 0;padding-left:.75rem;font-size:.9rem}.initiatives{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.initiatives li{border-top:1px solid var(--border);padding-top:.75rem}.initiatives p{margin:0 0 .25rem}.badge-unverified{border:1px solid var(--warning);color:var(--warning);background:0 0;margin-left:.5rem}.link-button{color:var(--accent);white-space:nowrap;background:0 0;border:0;padding:0;font-size:.85rem}.quote-row td{padding-top:0}.quote-row blockquote{max-width:48rem;margin:0 0 .25rem}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=40rem){.claims-table thead{display:none}.claims-table,.claims-table tbody,.claims-table tr,.claims-table th,.claims-table td{display:block}.claims-table tr{border-bottom:1px solid var(--border);padding:.6rem 0}.claims-table tr.quote-row{padding-top:0}.claims-table tr[hidden]{display:none}.claims-table th,.claims-table td{text-align:left;white-space:normal;border:0;min-width:0;padding:.1rem 0}.claims-table td[data-label]:before{content:attr(data-label) ": ";color:var(--muted);font-size:.8rem}.claims-table .cell-note{margin-left:.35rem;display:inline}}.track-record,.track-section{gap:1rem;min-width:0;display:grid}.track-section h3{margin:0;font-size:1rem}.track-section .tile-value{font-size:1.4rem}.deviation{white-space:nowrap;align-items:center;gap:.5rem;display:inline-flex}.deviation-axis{stroke:var(--grid);stroke-width:1px}.deviation-band{fill:var(--series-1);opacity:.2}.deviation-mid{stroke:var(--axis-line);stroke-width:1px}.deviation-dot{fill:var(--series-1);stroke:var(--surface);stroke-width:2px}.history{gap:.6rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.history-date{font-weight:600}.history a{color:var(--accent)}.track-table tbody th{min-width:9rem}.track-table th,.track-table td{padding-inline:.55rem}.result{gap:.2rem;display:grid}.stock{gap:1.25rem;min-width:0;display:grid}.stock-heading{margin:0;font-size:1rem}.price-line{fill:none;stroke:var(--series-1);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.price-dot{fill:var(--series-1);stroke:var(--surface);stroke-width:2px}.event-dot{fill:var(--surface);stroke:var(--series-1);stroke-width:2px}.event-dot.is-earnings{fill:var(--series-1);stroke:var(--surface)}.claims-table a{color:var(--accent)}.causes{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.rating{background:var(--grid);vertical-align:middle;border-radius:4px;width:7rem;height:1.1rem;display:inline-block;position:relative;overflow:hidden}.rating-bar{background:var(--series-1);opacity:.55;position:absolute;inset:0 auto 0 0}.rating-n{padding-left:.4rem;font-size:.8rem;font-weight:600;line-height:1.1rem;position:relative}.narrative{gap:.75rem;display:grid}.narrative h4{margin:0 0 .25rem}.tone-positive{border:1px solid var(--success);color:var(--success);background:0 0}.tone-negative{border:1px solid var(--danger);color:var(--danger);background:0 0}.tone-mixed{border:1px solid var(--warning);color:var(--warning);background:0 0}
