@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,600;8..60,700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--ink:#0b1638;--ink-deep:#060d24;--ink-soft:#152045;--ink-line:#1f2a52;--ivory:#f4efe0;--paper:#faf7ee;--vellum:#e5dec9;--smoke:#5b6478;--mist:#8c95aa;--silver:#d3d8e2;--brass:#b8893e;--brass-soft:#d5b175;--brass-wash:#b8893e1a;--brass-ring:#b8893e73;--positive:#3c7a47;--positive-wash:#3c7a471a;--negative:#b33a2e;--negative-wash:#b33a2e1a;--warning:#a6791c;--warning-wash:#a6791c1a;--bg:var(--ivory);--bg-alt:var(--paper);--bg-elev:#fff;--border:var(--vellum);--border-strong:#c9bfa0;--text-h:var(--ink);--text:var(--smoke);--text-dim:#818aa0;--accent:var(--brass);--accent-wash:var(--brass-wash);--accent-ring:var(--brass-ring);--series-primary:var(--brass);--series-secondary:#4a5773;--series-tertiary:#8c95aa;--series-quaternary:#c2beb0;--chart-grid:#ddd4bc;--chart-axis:#8c95aa;--chart-zero:#b5a98a;--serif:"Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--r-sm:2px;--r-md:4px;--r-lg:6px;--r-pill:999px;--shadow-focus:0 0 0 3px var(--accent-ring);--shadow-card:0 1px 0 #0b16380a;--shadow-pop:0 8px 28px #0b163824;--t-fast:.12s;--t-base:.18s;--ease:cubic-bezier(.2, 0, .2, 1);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;font:400 14px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-feature-settings:"cv11", "ss01";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:var(--ink);--bg-alt:var(--ink-soft);--bg-elev:var(--ink-soft);--border:var(--ink-line);--border-strong:#2d3a66;--text-h:var(--ivory);--text:var(--mist);--text-dim:var(--silver);--accent:var(--brass-soft);--accent-wash:#d5b1751a;--accent-ring:#d5b17573;--series-primary:var(--brass-soft);--series-secondary:#b0b8cb;--series-tertiary:#6e7896;--series-quaternary:#3e4868;--chart-grid:#1f2a52;--chart-axis:#6e7896;--chart-zero:#2d3a66}}:root[data-theme=dark]{--bg:var(--ink);--bg-alt:var(--ink-soft);--bg-elev:var(--ink-soft);--border:var(--ink-line);--border-strong:#2d3a66;--text-h:var(--ivory);--text:var(--mist);--text-dim:var(--silver);--accent:var(--brass-soft);--accent-wash:#d5b1751a;--accent-ring:#d5b17573;--series-primary:var(--brass-soft);--series-secondary:#b0b8cb;--series-tertiary:#6e7896;--series-quaternary:#3e4868;--chart-grid:#1f2a52;--chart-axis:#6e7896;--chart-zero:#2d3a66}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{color:var(--text-h);font-feature-settings:"liga", "kern";margin:0 0 12px}h1{font-family:var(--serif);letter-spacing:-.01em;font-size:32px;font-weight:600;line-height:1.15}h2{font-family:var(--serif);letter-spacing:-.005em;font-size:22px;font-weight:500;line-height:1.25}h3{font-family:var(--sans);font-size:16px;font-weight:600;line-height:1.3}a{color:var(--accent);transition:border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border-bottom:1px solid #0000;text-decoration:none}a:hover{border-bottom-color:var(--accent);text-decoration:none}code{font-family:var(--mono);background:var(--bg-alt);color:var(--text-h);border:1px solid var(--border);border-radius:var(--r-sm);padding:1px 5px;font-size:.92em}::selection{background:var(--accent-wash);color:var(--text-h)}.num,.ticker{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text-h)}.num.pos{color:var(--positive)}.num.neg{color:var(--negative)}.ticker{letter-spacing:-.01em;font-weight:600}.shell{min-height:100vh;display:flex}.content{flex-direction:column;flex:1;min-width:0;display:flex}.rail{box-sizing:border-box;border-right:1px solid var(--border);background:var(--bg-alt);flex-direction:column;flex-shrink:0;width:236px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-top{align-items:center;gap:8px;padding:4px 8px 14px;display:flex}.rail .brand{color:var(--text-h);flex:1;align-items:center;gap:10px;min-width:0;display:flex}.rail .brand .wordmark{font:600 17px/1 var(--serif);letter-spacing:-.01em;color:var(--text-h)}.rail-top .notif-bell{flex-shrink:0}.rail-account{margin:0 0 14px}.rail-account .dropdown,.rail-account .dropdown-trigger{width:100%;display:block}.rail-user{appearance:none;box-sizing:border-box;width:100%;font:500 13px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;transition:border-color var(--t-fast) var(--ease);align-items:center;gap:8px;padding:8px 10px;display:flex}.rail-user:hover{border-color:var(--border-strong)}.rail .user-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rail .search-wrap{flex:none;width:100%;max-width:none;margin:0 0 18px}.rail-head{font:600 10px var(--sans);text-transform:uppercase;letter-spacing:.09em;color:var(--text-dim);margin:0 0 6px;padding:0 8px}.rail-sec{flex-direction:column;gap:2px;display:flex}.rail-sec+.rail-head{margin-top:18px}.rail-divider{background:var(--border);height:1px;margin:14px 4px}.rail-link{border-radius:var(--r-md);font:500 13px var(--sans);color:var(--text);transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);border:1px solid #0000;align-items:center;gap:10px;padding:8px;text-decoration:none;display:flex}.rail-link:hover{color:var(--text-h);background:var(--bg-elev);border-bottom-color:#0000}.rail-link svg{opacity:.75;flex-shrink:0}.rail-link.active{color:var(--text-h);background:var(--bg-elev);border-color:var(--border);box-shadow:var(--shadow-card)}.rail-link--btn{appearance:none;box-sizing:border-box;cursor:pointer;text-align:left;background:0 0;width:100%}.rail-sec .dropdown,.rail-sec .dropdown-trigger{width:100%;display:block}.rail-foot{align-items:center;gap:8px;margin-top:auto;padding-top:14px;display:flex}.rail-hamburger{display:none}@media (width<=720px){.rail-hamburger{z-index:40;background:var(--bg-elev);border:1px solid var(--border);display:inline-flex;position:fixed;top:12px;left:12px}.rail{z-index:30;transition:transform var(--t-base) var(--ease);box-shadow:var(--shadow-pop);position:fixed;top:0;left:0;transform:translate(-100%)}.rail--open{transform:translate(0)}}.theme-toggle{appearance:none;border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;width:30px;height:30px;color:var(--text);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.theme-toggle:hover{color:var(--text-h);border-color:var(--border-strong)}.app-main{box-sizing:border-box;flex:1;width:100%;max-width:1280px;margin:0 auto;padding:24px 32px}@media (width<=720px){.app-main{padding-top:56px}}.login-page,.onboarding{box-sizing:border-box;justify-content:center;align-items:center;min-height:calc(100vh - 160px);padding:32px;display:flex}.login-card,.onboarding-card{text-align:left;width:100%;max-width:420px;padding:40px}.onboarding-card{max-width:480px}.login-card .brand,.onboarding-card .brand{color:var(--text-h);align-items:center;gap:10px;margin-bottom:28px;display:flex}.login-card .brand .wordmark,.onboarding-card .brand .wordmark{font:600 24px/1 var(--serif);letter-spacing:-.01em}.login-card h1,.onboarding-card h1{font-family:var(--serif);letter-spacing:-.01em;color:var(--text-h);margin:0 0 8px;font-size:28px;font-weight:600;line-height:1.2}.login-card p,.onboarding-card p{color:var(--text);font:400 14px/1.55 var(--sans);margin:0 0 16px}.login-card .muted{font:400 12px var(--sans);color:var(--text-dim)}.login-card .login-button,.onboarding-card .login-button{width:100%;font:500 14px var(--sans);background:var(--accent);color:var(--ink);border:1px solid var(--accent);border-radius:var(--r-md);cursor:pointer;margin-top:4px;padding:11px 16px}.login-card .login-button:hover,.onboarding-card .login-button:hover{filter:brightness(1.06)}.login-card .login-button:disabled,.onboarding-card .login-button:disabled{opacity:.6;cursor:default;filter:none}.login-card .login-button-secondary,.onboarding-card .login-button-secondary{color:var(--text);border-color:var(--border-strong);background:0 0}.login-card .login-button-secondary:hover,.onboarding-card .login-button-secondary:hover{filter:none;background:var(--accent-wash);border-color:var(--accent)}.onboarding-steps{gap:8px;margin-bottom:24px;display:flex}.onboarding-steps span{background:var(--border-strong);width:8px;height:8px;transition:background var(--t-fast) var(--ease);border-radius:50%}.onboarding-steps span.done{background:var(--accent);opacity:.45}.onboarding-steps span.active{background:var(--accent)}.onboarding-actions{gap:10px;margin-top:20px;display:flex}.onboarding-actions .login-button{margin-top:0}.onboarding-card label{color:var(--text);font:400 14px/1.55 var(--sans);margin-bottom:16px;display:flex}.onboarding-card label:has(select){flex-direction:column;gap:6px}.onboarding-card label:has(input[type=checkbox]){align-items:center;gap:8px}.onboarding-card select{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--text);font:400 14px var(--sans);padding:8px 10px}.onboarding-card select:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.onboarding-card input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar input[type=search]{width:100%;font:inherit;color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;padding:8px 12px}.toolbar input[type=search]:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.muted{color:var(--text-dim);font-size:13px}.search-wrap{flex:1;max-width:360px;position:relative}.search-wrap.with-icon{align-items:center;display:flex}.search-wrap.with-icon>svg{color:var(--text-dim);pointer-events:none;position:absolute;left:11px}.search-wrap.with-icon input[type=search]{padding-left:34px}.stocks-table{border-collapse:collapse;width:100%;font-size:14px}.stocks-table th,.stocks-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;max-width:280px;padding:10px 12px;overflow:hidden}.stocks-table th{background:var(--bg-alt);color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;position:sticky;top:56px}.stocks-table tbody tr{cursor:pointer}.stocks-table tbody tr:hover{background:var(--accent-wash)}.stocks-table tbody tr.row-static,.stocks-table tbody tr.row-static:hover{cursor:default;background:0 0}.stocks-table .ticker{font-family:var(--mono);color:var(--text-h);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-weight:600}.stocks-table .asset-label{color:var(--text-dim);font-style:italic}.stocks-table[aria-busy=true] tbody{opacity:.5;transition:opacity var(--t-fast) var(--ease)}.detail-header{flex-wrap:wrap;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.detail-header .ticker{font-family:var(--mono);color:var(--text-h);letter-spacing:-.01em;font-size:30px;font-weight:700}.detail-header h1{font-size:20px;font-family:var(--serif);margin:0}.detail-meta{flex-wrap:wrap;gap:10px 28px;margin-bottom:24px;font-size:13px;display:flex}.detail-meta div{flex-direction:column;display:flex}.detail-meta span:first-child{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600}.detail-meta span:last-child{color:var(--text-h)}.stats-table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);min-width:280px;margin-bottom:24px;font-size:14px;overflow:hidden}.stats-table caption{caption-side:top;text-align:left;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);background:var(--bg-alt);border-bottom:1px solid var(--border);padding:6px 14px;font-size:11px;font-weight:600}.stats-table th,.stats-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 14px}.stats-table tr:last-child th,.stats-table tr:last-child td{border-bottom:none}.stats-table th{color:var(--text);width:50%;font-weight:400}.stats-table td{color:var(--text-h);font-family:var(--mono);text-align:right;font-variant-numeric:tabular-nums}.stats-table td.period{color:var(--text-dim);font-family:var(--mono);text-align:right;width:25%;font-size:12px}.stats-table .empty-cell{text-align:center;color:var(--text-dim);font-family:var(--sans);padding:14px;font-size:13px}.filings-table{min-width:420px}.filings-table thead th{background:var(--bg-alt);color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border);text-align:left;padding:6px 14px}.filings-table tbody td{text-align:left;font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13px}.filings-table tbody td:last-child{text-align:right}.filings-table a{font-family:var(--sans);font-size:12px}.detail-stats-row{flex-wrap:wrap;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.detail-stats-row .stats-table{flex:320px;margin-bottom:0}.filings-details{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);margin-bottom:24px;overflow:hidden}.filings-details>summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-alt);color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:8px;padding:8px 14px;list-style:none;display:flex}.filings-details>summary::-webkit-details-marker{display:none}.filings-details>summary:before{content:"▸";font-size:10px;line-height:1;transition:transform .15s}.filings-details[open]>summary:before{transform:rotate(90deg)}.filings-details[open]>summary{border-bottom:1px solid var(--border)}.filings-details .filings-scroll{overflow-x:auto}.filings-details .filings-table{border:none;border-radius:0;width:100%;margin-bottom:0}.chart-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);padding:16px}.chart-note{color:var(--text-dim);font:400 12px/1.5 var(--sans);margin:10px 2px 0}.portfolio-page__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.portfolio-page__header h2,.portfolio-page__header h3{margin:0}.portfolio-page__header{margin-bottom:16px}.verdict{border:1px solid var(--accent-ring);background:var(--accent-wash);border-radius:var(--r-lg);align-items:flex-start;gap:12px;margin:0 0 20px;padding:15px 18px;display:flex}.verdict>svg{color:var(--text-h);flex-shrink:0;margin-top:1px}.verdict p{font:400 14px/1.6 var(--sans);color:var(--text-h);margin:0}.verdict strong{font-weight:600}.portfolio-page__details{align-items:center;margin:24px 0 12px;display:flex}.hint{border:1px solid var(--border-strong);width:15px;height:15px;font:600 10px var(--sans);color:var(--text-dim);cursor:help;border-radius:50%;justify-content:center;align-items:center;margin-left:5px;display:inline-flex}.benchmark-selector{align-items:center;gap:8px;display:inline-flex}.benchmark-selector__label{font:600 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.benchmark-selector__trigger{align-items:center;gap:6px;display:inline-flex}.chart-header .chart-legend{font:400 11px var(--sans);color:var(--text-dim);flex-wrap:nowrap;align-items:center;gap:16px;margin:0;display:inline-flex}.chart-legend__item{align-items:center;gap:6px;display:inline-flex}.chart-legend__swatch{flex-shrink:0}.chart-legend__name{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.chart-legend__value{font:500 12px var(--mono);font-variant-numeric:tabular-nums;color:var(--text-h)}.perf-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;display:grid}.perf-tile{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-alt);flex-direction:column;gap:4px;min-width:0;padding:12px 14px;display:flex}.perf-tile__label{font:600 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.perf-tile__value{font-size:20px;font-weight:600}.perf-tile__sub{font:400 11px var(--sans);color:var(--text-dim)}.perf-tooltip{background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow-pop);font:12px var(--sans);border-radius:4px;min-width:128px;padding:6px 10px}.perf-tooltip__date{color:var(--text-dim);margin-bottom:4px;font-size:11px}.perf-tooltip__row{color:var(--text-h);justify-content:space-between;gap:16px;display:flex}.perf-tooltip__row .num{font-weight:600}.breakdown-pies{grid-template-columns:1fr;gap:16px;margin:16px 0 24px;display:grid}@media (width>=900px){.breakdown-pies{grid-template-columns:1fr 1fr}}.breakdown-pie-card{min-width:0}.xray-section{margin:8px 0 24px}@media (width>=1200px){.xray-section .breakdown-pies{grid-template-columns:1fr 1fr 1fr}}.xray-coverage{color:var(--text-dim);margin:0;font-size:13px}.pie-card-body{align-items:flex-start;gap:12px;display:flex}.pie-chart-wrap{flex:0 0 200px;height:220px}.pie-legend{flex:1;align-self:center;min-width:0;max-height:220px;margin:0;padding:0;list-style:none;overflow:hidden auto}.pie-legend-row{cursor:default;border-radius:4px;align-items:center;gap:6px;padding:3px 4px;display:flex}.pie-legend-row:hover{background:var(--bg-alt)}.pie-legend-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pie-legend-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;font-size:12px;overflow:hidden}.pie-legend-pct{color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;width:38px;font-size:11px;overflow:hidden}.pie-legend-val{color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;width:62px;font-size:11px;overflow:hidden}@media (width<=480px){.pie-chart-wrap{flex:0 0 150px;height:190px}.pie-legend{max-height:190px}}.breakdown-empty{color:var(--text-dim);margin:16px 0;font-style:italic}.chart-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.chart-header h2{font:600 14px var(--sans);color:var(--text-h);font-family:var(--sans);margin:0}.chart-header .y-title{font:600 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin-left:14px;margin-right:auto}.range-buttons{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);font-size:12px;display:inline-flex}.range-buttons button{appearance:none;color:var(--text);border:none;border-left:1px solid var(--border);font:500 12px var(--sans);letter-spacing:.04em;cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;padding:6px 14px}.range-buttons button:first-child{border-top-left-radius:var(--r-md);border-bottom-left-radius:var(--r-md);border-left:none}.range-buttons button:last-child{border-top-right-radius:var(--r-md);border-bottom-right-radius:var(--r-md)}.range-buttons button:hover{background:var(--accent-wash);color:var(--text-h)}.range-buttons button.active{background:var(--text-h);color:var(--bg-elev)}.range-buttons button:focus-visible{box-shadow:var(--shadow-focus);z-index:1;outline:none;position:relative}.ratio-cards{margin-bottom:24px}.ratio-cards__header,.statements__header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.ratio-cards__header h2,.statements__header h2{font:600 15px var(--serif);color:var(--text-h);margin:0}.ratio-cards__note{font:500 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.ratio-cards__grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;display:grid}.ratio-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.ratio-card__label{font:500 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.ratio-card__value{font:600 20px var(--serif);color:var(--text-h)}.ratio-card__value--empty{color:var(--text-dim);cursor:help}.ratio-card abbr{cursor:help;color:var(--accent);text-decoration:none}.statements{margin-bottom:24px}.statements__scroll{border:1px solid var(--border);border-radius:var(--r-lg);overflow-x:auto}.statements__table{border:none;border-radius:0;width:100%;min-width:480px;margin-bottom:0}.statements__period,.statements__cell{text-align:right;white-space:nowrap}.statements__dagger{color:var(--accent);margin-left:1px;font-size:.8em}.statements__footnote{font:400 12px var(--sans);color:var(--text-dim);margin:8px 2px 0}.raw-facts-details{margin-bottom:24px}.pager{justify-content:flex-end;align-items:center;gap:16px;margin-top:14px;display:flex}.pager-buttons{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);display:inline-flex}.pager-buttons button{appearance:none;color:var(--text);border:none;border-left:1px solid var(--border);font:500 12px var(--sans);letter-spacing:.04em;cursor:pointer;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);background:0 0;padding:6px 14px}.pager-buttons button:first-child{border-top-left-radius:var(--r-md);border-bottom-left-radius:var(--r-md);border-left:none}.pager-buttons button:last-child{border-top-right-radius:var(--r-md);border-bottom-right-radius:var(--r-md)}.pager-buttons button:hover:not(:disabled){background:var(--accent-wash);color:var(--text-h)}.pager-buttons button:disabled{opacity:.4;cursor:default}.pager-buttons button:focus-visible{box-shadow:var(--shadow-focus);z-index:1;outline:none;position:relative}.empty,.loading{text-align:center;color:var(--text-dim);font:400 13px var(--sans);padding:28px}.error{background:var(--negative-wash);border-radius:var(--r-md);color:var(--negative);font:400 13px/1.45 var(--sans);text-align:left;border:1px solid #b33a2e33;margin-bottom:14px;padding:12px 14px}.back-link{margin-bottom:12px;font-size:13px;display:inline-block}.warning-banner{background:var(--warning-wash);border-radius:var(--r-md);color:var(--warning);font:500 13px/1.45 var(--sans);text-align:left;border:1px solid #a6791c40;align-items:center;gap:8px;margin-bottom:14px;padding:12px 14px;display:flex}.btn{appearance:none;font:500 13px var(--sans);border-radius:var(--r-md);cursor:pointer;border:1px solid var(--border);background:var(--bg-elev);color:var(--text-h);transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:8px 14px;display:inline-flex}.btn:hover{background:var(--accent-wash);border-color:var(--accent)}.btn:disabled{opacity:.4;cursor:not-allowed;filter:none;background:var(--bg-elev);border-color:var(--border)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--ink)}.btn.primary:hover{filter:brightness(1.06);background:var(--accent);border-color:var(--accent)}.btn.primary:disabled{opacity:.4}.btn.danger{color:var(--negative)}.btn.danger:hover{background:var(--negative-wash);border-color:var(--negative)}.btn.danger-filled{background:var(--negative);border-color:var(--negative);color:var(--ivory)}.btn.danger-filled:hover{filter:brightness(1.06);background:var(--negative);border-color:var(--negative)}.icon-btn{appearance:none;border-radius:var(--r-md);color:var(--text);cursor:pointer;width:28px;height:28px;transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:15px;display:inline-flex}.icon-btn:hover{background:var(--bg-alt);color:var(--text-h);border-color:var(--border)}.watchlist-star[aria-pressed=true]{color:var(--accent)}.watchlist-star[aria-pressed=true]:hover{color:var(--accent);opacity:.8}.change-up{color:var(--positive)}.change-down{color:var(--negative)}.modal-backdrop{z-index:100;animation:backdrop-in .18s var(--ease);background:#0b16388c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);width:100%;max-height:calc(100vh - 48px);animation:modal-in .18s var(--ease);flex-direction:column;display:flex;overflow:hidden}.modal-sm{max-width:380px}.modal-md{max-width:600px}.modal-lg{max-width:860px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.modal-head h3{font:600 18px/1.2 var(--serif);color:var(--text-h);letter-spacing:-.005em;margin:0}.modal-close{appearance:none;color:var(--text-dim);cursor:pointer;border-radius:var(--r-md);width:28px;height:28px;transition:color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.modal-close:hover{background:var(--bg-alt);color:var(--text-h)}.modal-body{font:400 14px/1.55 var(--sans);color:var(--text);flex:1;padding:18px 20px;overflow-y:auto}.modal-body p{margin:0 0 12px}.modal-body p:last-child{margin-bottom:0}.modal-foot{border-top:1px solid var(--border);background:var(--bg-alt);align-items:center;gap:8px;padding:12px 20px;display:flex}.dropdown{display:inline-flex}.dropdown-trigger{cursor:pointer;display:inline-flex}.dropdown-menu{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;box-shadow:var(--shadow-pop);z-index:60;animation:dropdown-in .12s var(--ease);padding:4px;position:fixed}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{text-align:left;width:100%;font:400 13px var(--sans);color:var(--text-h);cursor:pointer;border-radius:var(--r-sm);transition:background var(--t-fast) var(--ease);background:0 0;border:none;align-items:center;gap:10px;padding:7px 10px;display:flex}.dropdown-item:hover{background:var(--accent-wash)}.dropdown-item:disabled{opacity:.4;cursor:not-allowed}.dropdown-item.danger{color:var(--negative)}.dropdown-item.danger:hover{background:var(--negative-wash)}.dropdown-icon{color:var(--text);flex-shrink:0;align-items:center;width:15px;display:inline-flex}.dropdown-item.danger .dropdown-icon{color:var(--negative)}.dropdown-shortcut{font:400 11px var(--mono);color:var(--text-dim);margin-left:auto}.dropdown-divider{background:var(--border);height:1px;margin:4px -4px}.wizard-steps{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin:0 0 18px;padding:0 0 18px;list-style:none;display:flex}.wizard-step{align-items:center;gap:10px;display:flex}.wizard-step:not(:last-child):after{content:"";background:var(--border);width:32px;height:1px;margin-left:6px}.wizard-step-marker{border:1px solid var(--border);background:var(--bg-elev);width:22px;height:22px;font:600 11px var(--mono);color:var(--text-dim);font-variant-numeric:tabular-nums;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.wizard-step-label{font:500 12px var(--sans);color:var(--text-dim)}.wizard-step-current .wizard-step-marker{background:var(--accent);border-color:var(--accent);color:var(--ink)}.wizard-step-current .wizard-step-label{color:var(--text-h)}.wizard-step-done .wizard-step-marker{background:var(--text-h);border-color:var(--text-h);color:var(--bg-elev)}.wizard-step-done .wizard-step-label{color:var(--text)}.wizard-counter{font:400 11px var(--mono);color:var(--text-dim);margin-right:10px}.wizard-body{font:400 14px/1.55 var(--sans);color:var(--text)}.wizard-body h4{font:600 14px var(--sans);color:var(--text-h);margin:0 0 4px}.wizard-body p{margin:0 0 12px}.pill{border-radius:var(--r-pill);font:600 10px var(--sans);letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;align-items:center;gap:6px;padding:3px 10px 3px 8px;display:inline-flex}.pill:before{content:"";opacity:.85;background:currentColor;border-radius:999px;width:5px;height:5px}.pill.status-active{background:var(--positive-wash);color:var(--positive)}.pill.status-reauth{background:var(--warning-wash);color:var(--warning)}.pill.status-error{background:var(--negative-wash);color:var(--negative)}.pill.status-paused{background:var(--bg-alt);color:var(--text);border-color:var(--border);padding:2px 9px 2px 7px}.accounts-page h2{margin-bottom:16px}.create-account-form,.position-form{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.create-account-form input,.create-account-form select,.position-form input{font:400 14px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;padding:8px 12px}.create-account-form input{flex:1;min-width:180px}.create-account-form input:focus,.create-account-form select:focus,.position-form input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.account-list{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);margin:0 0 24px;padding:0;list-style:none;overflow:hidden}.account-list li{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:12px 16px;display:flex}.account-list li:last-child{border-bottom:none}.account-list li a{font:600 15px var(--sans);color:var(--accent);text-decoration:none}.account-list .account-meta{font:400 13px var(--sans);color:var(--text-dim);flex:1}.target-allocation-section{margin-top:32px}.target-allocation-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.target-allocation-header h3{margin:0}.alloc-empty{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.alloc-editor{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);flex-direction:column;gap:8px;padding:16px;display:flex}.alloc-editor-row{align-items:center;gap:8px;display:flex}.alloc-editor-row select,.alloc-editor-row input{font:400 14px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;padding:8px 12px}.alloc-editor-row input{width:90px}.alloc-editor-row select:focus,.alloc-editor-row input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.alloc-editor-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.alloc-sum{font:500 13px var(--mono)}.alloc-sum.valid{color:var(--positive)}.alloc-sum.invalid{color:var(--negative)}.alloc-bars{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.alloc-bar-pair{align-items:center;gap:12px;display:flex}.alloc-bar-label{width:70px;font:600 13px var(--sans);color:var(--text-h)}.alloc-bar-rows{flex-direction:column;flex:1;gap:3px;display:flex}.alloc-bar-row{align-items:center;gap:8px;display:flex}.alloc-bar-tag{width:52px;font:400 11px var(--sans);color:var(--text-dim)}.alloc-bar-track{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r-pill);flex:1;height:10px;overflow:hidden}.alloc-bar-fill{border-radius:var(--r-pill);height:100%}.alloc-bar-fill.target{background:var(--series-secondary)}.alloc-bar-pair.over .alloc-bar-fill.current{background:var(--negative)}.alloc-bar-pair.under .alloc-bar-fill.current{background:var(--positive)}.alloc-bar-value{text-align:right;width:52px;font:500 12px var(--mono);color:var(--text-h)}.drift-table{margin-bottom:16px}.alloc-suggestions h4{margin:0 0 8px}.alloc-suggestions ul{margin:0 0 12px;padding-left:20px}.alloc-suggestions li{margin-bottom:4px}.alloc-note{font:400 12px var(--sans);color:var(--warning);margin:8px 0 0}.alloc-footnote{font:400 12px var(--sans);color:var(--text-dim);margin:4px 0 0}.linked-accounts-section{margin-top:32px}.linked-accounts-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.linked-accounts-header h3{margin:0}.linked-items-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.linked-item{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);padding:14px 16px}.linked-item-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.linked-item-row strong{color:var(--text-h);font-size:15px}.linked-item .last-sync{color:var(--text-dim);font-size:12px;font-family:var(--mono)}.linked-item-error{background:var(--warning-wash);border-radius:var(--r-md);color:var(--warning);font:400 12px var(--sans);border:1px solid #a6791c33;margin-top:8px;padding:8px 12px}.linked-subaccount-list{border-top:1px dashed var(--border);flex-direction:column;gap:4px;margin:10px 0 0;padding:10px 0 0;list-style:none;display:flex}.linked-subaccount-list li{font:400 13px var(--sans);color:var(--text)}.linked-subaccount-list em{color:var(--text-h);font-style:normal}.plaid-mapping-dialog table{border-collapse:collapse;width:100%;font-size:13px}.plaid-mapping-dialog th,.plaid-mapping-dialog td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:8px 10px}.plaid-mapping-dialog thead th{background:var(--bg-alt);color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em}.plaid-mapping-dialog tbody tr:last-child td{border-bottom:none}.plaid-mapping-dialog select,.plaid-mapping-dialog input{font:400 13px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;width:100%;padding:6px 10px}.plaid-mapping-dialog select:focus,.plaid-mapping-dialog input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.plaid-mapping-dialog input:disabled,.plaid-mapping-dialog select:disabled{opacity:.5;cursor:not-allowed}.account-detail-page .breadcrumbs{font:400 12px var(--sans);color:var(--text-dim);margin-bottom:8px}.account-detail-page .breadcrumbs a{color:var(--text)}.positions-table,.holdings-table,.exposures-table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-lg);width:100%;margin-bottom:16px;font-size:14px;overflow:hidden}.positions-table th,.positions-table td,.holdings-table th,.holdings-table td,.exposures-table th,.exposures-table td{border-bottom:1px solid var(--border);text-align:left;padding:8px 14px}.positions-table thead th,.holdings-table thead th,.exposures-table thead th{background:var(--bg-alt);color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em}.lots-table{border-collapse:collapse;width:100%;margin:4px 0;font-size:13px}.lots-table th,.lots-table td{border-bottom:1px solid var(--border);text-align:left;padding:6px 12px}.lots-table thead th{color:var(--text-dim);font:600 10px var(--sans);text-transform:uppercase;letter-spacing:.08em}.lots-table tr:last-child td{border-bottom:none}.lots-table tr.basis-unknown{color:var(--text-dim);font-style:italic}.lots-table .gain-pos{color:var(--positive)}.lots-table .gain-neg{color:var(--negative)}.lot-term{border-radius:var(--r-sm,4px);font:600 10px var(--sans);letter-spacing:.04em;border:1px solid var(--border);padding:1px 7px;display:inline-block}.lot-term--lt{background:var(--positive-wash);color:var(--positive);border-color:var(--positive)}.lot-term--st{background:var(--accent-wash);color:var(--text-h);border-color:var(--border-strong)}.lots-status{color:var(--text-dim);padding:8px 2px;font-size:13px}.lots-status.error{color:var(--negative)}.lots-disclaimer{color:var(--text-dim);margin:-8px 0 16px;font-size:12px}.ov-grid{grid-template-columns:210px 1fr;gap:16px;margin-bottom:18px;display:grid}@media (width<=720px){.ov-grid{grid-template-columns:1fr}}.acct-balance-card{flex-direction:column;display:flex}.acct-balance__value{font:600 26px var(--mono);color:var(--text-h);letter-spacing:-.01em}.acct-balance__gain{margin-top:4px;font-size:12px}.acct-balance-card .pie-card-body{flex-direction:column}.acct-balance-card .pie-chart-wrap{flex:none;width:100%;height:150px}.acct-balance-card .pie-legend{align-self:stretch;width:100%;max-height:none}.holdings-head{justify-content:space-between;align-items:center;margin:8px 0 12px;display:flex}.holdings-head h3{font:600 16px var(--sans);color:var(--text-h);margin:0}.holdings-table td.num,.holdings-table th.num{text-align:right}.holding-row{cursor:pointer}.holding-row:hover{background:var(--accent-wash)}.holding-row--static{cursor:default}.holding-row--static:hover{background:0 0}.holding-row__caret{vertical-align:middle;color:var(--text-dim);margin-right:6px;display:inline-flex}.holding-detail td{background:var(--bg-alt)}.holding-detail__grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 24px;margin:0;display:grid}.holding-detail__grid dt{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:2px}.holding-detail__grid dd{margin:0;font-size:14px}.lookthrough-cta{border:1px dashed var(--border-strong);border-radius:var(--r-lg);align-items:center;gap:16px;margin:8px 0 16px;padding:16px 18px;display:flex}.lookthrough-cta>div{flex:1;min-width:0}.lookthrough-cta strong{color:var(--text-h);font:600 14px var(--sans)}.lookthrough-cta p{margin:4px 0 0}.accounts-headline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.accounts-balance{flex-direction:column;gap:6px;min-width:0;display:flex}.balance__label{font:600 12px var(--sans);color:var(--text-dim)}.accounts-balance__value{font:400 40px var(--mono);color:var(--text-h);letter-spacing:-.02em}.accounts-headline__donut{flex:0 360px;min-width:0;max-width:360px}.reconnect-nudge{border:1px solid var(--warning);background:var(--warning-wash);border-radius:var(--r-lg);align-items:center;gap:10px;margin-bottom:16px;padding:12px 14px;display:flex}.reconnect-nudge>svg{color:var(--warning);flex-shrink:0}.reconnect-nudge span{color:var(--text);flex:1;font-size:14px}.accounts-list-head{justify-content:space-between;align-items:center;margin:8px 0 12px;display:flex}.accounts-list-head h3{font:600 16px var(--sans);color:var(--text-h);margin:0}.acct-list{flex-direction:column;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.acct-row{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);cursor:pointer;align-items:center;gap:12px;padding:14px 16px;display:flex}.acct-row:hover{background:var(--accent-wash)}.acct-row__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.acct-row__main a{font:600 14px var(--sans);color:var(--text-h);text-decoration:none}.acct-row__main a:hover{text-decoration:underline}.acct-row__meta{color:var(--text-dim);font-size:12px}.acct-row__actions{align-items:center;gap:4px;display:flex}.acct-row__caret{color:var(--text-dim)}.insights-title{font:600 16px var(--sans);color:var(--text-h);margin:8px 0 0}.insights-tabs{border-bottom:1px solid var(--border);gap:20px;margin:12px 0 16px;display:flex}.insights-tabs button{font:600 13px var(--sans);color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0}.insights-tabs button:hover{color:var(--text)}.insights-tabs button.active{color:var(--text-h);border-bottom-color:var(--accent)}.income-section{margin:16px 0 24px}.income-section__title{font:600 16px var(--sans);color:var(--text-h);margin:0 0 12px}.income-body{flex-direction:column;gap:16px;display:flex}.income-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.income-stat{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-alt);flex-direction:column;gap:4px;min-width:0;padding:12px 16px;display:flex}.income-stat__label{font:600 12px var(--sans);color:var(--text-dim)}.income-stat__value{color:var(--text-h);font-size:20px}.income-stat__foot{font:400 11px var(--sans);color:var(--text-dim)}.income-by-ticker{max-width:420px}.income-by-ticker .num-col{text-align:right}.fund-notice{border:1px solid var(--warning);border-radius:var(--r-lg);background:var(--warning-wash);color:var(--text-h);font:400 14px/1.5 var(--sans);margin:0 0 16px;padding:12px 16px}.lookthrough-result p{color:var(--text);margin:8px 0}.lookthrough-result details{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-alt);padding:10px 14px}.lookthrough-result summary{cursor:pointer;font:500 13px var(--sans);color:var(--text-h)}.settings-form{flex-direction:column;gap:24px;display:flex}.settings-form section{flex-direction:column;gap:10px;display:flex}.settings-form section h4{font:600 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin:0 0 4px}.settings-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-row>span{color:var(--text);font-size:14px}.settings-row input[type=text]{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);max-width:280px;color:var(--text);font:400 14px var(--sans);flex:1;padding:6px 10px}.settings-row input[type=text]:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.settings-toggle input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.settings-radio-group{border:0;gap:18px;margin:0;padding:0;display:flex}.settings-radio-group legend{font:500 13px var(--sans);color:var(--text);margin-bottom:6px;padding:0}.settings-radio-group label{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:14px;display:inline-flex}.settings-radio-group input[type=radio]{accent-color:var(--accent)}.settings-hint{color:var(--text-dim);margin:0;font-size:12px}.settings-error{color:var(--negative);font-size:13px}.section-title{font:500 14px var(--sans);color:var(--text);margin:24px 0 8px}.detail-meta-text{color:var(--text-dim);margin:4px 0 16px;font-size:13px}.status-pill{font:500 11px var(--sans);text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);border-radius:999px;padding:2px 8px;display:inline-block}.status-pill.status-pending{background:var(--accent-wash);color:var(--text-h);border-color:var(--border-strong)}.status-pill.status-running{background:var(--accent-wash);color:var(--accent);border-color:var(--accent)}.status-pill.status-succeeded{background:var(--positive-wash);color:var(--positive);border-color:var(--positive)}.status-pill.status-failed{background:var(--negative-wash);color:var(--negative);border-color:var(--negative)}.error-text{color:var(--negative);font-family:var(--mono);font-size:12px}.lead{font:400 13px/1.55 var(--sans);color:var(--text);max-width:620px;margin:0 0 18px}.presets{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.btn.ghost{background:0 0}.filters{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-alt);flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;padding:14px 16px;display:flex}.filters-more{margin-top:-8px}.filters-more.is-collapsed{display:none}.crit-f{flex-direction:column;gap:4px;display:flex}.crit-f label{font:500 11px var(--sans);color:var(--text-dim)}.crit-f input{font:400 13px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;min-width:140px;padding:7px 10px}.crit-f input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.crit-f input::placeholder{color:var(--text-dim)}.star-btn{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:2px;display:inline-flex}.star-btn[aria-pressed=true]{color:var(--accent)}.star-btn:hover{color:var(--text-h)}.screener-criteria{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-alt);flex-wrap:wrap;align-items:flex-start;gap:16px 20px;margin-bottom:20px;padding:16px;display:flex}.screener-field{flex-direction:column;gap:4px;display:flex}.screener-field label{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.screener-field input,.screener-field select{font:400 14px var(--sans);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);outline:none;min-width:120px;padding:7px 10px}.screener-field input:focus,.screener-field select:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.screener-sectors{border:0;grid-template-columns:repeat(2,minmax(180px,1fr));gap:4px 16px;margin:0;padding:0;display:grid}.screener-sectors legend{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin-bottom:4px;padding:0}.screener-sectors label{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.screener-sectors input[type=checkbox]{accent-color:var(--accent)}.screener-actions{gap:8px;display:flex}.screener-table th{padding:0}.screener-table .sort-btn{appearance:none;cursor:pointer;width:100%;height:100%;font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);background:0 0;border:0;align-items:center;gap:4px;padding:10px 12px;display:inline-flex}.screener-table th.num .sort-btn{justify-content:flex-end}.screener-table .sort-btn:hover{color:var(--text-h)}.screener-table .sort-caret{color:var(--accent);font-size:9px}.screener-inspect-btn{padding:2px 9px;font-weight:600}.held-badge{border-radius:var(--r-pill);background:var(--accent-wash);border:1px solid var(--accent);color:var(--accent);font:500 11px var(--sans);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.held-badge-more{color:var(--text-dim);font-weight:600}.screener-inspect section{margin-bottom:20px}.screener-inspect h4{font:600 13px var(--sans);color:var(--text-h);margin:0 0 6px}.screener-inspect .formula{font-family:var(--mono);color:var(--text-h);margin:2px 0;font-size:13px}.screener-inspect .formula-sub{color:var(--text)}.screener-inspect .formula-note{color:var(--text-dim);margin:4px 0 0;font-size:12px}.screener-inspect .screener-missing{color:var(--warning)}.mfi-compare{margin-top:32px}.mfi-compare-form{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-alt);flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;display:flex}.mfi-compare-form>label{font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim)}.mfi-tickers-input{width:100%;font:400 14px var(--mono);color:var(--text-h);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);resize:vertical;outline:none;padding:8px 10px}.mfi-tickers-input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.mfi-compare-controls{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.mfi-report{margin-bottom:24px}.mfi-miss-groups{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.mfi-miss-group h4{font:600 13px var(--sans);color:var(--text-h);margin:0 0 6px}.mfi-miss-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.mfi-miss-list .ticker{font-family:var(--mono);color:var(--text-h)}.notif-bell{display:inline-flex;position:relative}.notif-bell .icon-btn{position:relative}.notif-badge{border-radius:var(--r-pill);background:var(--negative);min-width:16px;height:16px;color:var(--ivory);font:600 10px/16px var(--sans);text-align:center;pointer-events:none;padding:0 4px;position:absolute;top:-4px;right:-6px}.notif-panel{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);width:340px;max-height:70vh;box-shadow:var(--shadow-pop);z-index:60;animation:dropdown-in .12s var(--ease);position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto}.notif-panel-head,.notif-panel-foot{justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.notif-panel-head span{font:600 13px var(--sans);color:var(--text-h)}.notif-panel-foot{border-top:1px solid var(--border)}.notif-empty{font:400 13px var(--sans);color:var(--text-dim);padding:16px 12px}.notif-list{margin:0;padding:0 4px;list-style:none}.notif-item{text-align:left;border-radius:var(--r-sm);cursor:pointer;width:100%;transition:background var(--t-fast) var(--ease);background:0 0;border:none;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.notif-item:hover{background:var(--accent-wash)}.notif-item-title{font:500 13px var(--sans);color:var(--text)}.notif-item.unread .notif-item-title,.notif-row.unread .notif-item-title{color:var(--text-h);font-weight:650}.notif-item-body{font:400 12px var(--sans);color:var(--text-dim)}.notif-item-when{font:400 11px var(--sans);color:var(--text-dim)}.notif-page-list{flex-direction:column;gap:4px;margin:12px 0;padding:0;list-style:none;display:flex}.overlap-section{margin:24px 0}.overlap-section h3{margin:0 0 4px}.overlap-caption{margin:0 0 12px;font-size:13px}.overlap-scroll{overflow-x:auto}.overlap-matrix{border-collapse:collapse;font-size:13px}.overlap-matrix th,.overlap-matrix td{border:1px solid var(--border);text-align:center;white-space:nowrap;padding:6px 10px}.overlap-matrix thead th,.overlap-matrix tbody th{font:600 12px var(--sans);color:var(--text-h);background:var(--bg-alt)}.overlap-matrix tbody th{text-align:left}.overlap-mv{font-size:11px;font-weight:400;display:block}.overlap-matrix .overlap-diag{color:var(--text-dim);background:var(--bg-alt)}.overlap-offenders-title{margin:20px 0 8px}.overlap-offenders{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.notif-row{border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg-elev);align-items:center;gap:10px;padding:4px 10px 4px 4px;display:flex}.notif-row.unread{border-left:3px solid var(--accent)}.notif-row-main{text-align:left;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;padding:8px 10px;display:flex}.notif-row-main:hover{background:var(--accent-wash)}.overlap-offender-row{background:var(--bg-alt);border:1px solid var(--border);cursor:pointer;width:100%;font:inherit;color:var(--text);text-align:left;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;display:flex}.overlap-offender-row:hover{border-color:var(--border-strong)}.overlap-offender-label{flex:1}.overlap-offender-pct{font-family:var(--mono);font-weight:600}.overlap-shared,.overlap-shared-empty{margin:6px 0 10px}.fund-compare-results{border:1px solid var(--border);border-radius:6px;max-width:480px;margin:4px 0 0;padding:0;list-style:none;overflow:hidden}.fund-compare-results li+li{border-top:1px solid var(--border)}.fund-compare-results button{cursor:pointer;width:100%;font:inherit;color:var(--text);text-align:left;background:0 0;border:none;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.fund-compare-results button:hover{background:var(--accent-wash)}.fund-compare-results .ticker{font-family:var(--mono);color:var(--text-h);min-width:56px}.overlap-headline{margin:8px 0}.fees-section{margin:24px 0}.fees-section h3{font:600 15px var(--sans);color:var(--text-h);margin:0 0 8px}.fees-headline{color:var(--text);margin:0 0 4px}.fees-headline strong{color:var(--text-h)}.fees-coverage-note{color:var(--text-dim);margin:0 0 12px;font-size:13px}.fees-effective{color:var(--text-dim)}.billing-banner{font:500 13px var(--sans);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 32px;display:flex}.billing-banner-warn{background:var(--warning-wash);color:var(--warning)}.billing-banner-danger{background:var(--negative-wash);color:var(--negative)}.billing-banner-cta{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.billing-banner-dismiss{color:inherit;cursor:pointer;opacity:.7;border-radius:var(--r-sm);background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;padding:4px;display:inline-flex}.billing-banner-dismiss:hover{opacity:1}.paywall{justify-content:center;padding:48px 16px;display:flex}.paywall-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:560px;box-shadow:var(--shadow-card);text-align:center;padding:32px}.paywall-eyebrow{font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.paywall-card h2{font:600 24px/1.2 var(--serif);color:var(--text-h);margin-bottom:12px}.paywall-lede{color:var(--text);margin-bottom:24px}.paywall-features{text-align:left;gap:16px;margin-bottom:28px;padding:0;list-style:none;display:grid}.paywall-features li{align-items:flex-start;gap:12px;display:flex}.paywall-feature-icon{color:var(--accent);flex:none;margin-top:2px;display:inline-flex}.paywall-features strong{color:var(--text-h);font-weight:600;display:block}.paywall-feature-body{color:var(--text);font-size:13px}.paywall-cta{justify-content:center;width:100%}.pricing-page{max-width:680px;margin:0 auto;padding:48px 16px}.pricing-head{text-align:center;margin-bottom:32px}.pricing-eyebrow{font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.pricing-head h1{font:600 32px/1.15 var(--serif);color:var(--text-h);margin-bottom:12px}.pricing-lede{color:var(--text);max-width:520px;margin:0 auto}.pricing-toggle{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--r-pill);gap:4px;margin:0 auto 28px;padding:4px;display:inline-flex}.pricing-page>.pricing-toggle{width:fit-content;display:flex}.pricing-toggle-option{color:var(--text);font:500 13px var(--sans);border-radius:var(--r-pill);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:8px 18px;display:inline-flex}.pricing-toggle-option.active{background:var(--bg-elev);color:var(--text-h);box-shadow:var(--shadow-card)}.pricing-save{font:600 10px var(--sans);letter-spacing:.04em;text-transform:uppercase;color:var(--positive);background:var(--positive-wash);border-radius:var(--r-pill);padding:2px 6px}.pricing-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);max-width:420px;box-shadow:var(--shadow-card);text-align:center;margin:0 auto;padding:32px}.pricing-amount{color:var(--text-h);justify-content:center;align-items:baseline;gap:2px;display:flex}.pricing-currency{font:600 22px var(--serif);align-self:flex-start;margin-top:6px}.pricing-value{font:600 52px/1 var(--serif)}.pricing-per{font:500 14px var(--sans);color:var(--text-dim)}.pricing-annual-note{color:var(--text-dim);margin:8px 0 20px;font-size:12px}.pricing-features{text-align:left;gap:12px;margin-bottom:24px;padding:0;list-style:none;display:grid}.pricing-features li{color:var(--text);align-items:flex-start;gap:10px;font-size:13px;display:flex}.pricing-features svg{color:var(--positive);flex:none;margin-top:2px}.pricing-cta{justify-content:center;width:100%}.pricing-fineprint{color:var(--text-dim);margin-top:12px;font-size:11px}.billing-success{justify-content:center;padding:64px 16px;display:flex}.billing-success-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:460px;box-shadow:var(--shadow-card);text-align:center;padding:32px}.billing-success-card h1{font:600 24px/1.2 var(--serif);color:var(--text-h);margin:12px 0}.billing-success-card p{color:var(--text);margin-bottom:20px}.billing-success-icon{color:var(--positive)}.settings-billing-row{align-items:center;gap:12px}.settings-billing-status{flex:1;font-size:13px}.settings-billing-ok{color:var(--text)}.settings-billing-warn{color:var(--warning)}.rating-badge{vertical-align:middle;align-items:center;gap:1px;line-height:1;display:inline-flex}.rating-badge .rating-star.filled{color:var(--accent)}.rating-badge .rating-star.empty,.rating-badge-none{color:var(--text-dim)}.rating-popover-root{display:inline-flex;position:relative}.rating-popover-trigger{cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;align-items:center;margin:-2px;padding:2px;display:inline-flex}.rating-popover-trigger:hover{background:var(--accent-wash)}.rating-popover{z-index:60;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);min-width:280px;max-width:340px;box-shadow:var(--shadow-pop);animation:dropdown-in .12s var(--ease);padding:12px 14px;position:absolute;top:calc(100% + 6px);left:0}.rating-popover-line{font:400 13px var(--sans);color:var(--text-h);margin:0 0 6px}.rating-popover-score{align-items:center;gap:6px;display:flex}.rating-popover-rule{border:none;border-top:1px solid var(--border);margin:10px 0}.rating-popover-note{font:400 12px var(--sans);color:var(--text);margin:0 0 6px}.rating-popover-guards{font:500 11px var(--sans);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin:8px 0 0}.compare-chips{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.compare-chip{border:1px solid var(--border);background:var(--bg-elev);font:500 13px var(--sans);border-radius:999px;align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.compare-chip a{color:var(--text-h);font-family:var(--mono);text-decoration:none}.compare-chip a:hover{text-decoration:underline}.compare-picker{min-width:220px}.compare-cta{align-self:center;margin-left:auto}.detail-section{margin-top:28px}.detail-section .section-title{margin-bottom:12px}.stat-row{flex-wrap:wrap;gap:24px;margin-bottom:14px;display:flex}.stat-row .stat{flex-direction:column;gap:2px;display:flex}.stat-row .stat-label{color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.06em}.stat-row .stat-value{color:var(--text-h);font:500 20px var(--mono);font-variant-numeric:tabular-nums}.detail-section .stocks-table td.num,.detail-section .stocks-table th.num{text-align:right;font-variant-numeric:tabular-nums}.detail-section .stocks-table td.num{font-family:var(--mono)}.detail-section .roles{color:var(--text-dim)}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.compare-table th[scope=col] .ticker{font-family:var(--mono);color:var(--text-h);text-decoration:none}.compare-table th[scope=col] .ticker:hover{text-decoration:underline}.compare-fund-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:400;overflow:hidden}.compare-table th[scope=row]{white-space:nowrap}.mix-cell{min-width:160px}.mix-bar{border-radius:4px;gap:2px;height:10px;display:flex;overflow:hidden}.mix-seg{border-radius:2px;height:100%;display:block}.mix-text{margin-top:4px;font-size:11px}.chart-legend{font:500 12px var(--sans);color:var(--text);flex-wrap:wrap;gap:16px;margin:8px 4px 0;display:flex}.chart-legend-item{align-items:center;gap:6px;display:inline-flex}.chart-legend-swatch{border-radius:2px;width:10px;height:10px}.compare-window-note{margin:8px 4px 0;font-size:12px}.compare-holdings{margin:24px 0}.compare-holdings h3{margin:0 0 8px}.compare-holdings-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.compare-holdings-col h4{font:600 13px var(--sans);color:var(--text-h);margin:0 0 6px}.qoq-chip{font:600 11px var(--sans);border:1px solid var(--border);border-radius:999px;padding:1px 8px;display:inline-block}.qoq-chip.qoq-pos{background:var(--positive-wash);color:var(--positive);border-color:var(--positive)}.qoq-chip.qoq-neg{background:var(--negative-wash);color:var(--negative);border-color:var(--negative)}.qoq-chip.qoq-neutral{color:var(--text-dim)}.qoq-change{font:500 11px var(--sans);color:var(--text-dim);margin-left:6px}.code-badge{text-align:center;border-radius:var(--r-md);min-width:20px;font:600 11px var(--mono);border:1px solid var(--border);padding:1px 6px;display:inline-block}.code-badge.code-buy{background:var(--positive-wash);color:var(--positive);border-color:var(--positive)}.code-badge.code-sell{background:var(--negative-wash);color:var(--negative);border-color:var(--negative)}.code-badge.code-other{color:var(--text-dim)}.deriv-flag{color:var(--text-dim);font-size:11px}.chart-tooltip{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-pop);font-family:var(--sans);padding:6px 10px}.chart-tooltip-label{color:var(--text-dim);margin-bottom:2px;font-size:11px}.chart-tooltip-value{color:var(--text-h);font:600 12px var(--mono);font-variant-numeric:tabular-nums}.chart-tooltip-sub{color:var(--text-dim);margin-top:2px;font-size:11px}.detail-stats-row>.table-scroll{flex:320px;min-width:0}.detail-stats-row>.table-scroll>.stats-table{width:100%}.nav-hamburger,.nav-mobile-panel{display:none}@media (width<=720px){.app-header{gap:12px;padding:0 16px}.app-header .nav-desktop{display:none}.nav-hamburger{display:inline-flex}.app-header .nav-mobile-panel{background:var(--bg-elev);border-bottom:1px solid var(--border);height:auto;box-shadow:var(--shadow-pop);z-index:20;animation:dropdown-in .12s var(--ease);flex-direction:column;gap:2px;margin:0;padding:6px;display:flex;position:absolute;top:100%;left:0;right:0}.app-header .nav-mobile-panel a{height:auto;font:500 14px var(--sans);color:var(--text-h);border-radius:var(--r-sm);border-bottom:none;padding:12px 14px}.app-header .nav-mobile-panel a:hover,.app-header .nav-mobile-panel a[aria-current=page]{background:var(--accent-wash);color:var(--text-h)}}@media (width<=640px){.app-main{padding:20px 16px}.toolbar{flex-wrap:wrap}.toolbar .search-wrap,.search-wrap{flex:100%;max-width:none}.toolbar .muted{flex:100%}.detail-meta{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 16px;display:grid}.account-balance-banner__row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;display:grid}.account-balance-banner__headline{border-right:none;padding-right:0}.pager{flex-wrap:wrap;justify-content:space-between;gap:10px}table.cardable{border:none;display:block}table.cardable thead{display:none}table.cardable tbody{display:block}table.cardable tr{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-elev);margin-bottom:10px;display:block;overflow:hidden}table.cardable td{white-space:normal;text-overflow:clip;text-align:right;border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;max-width:none;padding:8px 14px;display:flex;overflow:visible}table.cardable tr td:last-child{border-bottom:none}table.cardable td:empty{display:none}table.cardable td:before{content:attr(data-label);text-align:left;color:var(--text-dim);font:600 11px var(--sans);text-transform:uppercase;letter-spacing:.08em;flex:none}}@media (width<=480px){.modal-backdrop{padding:12px}.modal-sm,.modal-md,.modal-lg{max-width:100%}}
