/* === STYLE 0 === */
@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-new(root),::view-transition-old(root){animation-duration:.65s}.topbar{view-transition-name:mp-topbar}html.mp-theme-vt .topbar{view-transition-name:none}}:root{color-scheme:light;--font-body:'Archivo',system-ui,sans-serif;--font-mono:'IBM Plex Mono',monospace;--fs:1;--fs-micro:11px;--fs-note:13px;--fs-xs:12px;--fs-sm:13px;--fs-base:14px;--fs-md:16px;--fs-lg:18px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:27px;--fs-4xl:32px;--font-num:var(--font-body);--font-ticker:var(--font-mono);--font-label:var(--font-body);--font-head:var(--font-body);--bg:#F4F6F5;--panel:#FFFFFF;--panel-2:#E9EDED;--text:#171B1E;--text-soft:#4B5558;--muted:#6A7377;--rule:#DEE4E3;--rule-strong:#C6CFCD;--accent2:#2F5D50;--accent2-soft:#7FA395;--on-accent:#FFFFFF;--accent:#A64B25;--hover:#E2E7E6;--nav-hover:var(--hover);--accent-soft:#EFC9A8;--accent-tint:#F7EDE4;--good:#1D6A44;--good-tint:#E4F1E9;--bad:#B3261E;--bad-tint:#F7E6E4;--shadow:0 1px 2px rgba(14,26,20,.05),0 8px 24px -16px rgba(14,26,20,.14);--radius:8px;--radius-sm:6px;--shell:1320px}:root[data-theme=dark]{color-scheme:dark;--bg:#12181A;--panel:#1A2224;--panel-2:#222B2D;--text:#ECEFEE;--text-soft:#B6BFBD;--muted:#8A938F;--rule:#2A3436;--rule-strong:#3A4547;--accent2:#8FB3A5;--accent2-soft:#B6D0C6;--on-accent:#12181A;--accent:#D98A5E;--hover:#2A3436;--nav-hover:color-mix(in srgb, var(--text) 14%, var(--hover));--accent-soft:#8A4A2C;--accent-tint:#2A211C;--good:#5BC48C;--good-tint:#17301F;--bad:#E88A80;--bad-tint:#331C1A;--shadow:0 1px 2px rgba(0,0,0,.3),0 12px 30px -18px rgba(0,0,0,.6)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html{overflow-x:hidden;overflow-x:clip}html{scrollbar-gutter:stable}@media (pointer:coarse){html{background:var(--panel)}}body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:calc(var(--fs-md) * var(--fs,1));line-height:1.5;-webkit-font-smoothing:antialiased;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0)}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums,ui-monospace,monospace;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}a{color:inherit}button{font-family:inherit;cursor:pointer}.topbar{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);transition:background .25s ease,backdrop-filter .25s ease,border-color .25s ease}.topbar.grad-mode,html.mp-hero .topbar{background:0 0;backdrop-filter:none;border-bottom-color:transparent}.topbar.grad-mode.scrolled{background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom-color:var(--rule)}.topbar__in{max-width:var(--shell);margin:0 auto;padding:14px 22px;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}.brand__full{display:flex;align-items:center;max-height:40px}.brand__full img,.brand__full svg{max-height:40px;width:auto;display:block}@media (max-width:560px){.brand__full img,.brand__full svg{max-width:260px}}.brand__mark{width:34px;height:34px;border-radius:8px;flex-shrink:0;background:var(--accent-tint);display:grid;place-items:center;position:relative;overflow:hidden}.brand__mark[hidden]{display:none}.brand__mark svg{width:20px;height:20px}.brand__txt{display:flex;flex-direction:column;line-height:1.05}.brand__txt[hidden]{display:none}.brand__name{font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:calc(var(--fs-base) * var(--fs,1));white-space:nowrap}.brand__sub{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.brand__sub strong,.brand__sub b{color:var(--accent);font-weight:700;letter-spacing:.08em}.mp-logo-svg{width:22px;height:22px;display:block}.hero__eyebrow{display:inline-block;font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.market-toggle{display:flex;background:var(--panel-2);border:1.5px solid var(--rule-strong);border-radius:999px;padding:3px;gap:2px}.market-toggle button{border:0;background:0 0;color:var(--muted);font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:700;letter-spacing:.01em;padding:7px 10px;border-radius:999px;transition:all .18s;display:flex;align-items:center;gap:0;cursor:pointer}.market-toggle button:hover{color:var(--text)}.market-toggle button[aria-pressed=true]{background:var(--accent2);color:var(--on-accent);box-shadow:0 1px 3px rgba(0,0,0,.18)}.market-toggle .flag{height:14px;width:auto;border-radius:2px;overflow:hidden;flex-shrink:0;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.1)}.market-toggle button[aria-disabled=true]{cursor:not-allowed;position:relative;color:var(--muted)}.market-toggle button[aria-disabled=true]:hover{color:var(--muted)}.market-toggle button[aria-disabled=true] .flag{filter:grayscale(.7);opacity:.55}.market-toggle button[aria-disabled=true]::after{content:attr(data-tip);position:absolute;top:calc(100% + 9px);left:50%;transform:translateX(-50%) translateY(-3px);background:var(--text);color:var(--bg);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;letter-spacing:.01em;padding:5px 9px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;box-shadow:var(--shadow);z-index:90;transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}.market-toggle button[aria-disabled=true]:focus-visible::after,.market-toggle button[aria-disabled=true]:hover::after{opacity:1;visibility:visible;transform:translateX(-50%);transition:opacity .16s ease,transform .16s ease}.topbar__spacer{flex:1}.search{position:relative;flex:0 1 320px;max-width:320px;margin-left:auto}.search input{width:100%;border:1px solid var(--rule);background:var(--panel);color:var(--text);border-radius:999px;padding:9px 30px 9px 36px;font-size:calc(var(--fs-base) * var(--fs,1));font-family:inherit;line-height:1;transition:border-color .18s,box-shadow .18s}.search input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-tint)}.search input::placeholder{color:var(--muted);opacity:1}.search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:15px;height:15px;color:var(--muted)}.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:0;background:0 0;color:var(--muted);cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:center;padding:0;line-height:0}.search-clear svg{width:12px;height:12px;display:block}.search-clear:hover{background:var(--hover);color:var(--text)}.search-clear[hidden]{display:none}.search.has-kbd input{padding-right:70px}.search-kbd{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;font-family:inherit;font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:500;line-height:1;letter-spacing:.04em;color:var(--muted);opacity:.6;background:0 0;border:1px solid currentColor;border-radius:4px;padding:3px 5px 2px;white-space:nowrap}:root:not([data-theme=dark]) .search-kbd{border-color:color-mix(in srgb,currentColor 50%,transparent)}.search input:focus~.search-kbd,.search input:not(:placeholder-shown)~.search-kbd{display:none}.search input:focus,.search input:not(:placeholder-shown){padding-right:30px}@media (hover:none),(pointer:coarse),(min-width:1061px) and (max-width:1180px){.search-kbd{display:none}.search.has-kbd input{padding-right:30px}}.search input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}.search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.search-dd{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--rule);border-radius:11px;box-shadow:var(--shadow);padding:6px;z-index:130;max-height:min(430px,62vh);overflow:auto}.search-dd__lbl{font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:8px 12px 4px}.search-dd__item{display:block;width:100%;text-align:left;border:0;background:0 0;cursor:pointer;padding:7px 12px;border-radius:7px;font-family:inherit;line-height:1}.search-dd__item.is-active,.search-dd__item:hover{background:var(--hover)}.search-dd__item:focus-visible{outline:2px solid var(--accent2);outline-offset:-2px}.search-dd__title{display:block;font-size:calc(var(--fs-base) * var(--fs,1));font-weight:700;color:var(--text);line-height:1.35}.search-dd__sub{display:block;font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--muted);line-height:1.45;margin-top:1px}.search-dd__sub b,.search-dd__title b{color:var(--accent2);font-weight:700}.search-dd__none{padding:12px;font-size:calc(var(--fs-sm) * var(--fs,1));color:var(--muted)}.search-dd__item--query{border-bottom:1px solid var(--rule);border-radius:7px 7px 0 0;margin-bottom:2px}.search-dd__item--query:last-child,.search-dd__item--query:not(:has(~ .search-dd__item)){border-bottom:0;border-radius:7px;margin-bottom:0}.search-dd__item--query .search-dd__title{color:var(--accent2)}.icon-btn{width:38px;height:38px;border-radius:999px;border:1px solid var(--rule);background:var(--panel);display:grid;place-items:center;color:var(--text);flex-shrink:0;transition:all .18s}@media (hover:hover){.icon-btn:hover{border-color:var(--rule-strong);background:var(--hover)}}.icon-btn svg{width:18px;height:18px;display:block}.topbar__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.ad{display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.ad__ph{width:100%;border:1px dashed var(--rule-strong);border-radius:var(--radius-sm);background:repeating-linear-gradient(135deg,transparent,transparent 9px,color-mix(in srgb,var(--rule) 40%,transparent) 9px,color-mix(in srgb,var(--rule) 40%,transparent) 10px);color:var(--muted);text-align:center;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.18em;text-transform:uppercase;font-weight:600;display:grid;place-items:center}.ad--leader .ad__ph{min-height:90px}.ad--inline .ad__ph{min-height:120px}.ad--drawer{margin-top:22px}.ad--drawer .ad__ph{min-height:250px;width:100%}.ad--drawer+.drawer-close-btn{margin-top:22px}.ad--rail .ad__ph{min-height:600px}.ad--footer .ad__ph{min-height:90px}.ad__ph small{display:block;font-size:calc(var(--fs-micro) * var(--fs,1));opacity:.7;margin-top:3px;letter-spacing:.1em}body.ads-off .ad,html.ads-off .ad{display:none!important}body.ads-off .ad-shell,html.ads-off .ad-shell{display:none!important}html.ads-off.ads-direct-on .ad.ad--direct{display:flex!important}html.ads-off.ads-direct-on .ad-shell.ad--direct{display:block!important}.shell{max-width:var(--shell);margin:0 auto;padding:0 22px}.hero{position:relative;padding:30px 0 14px;display:grid;grid-template-columns:1fr auto;grid-template-areas:"lead stats" "sub sub";align-items:end;column-gap:24px;row-gap:12px}.prov-head{position:relative}.hero::before,.page-head::before,.prov-head::before{content:"";position:absolute;top:0;left:50%;width:100vw;transform:translateX(-50%);height:0;z-index:-1;pointer-events:none}.hero.has-gradient::before,.page-head.has-gradient::before,.prov-head.has-gradient::before,html.mp-hero .hero::before,html.mp-hero .page-head::before,html.mp-hero .prov-head::before{top:calc(-1 * var(--hero-grad-extend,0px));height:420px}@media (max-width:680px){.hero.has-gradient::before,.page-head.has-gradient::before,.prov-head.has-gradient::before,html.mp-hero .hero::before,html.mp-hero .page-head::before,html.mp-hero .prov-head::before{height:300px}}:root[data-theme] .prov-head.prov-tint::before{--pt:color-mix(in srgb, var(--prov-c) var(--prov-tint-l,4%), var(--bg));background:linear-gradient(180deg,var(--pt) 0,var(--pt) 30%,color-mix(in srgb,var(--pt) 90%,transparent) 45%,color-mix(in srgb,var(--pt) 72%,transparent) 58%,color-mix(in srgb,var(--pt) 50%,transparent) 70%,color-mix(in srgb,var(--pt) 30%,transparent) 82%,color-mix(in srgb,var(--pt) 12%,transparent) 92%,transparent 100%)}:root[data-theme=dark] .prov-head.prov-tint::before{--pt:color-mix(in srgb, var(--prov-c) var(--prov-tint-d,16%), var(--bg))}.page-head{position:relative}.hero__lead{grid-area:lead;max-width:640px}.hero h1{margin:0 0 8px;font-family:var(--font-head);font-size:clamp(26px,3.4vw,40px);line-height:1.05;font-weight:var(--head-w,800);letter-spacing:-.02em}.hero h1 em{font-style:normal;color:var(--accent);white-space:nowrap}.hero p{margin:0;color:var(--muted);font-size:calc(var(--fs-md) * var(--fs,1))}.hero__sub-wrap{grid-area:sub}.hero__sub{margin:0;max-width:55%}.hero__stats{grid-area:stats;display:flex;gap:39px}.hstat{text-align:right}.hero__announce{display:inline-flex;align-items:stretch;margin-top:14px;max-width:100%;background:var(--accent-tint);border:1px solid var(--accent-soft);border-radius:var(--radius-sm);overflow:hidden}.hero__announce .ann-text{font-size:calc(var(--fs-md) * var(--fs,1));color:var(--text-soft);flex:1;min-width:0;display:flex;align-items:center;padding:10px 16px}.hero__announce .ann-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:10px 22px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:700;white-space:nowrap;background:var(--accent);border:0;border-left:1px solid var(--accent-soft);color:var(--on-accent);text-decoration:none;transition:background .15s}.hero__announce .ann-btn:hover{background:color-mix(in srgb,var(--accent) 82%,var(--text))}@media (max-width:680px){.hero__announce .ann-text{padding:12px 14px;font-size:calc(var(--fs-base) * var(--fs,1))}.hero__announce .ann-btn{padding:12px 16px;font-size:calc(var(--fs-xs) * var(--fs,1))}}@media (max-width:900px){.hero{grid-template-columns:1fr;grid-template-areas:"lead" "sub" "stats"}.hero__sub{max-width:none}.hstat{text-align:left}}.hstat__n{font-size:calc(var(--fs-3xl) * var(--fs,1));font-weight:600;letter-spacing:-.01em}.hstat__l{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:2px}.controls{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);padding:16px 18px;margin-top:10px;box-shadow:var(--shadow)}.fgroup+.fgroup{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}.fgroup__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.fgroup__title{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700}.chips{display:flex;flex-wrap:wrap;gap:7px}@media (min-width:681px){.chips:empty{min-height:calc(var(--chip-rows,1) * 36px - 9px)}#providerChips{--chip-rows:3}#sectorChips{--chip-rows:4}#strategyChips{--chip-rows:3}}@media (min-width:681px) and (max-width:759px){#providerChips{--chip-rows:4}#sectorChips{--chip-rows:5}}@media (min-width:760px) and (max-width:819px){#sectorChips{--chip-rows:5}}@media (min-width:1024px){#strategyChips{--chip-rows:2}}@media (min-width:1100px){#providerChips{--chip-rows:2}#sectorChips{--chip-rows:3}}.chips.is-rowed{flex-direction:column;flex-wrap:nowrap;row-gap:9px}.chips__row{display:flex;flex-wrap:wrap;gap:7px;transition:column-gap .16s}.chips.is-measuring .chip{transition:none!important}.chip{border:1.5px solid var(--rule-strong);background:var(--panel-2);color:var(--text-soft);border-radius:999px;padding:6.5px 13px 5.5px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;line-height:1;display:inline-flex;align-items:center;gap:7px;position:relative;transition:all .16s;cursor:pointer}@media (hover:hover){.chip:not([aria-disabled=true]):not([aria-pressed=true]):hover{border-color:var(--muted);background:var(--panel)}}.chip[aria-pressed=true]{background:var(--accent2);color:var(--on-accent);border-color:var(--accent2);font-weight:700;padding-left:10px}.chip[aria-pressed=true]::before{content:"";width:14px;height:14px;border-radius:50%;flex-shrink:0;margin:-1px 0;background:rgba(255,255,255,.25) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center/10px no-repeat}:root[data-theme=dark] .chip[aria-pressed=true]::before{background:rgba(6,23,35,.22) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23061723' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round' d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center/10px no-repeat}.chip .ct{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;line-height:1}.chip[aria-pressed=true] .ct{color:inherit}.chip.is-empty:not([aria-pressed=true]){opacity:.42}.chip[aria-disabled=true]{cursor:default}.chip--prov{padding-left:9px}.chip--prov[aria-pressed=true]{padding-left:8px}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.controls__foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}.field{display:flex;align-items:center;gap:8px}.field label{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;white-space:nowrap}.range-wrap,select.sel{border:1px solid var(--rule);background:var(--panel-2);color:var(--text);border-radius:8px;padding:7px 10px;font-size:calc(var(--fs-sm) * var(--fs,1));font-family:inherit}select.sel:focus{outline:0;border-color:var(--accent)}select.sel.is-active{border-color:var(--accent2-soft);background:var(--hover);color:var(--accent2);font-weight:700}.range-wrap{display:flex;align-items:center;gap:10px;padding:6px 12px}.range-wrap.is-active{border-color:var(--accent2-soft);background:var(--hover);box-shadow:0 0 0 2px var(--hover)}.range-wrap input[type=range]{accent-color:var(--accent2);width:110px}.range-val{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-xs) * var(--fs,1));min-width:42px;text-align:right;color:var(--text)}.range-wrap.is-active .range-val{color:var(--accent2);font-weight:700}.field.is-active label{color:var(--accent2)}.view-toggle{display:flex;margin-left:auto;border:1px solid var(--rule);border-radius:8px;overflow:hidden}.view-toggle button{border:0;background:var(--panel-2);color:var(--muted);padding:7px 11px;display:grid;place-items:center}.view-toggle button[aria-pressed=true]{background:var(--accent2);color:var(--on-accent)}.view-toggle svg{width:16px;height:16px}.view-toggle--bar{display:none}.btn-reset{border:0;background:0 0;color:var(--accent);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:600;text-decoration:underline;text-underline-offset:3px}.results-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:22px 0 12px;flex-wrap:wrap}.results-bar .count{font-size:calc(var(--fs-sm) * var(--fs,1));color:var(--muted)}.results-bar .count b{color:var(--text);font-weight:700}.updated{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);display:flex;align-items:center;gap:7px}.live-dot{position:relative;width:7px;height:7px;border-radius:50%;background:var(--good)}.live-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;opacity:0;animation:pulse 2.4s infinite}.live-dot.stale{background:var(--muted)}.live-dot.stale::after{animation:none}@keyframes pulse{0%{transform:scale(1);opacity:.6}70%{transform:scale(2.7);opacity:0}100%{transform:scale(1);opacity:0}}.stale-banner{display:flex;align-items:center;gap:10px;background:var(--accent-tint);border:1px solid var(--accent-soft);border-left:4px solid var(--accent);color:var(--text-soft);border-radius:var(--radius-sm);padding:10px 14px;font-size:calc(var(--fs-sm) * var(--fs,1));margin-bottom:14px}.stale-banner svg{width:17px;height:17px;color:var(--accent);flex-shrink:0}.stale-banner b{color:var(--text)}.live-dot.delayed{background:var(--accent)}.layout{display:grid;grid-template-columns:1fr 300px;row-gap:24px;column-gap:24px;align-items:start;padding-bottom:48px;transition:grid-template-columns .22s ease,column-gap .22s ease}.layout[data-view=table]{grid-template-columns:1fr 0px;column-gap:0}.rail{transition:opacity .2s ease,transform .2s ease}.layout[data-view=table] .rail{opacity:0;transform:translateX(16px);pointer-events:none;overflow:hidden}.layout>main{min-width:0}.rail{position:sticky;top:84px;display:flex;flex-direction:column;gap:18px}.rail-card{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);padding:22px 16px 16px;box-shadow:var(--shadow)}.rail-card h3{margin:0 0 6px;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.movers li{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px;margin:0 -8px;border-radius:8px;cursor:pointer;transition:background .14s}.movers li::before{content:"";position:absolute;top:0;left:8px;right:8px;height:1px;background:var(--rule)}.movers li:first-child::before{display:none}.movers li:hover{background:var(--hover)}.movers .mv-tk{font-family:var(--font-ticker);font-weight:600;font-size:calc(var(--fs-sm) * var(--fs,1))}.movers .mv-nm{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.movers .mv-y{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;color:var(--text);font-size:calc(var(--fs-sm) * var(--fs,1))}.movers{list-style:none;margin:0;padding:0}.card,.provhero,.provider-card{--pcs:var(--pc,var(--accent));--pcsh:color-mix(in srgb,var(--pcs) 22%,rgba(14,26,20,.28))}:root[data-theme=dark] :is(.card,.provider-card){--pcsh:color-mix(in srgb,var(--pcs) 40%,transparent)}@supports (color:oklch(from red l c h)){:root:not([data-theme=dark]) :is(.card,.provider-card,.provhero){--pcs:oklch(from var(--pc,var(--accent)) clamp(.55,l,.75) c h)}}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(296px,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:13px;box-shadow:var(--shadow);text-align:left;width:100%;transition:transform .16s,border-color .3s ease,box-shadow .3s ease,border-radius .35s cubic-bezier(.2,.7,.2,1)}.card:has(:focus-visible),.card:hover{transform:translateY(-2px);border-top-left-radius:0;border-top-right-radius:0;border-color:color-mix(in srgb,var(--pcs) 45%,var(--rule));box-shadow:0 1px 2px rgba(14,26,20,.05),0 14px 32px -18px var(--pcsh)}.card__bar{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none;z-index:2}.card__bar::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--pcs),color-mix(in srgb,var(--pcs) 78%,#fff));transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.card:has(:focus-visible) .card__bar::before,.card:hover .card__bar::before{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.card,.card__bar::before,.provider-card{transition:none}}.card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.card__top{min-width:0}.card__ticker{font-family:var(--font-ticker);font-weight:600;font-size:calc(var(--fs-lg) * var(--fs,1));letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.exch{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.1em;color:var(--muted);border:1px solid var(--rule);border-radius:4px;padding:6px 6px 5px;font-family:var(--font-body);font-weight:600;line-height:1;display:inline-flex;align-items:center}.streak{display:inline-flex;align-items:center;gap:3px;margin-left:7px;flex-shrink:0;padding:2px 7px;border:1px solid var(--rule-strong);border-radius:999px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;color:var(--muted);line-height:1;position:relative;cursor:default}.streak svg{width:11px;height:11px;display:block;transform:translateY(-1px)}.sort-streak .streak{background:#fbeddd;border-color:rgba(163,51,39,.35);color:#a33327}.sort-streak .streak svg{fill:#A33327;stroke:#A33327}.streak:hover::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);white-space:nowrap;background:var(--text,#141914);color:var(--bg,#f5f3ee);font-family:var(--font-body);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:500;letter-spacing:0;padding:6px 10px;border-radius:7px;box-shadow:0 6px 20px rgba(0,0,0,.22);z-index:60;pointer-events:none}.card__name{font-size:calc(var(--fs-base) * var(--fs,1));color:var(--text-soft);margin:3px 0 5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prov-badge{display:inline-flex;align-items:center;gap:6px;font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:700;letter-spacing:.04em;color:var(--muted);text-transform:uppercase;white-space:nowrap;flex-shrink:0}.card__yield{display:flex;align-items:baseline;gap:11px;padding:11px 12px;background:var(--accent-tint);border-radius:var(--radius-sm)}.card__yield .y-num{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;font-size:calc(var(--fs-3xl) * var(--fs,1));color:var(--accent);letter-spacing:-.02em}.card__yield .y-lbl{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}.tags{display:flex;flex-wrap:wrap;gap:4px}.tag{font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;letter-spacing:0;padding:3px 6px;border-radius:5px;background:var(--panel-2);border:1px solid var(--rule);color:var(--text-soft);line-height:1}.tag--on{background:var(--hover);border-color:var(--accent2-soft);color:var(--accent2)}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border-radius:var(--radius-sm);overflow:hidden}.metric{background:var(--panel);padding:8px 10px}.metric .m-l{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}.metric .m-v{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-base) * var(--fs,1));font-weight:500;margin-top:2px;display:flex;align-items:center}.aum-star{color:var(--accent);font-weight:700;margin-left:2px}.aum-note{display:flex;gap:5px;align-items:flex-start;margin-top:10px;font-family:var(--font-body);font-size:calc(var(--fs-xs) * var(--fs,1));line-height:1.45;letter-spacing:0;color:var(--muted);text-align:left}.aum-note .aum-star{margin-left:0;flex-shrink:0;line-height:1.35}.price-row{display:flex;align-items:center;justify-content:flex-start;gap:10px}.price-now{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-lg) * var(--fs,1));font-weight:600}.chg{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;padding:2px 7px;border-radius:6px}.price-row .chg{font-size:calc(var(--fs-base) * var(--fs,1));padding:3px 8px}.chg.up{color:var(--good);background:var(--good-tint)}.chg.down{color:var(--bad);background:var(--bad-tint)}.chg.flat{color:var(--muted);background:var(--panel-2)}.range{margin-top:2px}.range__bar{position:relative;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--rule-strong),var(--accent-soft));margin:7px 0 5px}.range__dot{position:absolute;top:50%;width:11px;height:11px;border-radius:50%;background:var(--text);border:2px solid var(--panel);transform:translate(-50%,-50%);box-shadow:0 1px 3px rgba(0,0,0,.3)}:root[data-theme=dark] .range__dot{background:var(--accent)}.range__ends{display:flex;justify-content:space-between;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted)}.range__cap{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}.scrollx{position:relative}.scrollx::after{content:"";position:absolute;top:1px;right:1px;bottom:1px;width:52px;pointer-events:none;opacity:0;transition:opacity .18s;border-radius:0 var(--radius) var(--radius) 0;background:linear-gradient(to left,rgba(14,26,20,.1),rgba(14,26,20,.035) 45%,transparent)}.scrollx.has-more::after{opacity:1}:root[data-theme=dark] .scrollx::after{background:linear-gradient(to left,rgba(255,255,255,.16),rgba(255,255,255,.055) 45%,transparent)}.table-wrap{overflow-x:auto;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow)}table.dt td:first-child,table.dt th:first-child{padding-left:18px}table.dt td:last-child,table.dt th:last-child{padding-right:18px}table.dt td:nth-child(n+3):nth-child(-n+8),table.dt th:nth-child(n+3):nth-child(-n+8){padding-left:8px;padding-right:8px}table.dt{width:100%;border-collapse:collapse;font-size:calc(var(--fs-base) * var(--fs,1));min-width:820px}table.dt th{text-align:right;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:12px 14px;border-bottom:1px solid var(--rule);white-space:nowrap;cursor:pointer;user-select:none;position:sticky;top:0;background:var(--panel)}table.dt th.l{text-align:left}table.dt th[data-active]{color:var(--accent)}table.dt th .arr{font-family:var(--font-num);font-variant-numeric:tabular-nums}table.dt td{padding:11px 14px;border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap}table.dt td.l{text-align:left}table.dt tr{cursor:pointer}table.dt tbody tr:hover td{background:var(--hover)}table.dt .t-tk{font-family:var(--font-ticker);font-weight:600}table.dt .exch{margin-left:5px;position:relative;top:-1.5px}table.dt .t-nm{font-size:calc(var(--fs-base) * var(--fs,1));color:var(--muted);max-width:390px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35;white-space:normal}table.dt .t-y{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;color:var(--text)}table.dt .mono{font-family:var(--font-num);font-variant-numeric:tabular-nums}.empty{text-align:center;padding:60px 20px;color:var(--muted)}.empty svg{width:40px;height:40px;margin-bottom:14px;color:var(--rule-strong)}.empty h3{margin:0 0 6px;color:var(--text);font-family:var(--font-body);font-size:calc(var(--fs-lg) * var(--fs,1));font-weight:var(--head-w,700)}.empty__chip{display:inline-block;background:var(--hover);border:1px solid var(--rule);border-radius:999px;padding:2px 9px;margin:2px 3px;font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:600;color:var(--text);white-space:nowrap}.empty__actions{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px}.empty__or{color:var(--muted);font-size:calc(var(--fs-sm) * var(--fs,1));padding:0 4px}.empty__chips{display:block;margin-top:8px}.empty__actions:has(.empty__or){flex-wrap:nowrap;align-items:stretch;gap:8px}.empty__actions:has(.empty__or) .btn-add{flex:1 1 0;max-width:190px;white-space:normal;line-height:1.3;padding:9px 10px}.empty__actions:has(.empty__or) .empty__or{align-self:center;padding:0}.scrim{position:fixed;inset:0;background:rgba(8,16,12,.5);backdrop-filter:blur(2px);z-index:90;opacity:0;pointer-events:none;transition:opacity .2s}.scrim.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100%;width:min(560px,100%);background:var(--bg);z-index:100;transform:translateX(100%);transition:transform .26s cubic-bezier(.32,.72,0,1),box-shadow .26s ease;display:flex;flex-direction:column;box-shadow:0 0 0 0 transparent}.drawer.open{transform:translateX(0);box-shadow:-20px 0 60px -30px rgba(0,0,0,.5)}.drawer__head{padding:20px 24px;border-bottom:1px solid var(--rule);position:relative}.drawer__head .d-ticker{padding-right:48px}:focus:not(:focus-visible){outline:0}.drawer.no-focus-ring #drawerClose:focus-visible{outline:0}.drawer__close{position:absolute;top:20px;right:24px;width:34px;height:34px;border-radius:8px;border:1px solid var(--rule);background:var(--panel);display:grid;place-items:center;color:var(--text);flex-shrink:0}.drawer__close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drawer__close svg{width:17px;height:17px}.drawer__body{padding:0 24px 40px;overflow-y:auto;flex:1}.d-ticker{font-family:var(--font-ticker);font-size:calc(var(--fs-4xl) * var(--fs,1));font-weight:600;display:flex;align-items:center;gap:10px}.d-name{color:var(--text-soft);font-size:calc(var(--fs-base) * var(--fs,1));margin-top:4px}.d-prov{font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:8px;display:flex;align-items:center;gap:7px}.d-section{margin-top:26px}.d-section h4{margin:0 0 12px;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:700;display:flex;align-items:center;gap:10px}.d-section h4::after{content:"";flex:1;height:1px;background:var(--rule)}.d-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius-sm);overflow:hidden}.d-cell{background:var(--panel);padding:12px 14px}.d-cell .dl{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700}.d-asat{color:var(--muted);font-weight:600}.d-holdings{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-template-rows:repeat(var(--hrows,10),auto);grid-template-columns:1fr 1fr;column-gap:22px;row-gap:5px}.d-holdings li{font-size:calc(var(--fs-sm) * var(--fs,1));color:var(--text-soft);display:flex;gap:8px;align-items:baseline;min-width:0;position:relative}.d-holdings .hnm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.d-holdings--1col{grid-auto-flow:row;grid-template-columns:1fr;grid-template-rows:none}.dc-wrap{position:relative}.dc-wrap svg{display:block;width:100%}.dc-wrap{--est-fill:#F5F5F5;--est-line:#C4C9CE;--est-solid:#DCE0E4}:root[data-theme=dark] .dc-wrap{--est-fill:#16242F;--est-line:#4B5764;--est-solid:#3A4652}.dc-wrap rect.dc-est{fill:var(--est-fill);stroke:var(--est-line);stroke-width:1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}.dc-wrap rect.dc-est--solid{fill:var(--est-solid);stroke:none}.dc-wrap rect.dc-up{fill:var(--good)}.dc-wrap rect.dc-down{fill:var(--bad)}.dc-wrap .dc-sm{display:none}@media (max-width:680px){.dc-wrap .dc-lg{display:none}.dc-wrap .dc-sm{display:inline}}.dc-era-line{position:absolute;top:0;bottom:0;width:0;border-left:1px dashed var(--rule-strong);pointer-events:none}.dc-era-txt{position:absolute;top:1px;left:0;font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:400;line-height:13px;color:var(--muted);white-space:nowrap;pointer-events:none;visibility:hidden}.dc-era-txt.is-placed{visibility:visible}.dc-era-txt .ar{display:inline-block;width:12px;height:8px;font-size:0;background:currentColor;vertical-align:2.5px}.dc-era-txt--l .ar{margin-right:6px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M12 4H1M4.5 .6L1 4 4.5 7.4' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M12 4H1M4.5 .6L1 4 4.5 7.4' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.dc-era-txt--r .ar{margin-left:6px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M0 4H11M7.5 .6L11 4 7.5 7.4' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M0 4H11M7.5 .6L11 4 7.5 7.4' fill='none' stroke='black' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.dc-bar{position:absolute;bottom:0;height:max(var(--bt,100%),14px);cursor:default;outline:0}.dc-bar[data-tip]:focus-visible::after,.dc-bar[data-tip]:hover::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);white-space:nowrap;background:var(--text,#141914);color:var(--bg,#f5f3ee);font-family:var(--font-body);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:500;letter-spacing:0;padding:6px 9px;border-radius:7px;box-shadow:0 6px 20px rgba(0,0,0,.22);z-index:70;pointer-events:none}.dc-bar--c[data-tip]:focus-visible::after,.dc-bar--c[data-tip]:hover::after{left:50%;transform:translateX(-50%)}.dc-bar--l[data-tip]:focus-visible::after,.dc-bar--l[data-tip]:hover::after{left:0}.dc-bar--r[data-tip]:focus-visible::after,.dc-bar--r[data-tip]:hover::after{right:0}.dc-bar:focus-visible{box-shadow:inset 0 0 0 2px var(--accent)}.d-holdings li[data-tip]{cursor:default}.d-holdings li[data-tip]:focus-visible::after,.d-holdings li[data-tip]:hover::after{content:attr(data-tip);position:absolute;left:0;bottom:calc(100% + 6px);white-space:normal;width:max-content;max-width:min(340px,86vw);background:var(--text,#141914);color:var(--bg,#f5f3ee);font-family:var(--font-body);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:500;line-height:1.4;letter-spacing:0;padding:7px 10px;border-radius:7px;box-shadow:0 6px 20px rgba(0,0,0,.22);z-index:70;pointer-events:none}.d-holdings .hn{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);flex-shrink:0;min-width:20px;text-align:right}.d-cell .dv{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-md) * var(--fs,1));font-weight:500;margin-top:3px}.d-cell .dv.brass{color:var(--accent)}.strat-box{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:14px 16px;font-size:calc(var(--fs-base) * var(--fs,1));line-height:1.55;color:var(--text-soft)}.strat-box b{color:var(--text)}.dist-chart{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius-sm);padding:14px}.dist-chart svg{width:100%;height:130px;display:block}.dist-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.dist-table{width:100%;border-collapse:collapse;font-size:calc(var(--fs-sm) * var(--fs,1));margin-top:10px}.dist-table th{text-align:right;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--rule);white-space:nowrap}.dist-table th:first-child,.dist-table th:nth-child(2){text-align:left}.dist-table td{padding:6px 8px;border-bottom:1px solid var(--rule);text-align:right;font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.dist-table td:first-child,.dist-table td:nth-child(2){text-align:left}.dist-table th:first-child{width:30%}.dist-table th:nth-child(2){width:30%}.dist-table th:nth-child(3){width:19%}.dist-table th:nth-child(4){width:21%}.dist-chg{font-weight:600}.dist-chg.is-up{color:var(--good)}.dist-chg.is-down{color:var(--bad)}.dist-chg-none{color:var(--muted)}.dist-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.dist-pager button{border:1px solid var(--rule-strong);background:var(--panel);color:var(--text);font-family:inherit;font-weight:600;font-size:calc(var(--fs-xs) * var(--fs,1));padding:6px 13px;border-radius:999px;cursor:pointer;transition:background .15s;line-height:1}.dist-pager button:hover:not(:disabled){background:var(--hover)}.dist-pager button:disabled{opacity:.4;cursor:default}.dist-pager button:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.dist-pageinfo{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);letter-spacing:.06em}.grid-sentinel{grid-column:1/-1;display:flex;justify-content:center;padding:20px 0 8px;color:var(--muted);font-size:calc(var(--fs-xs) * var(--fs,1));letter-spacing:.08em}.dist-fill td{border-bottom:1px solid transparent;user-select:none}.dist-est{position:relative;color:var(--accent);font-weight:700;text-decoration:none;margin-left:2px;border:0}.dist-est[data-tip]{cursor:default}.dist-est[data-tip]:focus-visible::after,.dist-est[data-tip]:hover::after{content:attr(data-tip);position:absolute;right:-6px;bottom:calc(100% + 7px);white-space:nowrap;background:var(--text,#141914);color:var(--bg,#f5f3ee);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:500;line-height:1.4;letter-spacing:0;text-align:left;padding:6px 10px;border-radius:7px;box-shadow:0 6px 20px rgba(0,0,0,.22);z-index:70;pointer-events:none}.dist-est[data-tip]:focus-visible::before,.dist-est[data-tip]:hover::before{content:"";position:absolute;right:2px;bottom:calc(100% + 2px);border:5px solid transparent;border-top-color:var(--text,#141914);z-index:70;pointer-events:none}.dist-table td:first-child .dist-est[data-tip]:focus-visible::after,.dist-table td:first-child .dist-est[data-tip]:hover::after,.dist-table td:nth-child(2) .dist-est[data-tip]:focus-visible::after,.dist-table td:nth-child(2) .dist-est[data-tip]:hover::after{right:auto;left:50%;transform:translateX(-50%)}.dist-table td:first-child .dist-est[data-tip]:focus-visible::before,.dist-table td:first-child .dist-est[data-tip]:hover::before,.dist-table td:nth-child(2) .dist-est[data-tip]:focus-visible::before,.dist-table td:nth-child(2) .dist-est[data-tip]:hover::before{right:auto;left:50%;transform:translateX(-50%)}.dist-est--plain{cursor:default}.dist-estrow td{color:var(--muted);font-style:italic}.dist-spc{color:var(--accent2)}.dist-spcrow td{color:var(--muted)}.dist-legend{margin-top:8px;font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);display:flex;align-items:center;gap:5px}.dist-legend .dist-est{cursor:default}.dist-splitnote{display:block;line-height:1.45}.dist-preera td{border-bottom-color:transparent}.dist-erafill td::before{display:none}.dist-erafill .dist-era{visibility:hidden}.dist-erarow td{border-bottom:0;padding:5px 0 6px;text-align:center;position:relative}.dist-erarow td::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--rule)}.dist-era{position:relative;display:inline-block;padding:1px 8px;background:var(--panel);border:1px solid var(--rule);border-radius:999px;color:var(--muted);font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:700;letter-spacing:.05em;text-transform:uppercase}.d-links{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.d-link{flex:1;min-width:140px;text-align:center;padding:11px;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--panel);font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;text-decoration:none;color:var(--text);transition:all .16s;display:flex;align-items:center;justify-content:center;gap:7px}.d-link:hover{border-color:var(--accent);background:var(--accent-tint)}.drawer-close-btn{display:flex;width:100%;justify-content:center;margin-top:20px;padding:13px 16px;border:1px solid var(--rule-strong);background:var(--panel-2);color:var(--text);border-radius:999px;font-family:inherit;font-weight:700;font-size:calc(var(--fs-base) * var(--fs,1));cursor:pointer;transition:background .16s,border-color .16s;line-height:1}.drawer-close-btn:hover{background:var(--hover);border-color:var(--rule-strong)}.drawer-close-btn:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.d-link svg{width:14px;height:14px}.footer{border-top:1px solid var(--rule);background:var(--panel);margin-top:20px}.footer__in{max-width:var(--shell);margin:0 auto;padding:30px 22px 40px}.disclaimer{font-size:calc(var(--fs-note) * var(--fs,1));line-height:1.6;color:var(--muted);max-width:900px;margin:18px auto 0;text-align:center}.disclaimer b{color:var(--text-soft)}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 4px;margin:0 0 4px}.footer-nav a{font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;color:var(--muted);text-decoration:none;padding:5px 10px;border-radius:7px;line-height:1}.footer-nav a:hover{color:var(--text);background:var(--hover)}.foot-meta{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:calc(var(--fs-note) * var(--fs,1));margin-top:18px;flex-wrap:wrap}.foot-meta--copy{margin-top:22px}@media (max-width:1180px){.search{flex:0 1 220px}}@media (max-width:1060px){.topbar__in{flex-wrap:wrap;row-gap:10px}.topbar__actions{margin-left:auto}.search{order:5;flex:1 1 100%;max-width:none}}@media (max-width:900px){.topnav{order:10;width:100%;justify-content:flex-start}}@media (max-width:1080px){.layout{grid-template-columns:1fr}.rail{position:static;flex-direction:row;flex-wrap:wrap}.rail-card{flex:1;min-width:240px}.ad--rail{flex-basis:100%}.ad--rail .ad__ph{min-height:120px}}@media (max-width:680px){.card__name{font-size:calc(var(--fs-md) * var(--fs,1))}}@media (max-width:440px){.card__name{font-size:calc(var(--fs-lg) * var(--fs,1))}}html.mp-boot #compareView .cmp,html.mp-boot #homeView .controls,html.mp-boot #homeView .layout,html.mp-boot #homeView .results-bar,html.mp-boot #providerBody,html.mp-boot #providersGrid,html.mp-boot #siteFooter,html.mp-boot .hero__stats{opacity:0;pointer-events:none}html.cc-reveal #compareView .cmp,html.cc-reveal #homeView .controls,html.cc-reveal #homeView .layout,html.cc-reveal #homeView .results-bar,html.cc-reveal #providerBody,html.cc-reveal #providersGrid,html.cc-reveal #siteFooter,html.cc-reveal .hero__stats{animation:ccReveal .35s ease-out}@keyframes ccReveal{from{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){html.cc-reveal #compareView .cmp,html.cc-reveal #homeView .controls,html.cc-reveal #homeView .layout,html.cc-reveal #homeView .results-bar,html.cc-reveal #providerBody,html.cc-reveal #providersGrid,html.cc-reveal #siteFooter,html.cc-reveal .hero__stats{animation:none}}@media (max-width:560px){.brand__sub{display:none}.brand__name{font-size:calc(var(--fs-sm) * var(--fs,1));letter-spacing:.08em}.updated{flex-basis:100%}.layout.booting main{min-height:480px}}@media (max-width:440px){.brand__name{font-size:calc(var(--fs-xs) * var(--fs,1));letter-spacing:.05em}.market-toggle button{padding:5px 6px}.market-toggle .flag{height:12px}.topbar__actions{gap:8px}}@media (max-width:384px){.brand__name{font-size:calc(var(--fs-micro) * var(--fs,1))}}@media (max-width:356px){.brand__txt{display:none}}@media (max-width:680px){.topnav .nav-dd__menu{left:auto;right:0}.topbar__in{flex-wrap:wrap;gap:12px;padding:12px 16px}.search{order:5;max-width:100%;flex-basis:100%}.shell{padding:0 16px}.hero{padding:22px 0 10px}.hero__stats{gap:27px}.grid{grid-template-columns:1fr}.controls{padding:14px}.controls .view-toggle{display:none}.results-bar{column-gap:10px}.results-bar .count{flex:1 1 0;min-width:0}.results-bar .updated{flex:1 1 100%;order:3;font-size:calc(var(--fs-sm) * var(--fs,1))}.view-toggle--bar{display:flex}.view-toggle--bar button{padding:6px 10px}.view-toggle--bar svg{width:16px;height:16px}.sheet-ask{position:fixed;inset:0;z-index:130;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(10,14,12,.38);-webkit-tap-highlight-color:transparent}.sheet-ask[hidden]{display:none}.sheet-ask.is-leaving{opacity:0;transition:opacity var(--ask-out,.25s) ease;pointer-events:none}@media (prefers-reduced-motion:no-preference){.sheet-ask{animation:ccReveal .22s ease-out}.sheet-ask__card{animation:cmpFadeUp .26s ease-out}}.sheet-ask__card{width:100%;max-width:358px;background:var(--panel);border:1px solid var(--rule);border-radius:18px;box-shadow:0 18px 50px -12px rgba(20,20,15,.35);padding:16px 20px 20px;position:relative}.sheet-ask__close{position:absolute;top:16px;right:14px}.sheet-ask__title{margin:0 0 16px;padding-right:44px;min-height:38px;display:flex;align-items:center;font-family:var(--font-body);font-size:calc(var(--fs-lg) * var(--fs,1));font-weight:700;color:var(--text);line-height:1.25}.sheet-ask__text{margin:0 0 20px;font-size:calc(var(--fs-md) * var(--fs,1));color:var(--text-soft);line-height:1.45}.sheet-ask__btns{display:flex;gap:10px}.sheet-ask__btns button{flex:1;display:flex;justify-content:center;border-radius:999px;padding:14px;font-weight:700;font-size:calc(var(--fs-md) * var(--fs,1));font-family:inherit;cursor:pointer;line-height:1}.sheet-ask__discard{background:0 0;color:var(--text);border:1px solid var(--rule-strong)}.sheet-ask__apply{background:var(--accent2);color:var(--on-accent);border:1px solid var(--accent2)}:root[data-theme=dark] .sheet-ask{background:rgba(0,0,0,.55)}:root[data-theme=dark] .sheet-ask__card{box-shadow:0 0 26px -8px rgba(255,255,255,.24)}.footer__in{padding:24px 16px 40px}html.on-home .footer__in{padding-bottom:130px}}html.drawer-lock,html.sheet-lock{overflow:hidden}@media (pointer:coarse){html.drawer-lock,html.sheet-lock{overflow:visible}.drawer__body{overscroll-behavior:contain}.drawer__head,.scrim.open{touch-action:none}}.controls__head{display:none}.controls__apply{display:none}.ct-chev,.ct-grab{display:none}@media (max-width:680px){.controls{--peek-h:calc(134px + env(safe-area-inset-bottom, 0px));display:block;position:fixed;left:0;right:0;top:auto;bottom:0;height:100%;z-index:85;margin:0;padding:0 16px calc(24px + env(safe-area-inset-bottom,0px));overflow:hidden;background:var(--panel);border:0;border-top:1px solid var(--rule);border-radius:18px 18px 0 0;box-shadow:0 -4px 22px -10px rgba(0,0,0,.19);transform:translateY(calc(100% - var(--peek-h) - var(--promo-h,0)));cursor:pointer;touch-action:none;-webkit-tap-highlight-color:transparent}.controls.is-sliding{transition:transform .55s cubic-bezier(.32,.72,0,1),border-radius .55s ease}.controls.has-picks{--peek-h:calc(57px + env(safe-area-inset-bottom, 0px))}.controls.has-picks::after{display:none}.controls.open{transform:none;z-index:120;overflow:auto;border-radius:0;cursor:auto;touch-action:auto;overscroll-behavior:contain}.controls.is-dragging{transition:none}.controls.is-nudge:not(.open){animation:peekNudge 1.1s ease-in-out 2}@keyframes peekNudge{0%,100%{translate:0 0}40%{translate:0 -10px}}.controls.is-nudge:not(.open)::after{animation:peekNudgeShade 1.1s ease-in-out 2}@keyframes peekNudgeShade{0%,100%{translate:0 0}40%{translate:0 10px}}.controls__head{display:flex;align-items:center;gap:8px;position:sticky;top:0;margin:0 -16px 12px;padding:20px 16px 12px;background:var(--panel);border-bottom:1px solid var(--rule);z-index:2}.controls__head .ct-title{font-weight:800;font-size:calc(var(--fs-md) * var(--fs,1));letter-spacing:-.01em}.ct-grab{display:block;position:absolute;top:7px;left:50%;width:36px;height:4px;margin-left:-18px;border-radius:999px;background:var(--rule)}.controls__head .fbadge{background:var(--accent2);color:var(--on-accent);border-radius:999px;font-size:calc(var(--fs-micro) * var(--fs,1));padding:1px 6px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700}.controls__head .fbadge[data-n="0"]{display:none}.ct-picks{display:none}.controls.has-picks:not(.open) .ct-picks{display:flex;gap:6px;flex:1 1 auto;min-width:0;overflow:hidden;margin:-4px 0 -4px 4px;white-space:nowrap}.ct-picks .chip{flex-shrink:0;cursor:inherit;transition:none}.ct-picks .chip--more{padding-left:13px}.ct-picks .chip--more::before{content:none!important;display:none}.controls.has-picks:not(.open) .controls__head .fbadge{display:none}.ct-chev{display:block;margin-left:auto;width:20px;height:20px;color:var(--muted)}.controls.open .ct-chev{display:none}#controlsClose{display:none;margin-left:auto}.controls.open .controls__head{padding-top:16px;padding-bottom:16px}.controls.open #controlsClose{display:grid}.controls:not(.open) .fgroup{pointer-events:none}.controls::after{content:"";position:absolute;left:0;right:0;top:0;height:var(--peek-h);z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,0) 45%,rgba(0,0,0,.16) 100%);transition:opacity .3s ease}:root[data-theme=dark] .controls::after{background:linear-gradient(to bottom,rgba(255,255,255,0) 45%,rgba(255,255,255,.022) 72%,rgba(255,255,255,.068) 100%)}:root[data-theme=dark] .controls{box-shadow:0 -4px 22px -10px rgba(255,255,255,.24)}:root[data-theme=dark] .ct-grab{background:rgba(255,255,255,.38)}.controls.open::after{opacity:0}.controls.is-dragging::after{opacity:0;transition-duration:.15s}.controls.open .controls__apply{display:flex;width:100%;justify-content:center;margin-top:18px;background:var(--accent2);color:var(--on-accent);border:0;border-radius:999px;padding:14px;font-weight:700;font-size:calc(var(--fs-md) * var(--fs,1));font-family:inherit;cursor:pointer;line-height:1}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}#viewRegion:focus{outline:0}.skip-link{position:fixed;top:8px;left:8px;z-index:200;background:var(--text);color:var(--bg);padding:10px 16px;border-radius:8px;font-weight:700;font-size:calc(var(--fs-sm) * var(--fs,1));text-decoration:none;transform:translateY(-160%);transition:transform .18s}.skip-link:focus{transform:translateY(0);outline:2px solid var(--accent);outline-offset:2px}.topnav{display:flex;gap:4px;align-items:center}.nav-dd{position:relative}.nav-dd__btn{display:inline-flex;align-items:center;gap:4px;font-family:inherit;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;color:var(--muted);background:0 0;border:1.5px solid transparent;padding:8px 12px 8px 14px;border-radius:999px;min-height:38px;cursor:pointer;transition:color .16s,background-color .16s;line-height:1}@media (hover:hover){.nav-dd__btn:hover{color:var(--text);background:var(--nav-hover)}}.nav-dd__cv{width:15px;height:15px;transition:transform .18s;flex-shrink:0}.nav-dd[data-open=true] .nav-dd__cv{transform:rotate(180deg)}@media (hover:hover){.nav-dd:not([data-suppress=true]):hover .nav-dd__cv{transform:rotate(180deg)}}.nav-dd__menu{position:absolute;top:calc(100% + 6px);left:0;min-width:236px;background:var(--panel);border:1px solid var(--rule);border-radius:11px;box-shadow:var(--shadow);padding:6px;z-index:80;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease,visibility 0s linear .32s}.nav-dd__menu::before{content:"";position:absolute;left:-12px;right:-12px;top:-14px;height:14px}.nav-dd:focus-within .nav-dd__menu,.nav-dd[data-open=true] .nav-dd__menu{opacity:1;visibility:visible;transform:none;transition:opacity .14s ease,transform .14s ease,visibility 0s}@media (hover:hover){.nav-dd:hover .nav-dd__menu{opacity:1;visibility:visible;transform:none;transition:opacity .14s ease,transform .14s ease,visibility 0s}}.nav-dd[data-suppress=true] .nav-dd__menu{opacity:0!important;visibility:hidden!important}.nav-dd__menu a{display:block;padding:9px 12px;border-radius:7px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;color:var(--text-soft);text-decoration:none;white-space:nowrap}.nav-dd__menu a:hover{background:var(--nav-hover);color:var(--text)}.nav-dd__lbl{font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:8px 12px 4px}.nav-dd__sep{height:1px;background:var(--rule);margin:6px 6px}html:not([data-pro]) a.topnav__link[href="/pro"]{display:none}.topnav__link{font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;color:var(--muted);text-decoration:none;padding:8px 14px;line-height:1;border-radius:999px;min-height:38px;display:inline-flex;align-items:center;border:1.5px solid transparent;transition:color .16s,background-color .16s,border-color .16s}@media (hover:hover){.topnav__link:hover{color:var(--text);background:var(--nav-hover)}}.btn-add:focus-visible,.btn-ext:focus-visible,.card:focus-visible,.chip:focus-visible,.d-link:focus-visible,.footer-nav a:focus-visible,.icon-btn:focus-visible,.market-toggle button:focus-visible,.nav-dd__btn:focus-visible,.nav-dd__menu a:focus-visible,.provider-card:focus-visible,.seg button:focus-visible,.topnav__link:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.topnav__link[aria-current=page]{color:var(--accent2);background:var(--hover);border-color:var(--accent2-soft)}.page-head{padding:26px 0 6px}.page-head h1{margin:0 0 8px;font-family:var(--font-head);font-size:clamp(26px,3.4vw,40px);font-weight:var(--head-w,800);letter-spacing:-.02em;line-height:1.05}.page-sub{margin:0;color:var(--muted);font-size:calc(var(--fs-md) * var(--fs,1));line-height:1.5;max-width:none}h1[tabindex]:focus-visible,h2[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;color:var(--muted);text-decoration:none;margin:20px 0 14px -6px;padding:5.5px 9px 4.5px 6px;border-radius:7px;line-height:1}.back-link:hover{color:var(--text);background:var(--hover);text-decoration:none}.back-link svg{width:15px;height:15px;flex-shrink:0}.back-link:focus-visible{outline:2px solid var(--accent2);outline-offset:2px}.providers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-auto-rows:1fr;gap:16px;padding:18px 0 48px}.provider-card{position:relative;background:var(--panel);border:1px solid var(--rule);border-radius:0 0 var(--radius) var(--radius);padding:18px;box-shadow:var(--shadow);overflow:hidden;transition:transform .16s,border-color .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.provider-card:has(:focus-visible),.provider-card:hover{transform:translateY(-2px);border-color:var(--pcs);box-shadow:0 1px 2px rgba(14,26,20,.05),0 14px 32px -18px var(--pcsh)}.provider-card__accent{position:absolute;top:0;left:0;right:0;height:6px;background:var(--pcs)}.provider-card__hit{position:absolute;inset:0;border:0;background:0 0;cursor:pointer;z-index:0}.provider-card__hit:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;border-radius:0 0 var(--radius) var(--radius)}.provider-card__content{pointer-events:none;display:flex;flex-direction:column;gap:13px;flex:1 1 auto}.provider-card__top{display:flex;align-items:center;gap:11px}.pc-logo{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:calc(var(--fs-md) * var(--fs,1));flex-shrink:0;letter-spacing:.02em;overflow:hidden}.pc-logo--img,.pc-logo--svg,.provhero__logo--img,.provhero__logo--svg{background:#fff!important;border:1px solid var(--rule);color:transparent}.pc-logo--img img,.provhero__logo--img img{width:100%;height:100%;object-fit:contain;display:block}.pc-logo--svg svg,.provhero__logo--svg svg{width:100%;height:100%;display:block}.pc-logo--img img,.pc-logo--svg svg{padding:6px}.provhero__logo--img img,.provhero__logo--svg svg{padding:9px}.pc-name{font-family:var(--font-head);font-size:calc(var(--fs-lg) * var(--fs,1));font-weight:var(--head-w,800);letter-spacing:-.01em;line-height:1.1}.pc-tag{font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--muted);margin-top:2px}.pc-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius-sm);overflow:hidden}.pc-stat{background:var(--panel);padding:9px 8px;text-align:center}.pc-stat .v{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;font-size:calc(var(--fs-md) * var(--fs,1))}.pc-stat .l{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:2px}.pc-top3{pointer-events:auto}.pc-top3 li{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;cursor:pointer;transition:background .14s;border-radius:6px}.pc-top3 li::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--rule)}.pc-top3 li:first-child::before{display:none}.pc-top3 li:first-child{padding-top:2px}.pc-top3 li:hover{background:color-mix(in srgb,var(--pcs) 10%,var(--panel));margin:0 -6px;padding-left:6px;padding-right:6px}:root[data-theme=dark] .pc-top3 li:hover{background:color-mix(in srgb,var(--pcs) 22%,var(--panel))}.pc-top3 .mv-tk{font-family:var(--font-ticker);font-weight:600;font-size:calc(var(--fs-xs) * var(--fs,1))}.pc-top3 .mv-nm{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pc-top3 .mv-y{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;color:var(--text);font-size:calc(var(--fs-sm) * var(--fs,1))}.pc-top3{list-style:none;margin:0;padding:0}.pc-top3-label{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:2px}.pc-cta{font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:700;color:var(--text);display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:2px}.provhero{position:relative;background:var(--panel);border:1px solid var(--rule);border-radius:0 0 var(--radius) var(--radius);box-shadow:var(--shadow);padding:24px;margin-top:6px;overflow:hidden}.provhero__accent{position:absolute;top:0;left:0;right:0;height:6px;background:var(--pcs)}.provhero__row{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.provhero__logo{width:60px;height:60px;border-radius:15px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:calc(var(--fs-2xl) * var(--fs,1));flex-shrink:0;letter-spacing:.02em}.provhero h1{margin:0;font-family:var(--font-head);font-size:clamp(26px,3.4vw,40px);font-weight:var(--head-w,800);letter-spacing:-.02em;line-height:1.05}.provhero__meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:9px;font-size:calc(var(--fs-sm) * var(--fs,1));color:var(--muted)}.provhero__meta b{color:var(--text-soft);font-weight:600}.provhero__about{margin:16px 0 0;font-size:calc(var(--fs-md) * var(--fs,1));line-height:1.6;color:var(--text-soft)}.provhero__cta{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}.btn-ext{display:inline-flex;align-items:center;gap:8px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;text-decoration:none;color:var(--text);background:var(--panel-2);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);padding:10px 15px;min-height:42px;line-height:1}.btn-ext:hover{border-color:var(--accent);background:var(--accent-tint)}.btn-ext:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-ext svg{width:15px;height:15px}.pstats{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;margin-top:16px}@media (max-width:900px){.pstats{grid-template-columns:repeat(3,1fr)}}@media (max-width:560px){.pstats{grid-template-columns:repeat(2,1fr)}}.pstat{background:var(--panel);padding:15px 16px;display:flex;flex-direction:column;justify-content:center}.pstat .v{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;font-size:calc(var(--fs-xl) * var(--fs,1));letter-spacing:-.01em}.pstat .v.brass{color:var(--accent)}.pstat .l{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-top:3px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:34px 0 14px;flex-wrap:wrap}.section-head h2{margin:0;font-family:var(--font-head);font-size:calc(var(--fs-lg) * var(--fs,1));font-weight:var(--head-w,800);letter-spacing:-.01em}.section-head .sh-sub{font-size:calc(var(--fs-sm) * var(--fs,1));color:var(--muted)}.chips-static{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.chip-static--btn{cursor:pointer;font:inherit;transition:background .14s,border-color .14s,color .14s}@media (hover:hover){.chip-static--btn:not([aria-disabled=true]):hover{background:var(--hover)}}.chip-static--btn.is-empty{opacity:.42;cursor:default}.chip-static--btn[aria-pressed=true]{background:var(--hover);border-color:var(--accent2-soft);color:var(--accent2);font-weight:600}.chip-static{border:1px solid var(--rule);background:var(--panel-2);color:var(--text-soft);border-radius:999px;padding:6px 13px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:500;display:inline-flex;align-items:center;gap:7px}.th-sort{border:0;background:0 0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:5px;padding:0;width:100%;justify-content:flex-end}.pv-table .th-sort{cursor:default;pointer-events:none}.pv-fundsview{transition:max-width .22s ease,opacity .18s ease}table.dt th.l .th-sort{justify-content:flex-start}.th-sort:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}table.dt th[aria-sort=ascending] .th-sort,table.dt th[aria-sort=descending] .th-sort{color:var(--accent)}.card{position:relative}.card__hit{position:absolute;inset:0;border:0;background:0 0;cursor:pointer;z-index:0;border-radius:inherit}.card__hit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card__content{pointer-events:none;display:flex;flex-direction:column;gap:13px}.card a.prov-badge{pointer-events:auto;position:relative;z-index:1;text-decoration:none;border-radius:6px;padding:2px 4px;margin:-1.5px -4px;min-height:24px}.card a.prov-badge:hover{color:var(--text);background:var(--hover)}.card a.prov-badge:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:680px){.page-head{padding:20px 0 4px}.provhero{padding:18px}.provhero__logo{width:50px;height:50px;font-size:calc(var(--fs-xl) * var(--fs,1))}.provhero__row{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;row-gap:0;align-items:center}.provhero__main{display:contents}.provhero__main>:not(h1){grid-column:1/-1}.provhero__main>.provhero__meta{margin-top:12px}.providers-grid{grid-template-columns:1fr}}@media (max-width:560px){.topnav__link{padding:8px 10px 6px}}.cmp{padding-bottom:48px}.cmp__bar{display:flex;flex-direction:column;gap:14px;align-items:stretch;margin-top:14px}.seg{display:flex;width:100%;border:1px solid var(--rule-strong);border-radius:999px;overflow:hidden;background:var(--panel-2);flex-wrap:wrap}.seg button{flex:1 1 auto;border:0;background:0 0;color:var(--text-soft);font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;padding:8px 14px;min-height:40px;justify-content:center;text-align:center;white-space:nowrap;transition:background .14s,color .14s}.seg__tip-wrap{position:relative;display:flex}.seg__tip-wrap button{flex:1 1 auto}#cmpViewSeg{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible}#cmpViewSeg .seg__l1,#cmpViewSeg .seg__l2{display:inline}#cmpViewSeg .seg__l1::after{content:" "}#cmpViewSeg .seg__tip-wrap,#cmpViewSeg button{flex:none}#cmpViewSeg .seg__tip-wrap button{width:100%}#cmpViewSeg>button:first-child{border-radius:999px 0 0 999px}#cmpViewSeg>button:last-child{border-radius:0 999px 999px 0}#cmpViewSeg>.seg__tip-wrap:last-child button{border-radius:0 999px 999px 0}#cmpViewSeg .seg__tip-wrap button{border-radius:0}:root{--drip:#D81E5B}:root[data-theme=dark]{--drip:#FF6B9D}.cmp-drip{pointer-events:none;fill:var(--drip);stroke:var(--bg);stroke-width:.9}.cmp-hth{position:relative;border-bottom:1px dotted currentColor;cursor:help;outline:0}.cmp-hth .cmp-hint{position:fixed;left:0;top:0;max-width:calc(100vw - 32px);background:var(--text);color:var(--bg);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:500;line-height:1.45;padding:9px 12px;border-radius:8px;width:250px;text-align:left;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s;z-index:80;font-family:var(--font-body);text-transform:none;letter-spacing:normal}.cmp-hth:focus .cmp-hint,.cmp-hth:hover .cmp-hint{opacity:1;visibility:visible}.cmp-dt--compound td sup{font-size:.7em;color:var(--muted)}.seg button[aria-disabled=true]{--seg-off:color-mix(in srgb,var(--text) 7%,var(--panel-2));background:var(--seg-off);color:color-mix(in srgb,var(--muted) 65%,var(--seg-off));cursor:not-allowed;pointer-events:none}:root[data-theme=dark] .seg button[aria-disabled=true]{--seg-off:color-mix(in srgb,var(--panel-2) 70%,var(--panel));color:color-mix(in srgb,var(--muted) 50%,var(--seg-off))}.seg__tip-wrap:has(button[aria-disabled=true]){cursor:not-allowed}.seg__tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--text);color:var(--bg);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:500;line-height:1.4;padding:8px 11px;border-radius:8px;width:200px;text-align:center;text-wrap:balance;text-wrap:pretty;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s;z-index:5}.seg__tip-wrap:has(:focus-visible) .seg__tip,.seg__tip-wrap:hover .seg__tip{opacity:1;visibility:visible}#cmpTotalTip{width:224px}@media(max-width:640px){#cmpViewSeg button{white-space:normal;line-height:1.15;padding:6px 3px;font-size:calc(var(--fs-micro) * var(--fs,1))}#cmpViewSeg .seg__l1,#cmpViewSeg .seg__l2{display:block}#cmpViewSeg .seg__l1::after{content:none}#cmpViewSeg .seg__tip{width:min(230px,calc(100vw - 28px))}#cmpViewSeg>.seg__tip-wrap:last-child .seg__tip{left:auto;right:0;transform:none;text-align:left}}.seg button[aria-pressed=true]{background:var(--accent2);color:var(--on-accent)}.seg button:not([aria-pressed=true]):hover{color:var(--text);background:var(--hover)}.seg button[aria-pressed=true]:hover{color:var(--on-accent)}.seg--ranges button{padding:8px 10px;min-width:46px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-xs) * var(--fs,1))}.cmp__dates{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto minmax(0,1fr);width:100%;align-items:center;font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--muted)}.cmp__dates label{display:contents;font-weight:600;white-space:nowrap}.cmp__dates input[type=date]{margin-left:8px;width:100%;min-width:0;border:1px solid var(--rule-strong);background:var(--panel);color:var(--text);border-radius:8px;padding:7px 9px;font-size:calc(var(--fs-xs) * var(--fs,1));font-family:var(--font-num);font-variant-numeric:tabular-nums;min-height:38px;color-scheme:light}:root[data-theme=dark] .cmp__dates input[type=date]{color-scheme:dark}.cmp__dates input[type=date]:focus{outline:0;border-color:var(--accent)}.cmp__dates input[type=date]:disabled{background:var(--panel-2);color:var(--muted);border-color:var(--rule);cursor:not-allowed;opacity:.6}.cmp__dates.is-disabled label{color:color-mix(in srgb,var(--muted) 60%,transparent)}.cmp__dates.is-disabled .cmp__dates-sep{color:var(--muted);opacity:.6}.cmp__dates-sep{color:var(--muted);margin:0 8px}.cmp__dates input[type=date]{align-self:stretch;margin-left:var(--dm,8px);width:calc(100% - var(--dm,8px))}@media(min-width:900px){.cmp__dates{--dm:12px}.cmp__daterow.cmp__daterow{gap:28px}.cmp__dates-sep{margin:0 20px}}#cmpDates.is-custom input[type=date]{border-color:var(--accent2-soft);box-shadow:0 0 0 2px var(--hover)}.cmp__daterow{display:flex;width:100%;gap:10px;align-items:stretch}.cmp__daterow #cmpDates{flex:1 1 auto;width:auto;min-width:0}.seg--charttype{width:auto;flex:0 0 auto;flex-wrap:nowrap}.seg--charttype button{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:8px 14px}.seg--charttype button svg{width:16px;height:16px;flex:0 0 auto}.seg--charttype button span{font-size:calc(var(--fs-xs) * var(--fs,1))}@media(max-width:560px){.cmp__daterow{gap:7px}.cmp__daterow #cmpDates{font-size:calc(var(--fs-xs) * var(--fs,1))}.cmp__daterow .cmp__dates-sep{margin:0 5px}.cmp__daterow #cmpDates{--dm:4px}.cmp__daterow #cmpDates input[type=date]{padding:7px 6px}.cmp__daterow{flex-wrap:wrap;row-gap:14px}.cmp__daterow #cmpDates{flex:1 1 0;min-width:auto;grid-template-columns:auto minmax(96px,1fr) auto auto minmax(96px,1fr)}@media (hover:none){.cmp__daterow #cmpDates input[type=date]::-webkit-calendar-picker-indicator{display:none}}.seg--charttype button{padding:8px 9px;gap:5px}.seg--charttype button span{font-size:calc(var(--fs-micro) * var(--fs,1))}}@media(max-width:429px){.seg--charttype button{padding:8px 8px;gap:0}.seg--charttype button span{display:none}}.cmp__selrow{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}.cmp__sel{display:contents}.cmp-chip{position:relative;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule-strong);background:var(--panel);border-radius:999px;padding:5px 7px 5px 12px;font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;min-height:34px}.cmp-chip .sw{width:11px;height:11px;border-radius:3px;flex-shrink:0}.cmp-chip .tk{font-family:var(--font-ticker);line-height:1;position:relative;top:.75px}.cmp-chip .rm{width:22px;height:22px;border:0;background:var(--panel-2);border-radius:50%;color:var(--muted);display:grid;place-items:center;font-size:calc(var(--fs-base) * var(--fs,1));line-height:1;cursor:pointer}.cmp-chip .rm:hover{background:var(--bad-tint);color:var(--bad)}.cmp-chip .rm:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-chip__tip{position:fixed;left:0;top:0;background:var(--text);color:var(--bg);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:500;line-height:1.4;padding:7px 10px;border-radius:8px;width:max-content;max-width:min(260px,calc(100vw - 20px));text-align:center;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .1s;z-index:80}.cmp-chip:has(:focus-visible) .cmp-chip__tip,.cmp-chip:hover .cmp-chip__tip{opacity:1;visibility:visible}.cmp__add{position:relative}.btn-add{border:1px dashed var(--rule-strong);background:0 0;color:var(--text-soft);font-weight:600;font-size:calc(var(--fs-sm) * var(--fs,1));padding:7.5px 14px 6.5px;border-radius:999px;min-height:34px;line-height:1}.btn-add:disabled{opacity:.45;cursor:not-allowed}.btn-add:hover{border-color:var(--accent);color:var(--accent)}.btn-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp__share{position:relative;margin-left:auto}.btn-share{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule-strong);background:var(--panel);color:var(--text-soft);font-weight:600;font-size:calc(var(--fs-sm) * var(--fs,1));padding:7.5px 14px 6.5px 12px;border-radius:999px;min-height:34px;line-height:1;transition:border-color .14s,color .14s}.btn-share svg{width:15px;height:15px;flex-shrink:0;position:relative;top:-.5px}.btn-share:disabled{opacity:.45;cursor:not-allowed}.btn-share:not(:disabled):hover,.btn-share[aria-expanded=true]{border-color:var(--accent);color:var(--accent)}.btn-share:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cmp-share{position:absolute;z-index:40;top:calc(100% + 6px);right:0;width:max-content;min-width:250px;max-width:calc(100vw - 32px);background:var(--panel);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:0 16px 40px -16px rgba(0,0,0,.4);padding:6px;animation:cmpShareIn .14s ease}@keyframes cmpShareIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.cmp-share__item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:0;background:0 0;color:var(--text);padding:9px 12px 9px 10px;border-radius:7px;cursor:pointer}.cmp-share__item:hover{background:var(--hover)}.cmp-share__item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.cmp-share__item svg{width:18px;height:18px;flex-shrink:0;color:var(--muted)}.cmp-share__txt{display:flex;flex-direction:column;gap:3px;min-width:0}.cmp-share__t{font-size:calc(var(--fs-sm) * var(--fs,1));font-weight:600;line-height:1.2}.cmp-share__s{font-size:calc(var(--fs-micro) * var(--fs,1));color:var(--muted);line-height:1.2}.cmp-share__item.is-done .cmp-share__t{color:var(--good)}.cmp-share__sep{height:1px;background:var(--rule);margin:5px 6px}.cmp-share__focus[hidden]{display:none}.cmp-share__focus{display:flex;align-items:center;gap:8px;padding:6px 8px 4px 10px}.cmp-share__focus label{font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;white-space:nowrap}.cmp-share__focus select{flex:1;min-width:0;border:1px solid var(--rule);background:var(--panel-2);color:var(--text);border-radius:8px;padding:7px 10px;font-size:calc(var(--fs-sm) * var(--fs,1));font-family:inherit}.cmp-share__focus select:focus{outline:0;border-color:var(--accent)}.cmp-share__focus select.is-active{border-color:var(--accent2-soft);background:var(--hover);color:var(--accent2);font-weight:700}.cmp__picker{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:min(320px,86vw);background:var(--panel);border:1px solid var(--rule-strong);border-radius:var(--radius-sm);box-shadow:0 16px 40px -16px rgba(0,0,0,.4);padding:10px}.cmp__picker input{width:100%;border:1px solid var(--rule-strong);background:var(--panel-2);color:var(--text);border-radius:8px;padding:8px 30px 8px 11px;font-size:calc(var(--fs-sm) * var(--fs,1));font-family:inherit}.cmp__picker input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}.cmp__picker input:focus{outline:0;border-color:var(--accent)}.cmp__pickerhint{margin:8px 2px 0;font-size:calc(var(--fs-micro) * var(--fs,1));line-height:1.45;color:var(--muted)}.cmp__pickerhint b{color:var(--accent2);font-weight:600}.cmp__pickerlist{max-height:230px;overflow:auto;margin-top:8px;display:flex;flex-direction:column;gap:2px}@media (max-width:640px){.cmp__add{position:static}.cmp__selrow{position:relative}.cmp__picker{left:0;right:0;width:auto;max-width:none;min-width:0}}.pick-item{text-align:left;border:0;background:0 0;color:var(--text);padding:8px 10px;border-radius:7px;font-size:calc(var(--fs-sm) * var(--fs,1));cursor:pointer;display:flex;gap:9px;align-items:baseline}.pick-item:hover{background:var(--hover)}.pick-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pick-item.is-active{background:var(--hover)}.pick-item .ptk{font-family:var(--font-ticker);font-weight:600;min-width:52px}.pick-item .pnm{font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-lbl{font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:10px 12px 4px;border-top:1px solid var(--rule);margin-top:4px}.pick-empty{padding:12px 10px;color:var(--muted);font-size:calc(var(--fs-sm) * var(--fs,1))}.cmp__chart{position:relative;margin-top:14px;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 14px 8px}.cmp__plot{width:100%}.cmp__plot svg{display:block;width:100%;height:auto;touch-action:none}.cmp-grid line{stroke:var(--rule)}.cmp-xaxis line{stroke:var(--rule-strong)}.cmp-zero{stroke:var(--rule-strong);stroke-width:1.5}.cmp-zero--line{stroke:var(--rule);stroke-width:1}.cmp-rename line{stroke:var(--rule-strong);stroke-width:1;stroke-dasharray:3 3;shape-rendering:crispEdges}.cmp-rename text{fill:var(--muted);font-family:var(--font-label);font-size:calc(var(--fs-micro) * var(--fs,1));paint-order:stroke;stroke:var(--panel);stroke-width:3px;stroke-linejoin:round}.cmp-axis text{fill:var(--muted);font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1))}.cmp-series{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.cmp-endchip text{font-family:var(--font-ticker);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600}.cmp-endchip text.cmp-endchip-name{font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;opacity:.85}.cmp-endchip-val{font-weight:700}.cmp-cap{fill:transparent}.is-isolating .cmp-bar{opacity:.15}.is-isolating .cmp-bar.is-focused{opacity:1}.is-isolating .cmp-chipline,.is-isolating .cmp-divergence-fill,.is-isolating .cmp-drip,.is-isolating .cmp-endchip,.is-isolating .cmp-enddot,.is-isolating .cmp-series{opacity:.13}.is-isolating .is-focused{opacity:1}.cmp__plot svg .cmp-bar,.cmp__plot svg .cmp-chipline,.cmp__plot svg .cmp-divergence-fill,.cmp__plot svg .cmp-drip,.cmp__plot svg .cmp-endchip,.cmp__plot svg .cmp-enddot,.cmp__plot svg .cmp-series{transition:opacity .16s linear}.cmp-seg{transition:opacity .24s}.cmp-seg{pointer-events:none}.cmp-seg-caphit{pointer-events:all;fill:none}.cmp-bar:hover .cmp-seg{filter:brightness(1.06)}.cmp-bar-val{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:700}.cmp-bar-tk{font-family:var(--font-ticker);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;fill:var(--muted)}.cmp-bar-hit{cursor:default}@keyframes cmpBarGrow{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes cmpFadeUp{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes cmpFadeIn{from{opacity:0}to{opacity:1}}.cmp-bars .cmp-seg{transform-box:view-box;transform-origin:center var(--cmp-zero,50%);animation:cmpBarGrow .42s cubic-bezier(.22,.61,.36,1) both}.cmp-bars .cmp-bar-val{animation:cmpFadeUp .5s ease .12s both}.cmp-bars .cmp-bar-tk{animation:cmpFadeIn .5s ease .1s both}.cmp-mode-bar .cmp-grid line{animation:cmpFadeIn .4s ease both}.cmp-mode-bar .cmp-axis text{animation:cmpFadeUp .45s ease both}.cmp-mode-bar .cmp-zero{animation:cmpFadeIn .4s ease both}.cmp-sideways .cmp-axis text,.cmp-sideways .cmp-bars .cmp-bar-val{animation-name:cmpFadeIn}@media(prefers-reduced-motion:reduce){.cmp-bars .cmp-bar-tk,.cmp-bars .cmp-bar-val,.cmp-bars .cmp-seg,.cmp-mode-bar .cmp-axis text,.cmp-mode-bar .cmp-grid line,.cmp-mode-bar .cmp-zero{animation:none}}.cmp-morph .cmp-seg{animation:none!important}.cmp-cross{stroke:var(--muted);stroke-width:1;stroke-dasharray:3 3}.cmp__ccywarn{margin:8px 0 0;font-family:var(--font-body);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:600;line-height:1.35;color:var(--bad)}.cmp__ccywarn strong{font-weight:800}.cmp-inchart-legend .cmp-legend-txt{font-family:var(--font-body);font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:600;fill:var(--text-soft)}.cmp-usd{cursor:pointer;outline:0}.cmp-usd-hit{fill:transparent;stroke:none}.cmp-usd-track{fill:var(--panel-2);stroke:var(--rule-strong);stroke-width:1.5;transition:stroke .16s}.cmp-usd-knob{fill:var(--muted)}.cmp-usd:hover .cmp-usd-track{stroke:var(--muted)}.cmp-usd.is-on .cmp-usd-track{fill:var(--accent2);stroke:var(--accent2)}.cmp-usd.is-on .cmp-usd-knob{fill:var(--on-accent)}.cmp-inchart-legend .cmp-usd.is-on .cmp-legend-txt{font-weight:700;fill:var(--text)}.cmp-usd:focus-visible .cmp-usd-hit{stroke:var(--accent2);stroke-width:2}.cmp-usd.is-off{cursor:not-allowed}.cmp-usd.is-off .cmp-legend-txt,.cmp-usd.is-off .cmp-usd-knob,.cmp-usd.is-off .cmp-usd-track{opacity:.45}.cmp-usd.is-off:hover .cmp-usd-track{stroke:var(--rule-strong)}.cmp-dripleg{outline:0}.cmp-dripleg-hit{fill:transparent;stroke:none}.cmp-dripleg:focus-visible .cmp-dripleg-hit{stroke:var(--accent2);stroke-width:2}.cmp-usdtip{position:fixed;left:0;top:0;width:max-content;max-width:min(230px,calc(100vw - 32px));text-wrap:balance;background:var(--text);color:var(--bg);font-size:calc(var(--fs-xs) * var(--fs,1));font-weight:500;line-height:1.45;padding:9px 12px;border-radius:8px;text-align:left;font-family:var(--font-body);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s,visibility .14s;z-index:80}.cmp-usdtip.is-on{opacity:1;visibility:visible}.cmp-price-label{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));font-weight:700}.cmp-band{fill:var(--text);opacity:.07}:root[data-theme=dark] .cmp-band{fill:#FFFFFF;opacity:.09}.cmp-band-edge{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 2;opacity:.75}.cmp-band-dot{stroke:var(--panel);stroke-width:1.5}.cmp__seltip{position:absolute;z-index:31;pointer-events:none;background:var(--panel);color:var(--text);border:1px solid var(--rule-strong);border-radius:9px;padding:9px 11px;font-size:calc(var(--fs-xs) * var(--fs,1));box-shadow:0 12px 30px -8px rgba(0,0,0,.34);min-width:150px;max-width:240px}.cmp-seltip__head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:6px}.cmp__seltip .tdate{font-weight:700;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));opacity:.85}.cmp__seltip .trow{display:flex;align-items:center;gap:7px;line-height:1.7}.cmp__seltip .trow .sw{width:9px;height:9px;border-radius:2px;flex-shrink:0}.cmp__seltip .trow .tk{font-family:var(--font-ticker);font-weight:600;flex:1}.cmp__seltip .trow .tv{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700;margin-left:auto}.cmp__seltip .trow .tv.up{color:var(--good)}.cmp__seltip .trow .tv.down{color:var(--bad)}.cmp-seltip__x{flex-shrink:0;width:18px;height:18px;border:0;background:0 0;color:inherit;opacity:.55;cursor:pointer;border-radius:4px;pointer-events:auto;display:flex;align-items:center;justify-content:center;padding:0;line-height:0;position:relative;top:-1px}.cmp-seltip__x svg{width:12px;height:12px;display:block}.cmp-seltip__x:hover{opacity:1;background:rgba(128,128,128,.25)}.cmp__hint{font-size:calc(var(--fs-note) * var(--fs,1));color:var(--muted);margin-top:9px;text-align:center}@media (max-width:680px){.cmp__hint{text-wrap:balance}.cmp__hint-2{display:block}}.cmp__tip{position:absolute;z-index:30;pointer-events:none;background:var(--panel);color:var(--text);border:1px solid var(--rule-strong);border-radius:9px;padding:9px 11px;font-size:calc(var(--fs-xs) * var(--fs,1));box-shadow:0 12px 30px -8px rgba(0,0,0,.34);min-width:140px;max-width:min(300px,calc(100vw - 24px))}.cmp__tip .tdate{font-weight:700;margin-bottom:6px;font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-micro) * var(--fs,1));opacity:.85}.cmp__tip .trow{display:flex;align-items:center;gap:7px;line-height:1.7}.cmp__seltip,.cmp__tip{--tip-soft-mix:var(--panel)}.cmp__tip .trow--sum{border-top:1px solid var(--rule);margin-top:3px;padding-top:4px;font-weight:700}.cmp__tip .trow .tv.up{color:var(--good)}.cmp__tip .trow .tv.down{color:var(--bad)}.cmp__tip .trow .sw{width:9px;height:9px;border-radius:2px;flex-shrink:0}.cmp__tip .trow .tk{font-family:var(--font-ticker);font-weight:600;flex:1;white-space:nowrap}.cmp__tip .trow .tv{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;margin-left:auto;padding-left:8px;white-space:nowrap}.cmp__status{text-align:center;color:var(--muted);font-size:calc(var(--fs-sm) * var(--fs,1));padding:6px 0 4px;min-height:8px}.cmp__empty{display:grid;place-items:center;min-height:280px;color:var(--muted);text-align:center;padding:20px}.cmp__empty.cmp__error strong{color:var(--text)}.cmp__empty.cmp__error{color:var(--muted);line-height:1.55}.cmp__legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px}.cmp__legend .item{display:flex;align-items:center;gap:6px;font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--text-soft)}.cmp__legend .swline{width:18px;height:0;border-top-width:2px;border-top-style:solid;flex-shrink:0}.cmp__legend .swline--dashed{border-top:0;height:2px;background-image:linear-gradient(to right,currentColor 0 5px,transparent 5px 11px);background-repeat:repeat-x;background-size:11px 2px;color:inherit}.cmp-leg{display:inline-flex;align-items:center;gap:8px;font-size:calc(var(--fs-sm) * var(--fs,1))}.cmp-leg .sw{width:12px;height:3px;border-radius:2px}.cmp-leg .ltk{font-family:var(--font-ticker);font-weight:600}.cmp-leg .lv{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600}.cmp-leg .lv.up{color:var(--good)}.cmp-leg .lv.down{color:var(--bad)}.cmp__tablewrap{container-type:inline-size;overflow-x:auto;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow)}table.cmp-dt{width:100%;border-collapse:collapse;font-size:calc(var(--fs-sm) * var(--fs,1));min-width:1035px;table-layout:fixed}table.cmp-dt{--cmp-gap:max(0px, calc((max(100cqw, 1035px) - 670px * var(--fs,1) - 44px) / 7))}table.cmp-dt col:first-child{width:calc(54px * var(--fs,1) + 4px + var(--cmp-gap))}table.cmp-dt col:nth-child(2){width:calc(70px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt col:nth-child(3){width:calc(160px * var(--fs,1) + 32px)}table.cmp-dt col:nth-child(4){width:calc(51px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt col:nth-child(5){width:calc(55px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt col:nth-child(6){width:calc(97px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt col:nth-child(7){width:calc(89px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt col:nth-child(8){width:calc(94px * var(--fs,1) + 8px + var(--cmp-gap))}table.cmp-dt--usd{--cmp-gap:max(0px, calc((max(100cqw, 1035px) - 751px * var(--fs,1) - 44px) / 8))}table.cmp-dt--usd col:nth-child(8){width:calc(94px * var(--fs,1) + var(--cmp-gap))}table.cmp-dt--usd col:nth-child(9){width:calc(81px * var(--fs,1) + 8px + var(--cmp-gap))}table.cmp-dt td:first-child,table.cmp-dt th:first-child{position:sticky;left:0;z-index:2;background:var(--panel);overflow:visible;box-shadow:1px 0 0 0 var(--rule)}table.cmp-dt td:first-child::after,table.cmp-dt th:first-child::after{content:"";position:absolute;top:0;right:-24px;bottom:0;width:24px;opacity:0;transition:opacity .18s ease;pointer-events:none;background:linear-gradient(to right,rgba(14,26,20,.1),rgba(14,26,20,.035) 45%,transparent)}:root[data-theme=dark] table.cmp-dt td:first-child::after,:root[data-theme=dark] table.cmp-dt th:first-child::after{background:linear-gradient(to right,rgba(255,255,255,.16),rgba(255,255,255,.055) 45%,transparent)}.cmp__tablewrap.is-scrolled table.cmp-dt td:first-child::after,.cmp__tablewrap.is-scrolled table.cmp-dt th:first-child::after{opacity:1}.cmp__tablewrap:not(.is-scrolled) table.cmp-dt td:first-child,.cmp__tablewrap:not(.is-scrolled) table.cmp-dt th:first-child{box-shadow:none}table.cmp-dt th{text-align:right;font-size:calc(var(--fs-micro) * var(--fs,1));letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700;padding:11px 16px;border-bottom:1px solid var(--rule);white-space:nowrap;line-height:1.25;vertical-align:bottom}table.cmp-dt th.l{text-align:left}table.cmp-dt td{padding:10px 16px;border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-num);font-variant-numeric:tabular-nums}table.cmp-dt td.l{text-align:left;font-family:var(--font-body)}table.cmp-dt--compound{table-layout:auto;width:max-content;min-width:100%}table.cmp-dt--compound col:nth-child(n){width:auto}table.cmp-dt--compound td,table.cmp-dt--compound th{white-space:nowrap;overflow:visible;text-overflow:clip;padding-left:14px;padding-right:14px}table.cmp-dt--compound th{text-align:right;vertical-align:bottom}table.cmp-dt--compound td.l,table.cmp-dt--compound th.l{text-align:left;padding-left:12px}table.cmp-dt--compound td:first-child,table.cmp-dt--compound th:first-child{padding-left:20px}table.cmp-dt--compound td:last-child,table.cmp-dt--compound th:last-child{padding-right:20px}table.cmp-dt tbody tr:last-child td{border-bottom:0}.cmp-dt td:first-child,.cmp-dt th:first-child{padding-left:20px;padding-right:20px}.cmp-dt td:last-child,.cmp-dt th:last-child{padding-right:24px}table.cmp-dt .ctk{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-ticker);font-weight:600}table.cmp-dt .ctk .sw{width:10px;height:10px;border-radius:3px}.ctk--btn{border:0;background:0 0;padding:0;cursor:pointer;color:var(--text);font-family:inherit;font-size:inherit;font-weight:inherit;transition:color .15s}.ctk--btn:hover{color:var(--accent)}.ctk--btn:hover .tkt{text-decoration:underline;text-underline-offset:2px}.ctk--btn:focus-visible{outline:2px solid var(--accent2);outline-offset:2px;border-radius:4px}.cell-pos{color:var(--good)}.cell-neg{color:var(--bad)}.cmp-contrib{color:var(--accent);font-weight:600}.cmp-dist{color:var(--text);font-weight:600}.cmp-period{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:calc(var(--fs-xs) * var(--fs,1));color:var(--muted);white-space:nowrap}.cmp-yield{color:var(--accent);font-weight:700}.cmp__method{margin-top:28px;font-size:calc(var(--fs-note) * var(--fs,1));color:var(--muted);line-height:1.65}.cmp__method:empty{display:none}.cmp__method h4{margin:12px 0 4px;font-size:calc(var(--fs-note) * var(--fs,1));color:var(--text);font-weight:700}.cmp__method h4:first-child{margin-top:0}.cmp__method p{margin:0 0 16px}.cmp__method p:last-child{margin-bottom:0}.cmp__method ul{margin:0 0 6px;padding-left:17px}.cmp__method li{margin:0 0 3px}.cmp__msec+.cmp__msec{margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}.cmp__msec>:last-child{margin-bottom:0}.cmp .sh-sub code,.cmp__method code{font-family:var(--font-mono);font-size:.92em;color:var(--text-soft);background:var(--panel-2);border:1px solid var(--rule);border-radius:5px;padding:1px 5px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.cmp__method b,.cmp__method strong{color:var(--text)}.cmp__rangehint{display:flex;gap:9px;align-items:flex-start;margin-top:12px;padding:10px 13px;border-radius:11px;background:var(--accent-tint);border:1px solid var(--accent-soft);color:var(--text-soft);font-size:calc(var(--fs-xs) * var(--fs,1));line-height:1.5}.cmp__rangehint svg{color:var(--accent);flex-shrink:0;margin-top:1px}.cmp__rangehint{flex-direction:column;gap:6px}.cmp__hintrow{display:flex;gap:9px;align-items:flex-start}.cmp__hint-link{background:0 0;border:0;color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer;font-size:inherit;padding:0;font-family:inherit}.cmp__hint-link:hover{opacity:.8}@media (max-width:680px){.cmp__chart{padding:10px 8px 6px}.seg button{padding:7px 11px}.seg--ranges button{padding:7px 4px;min-width:0}}@media (max-width:359px){.seg--ranges{border-radius:14px}}:where(button,.btn,.btn-ext,.btn-add,.fp-btn,.ann-btn,.d-link,.icon-btn,.chip-static--btn,.nav-dd__menu a,.topnav__link,.footer-nav a,.back-link,.toplink,.prov-badge,[role=button]){transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease,filter .2s ease,opacity .2s ease}@media (prefers-reduced-motion:reduce){:where(button,.btn,.btn-ext,.btn-add,.fp-btn,.ann-btn,.d-link,.icon-btn,.chip-static--btn,.nav-dd__menu a,.topnav__link,.footer-nav a,.back-link,.toplink,.prov-badge,[role=button]){transition:none}}

/* === STYLE 1 === */
:root{--mast:var(--panel);--mast-fill:var(--accent);--mast-soft:var(--text-soft);--mast-hl:var(--accent);--mast-ui:var(--accent);--mast-gap:clamp(20px,2.2vw,32px);--mast-on:var(--text);--mast-label:var(--muted);--mast-ph:var(--muted);--mast-field:var(--panel);--mast-fieldline:var(--rule-strong);--mast-hover:var(--hover);--mast-press:var(--hover);--mast-mark:var(--accent-tint);--mast-annbg:var(--accent-tint);--mast-annline:var(--accent-soft);--mast-anntext:var(--text);--mast-btn:var(--accent);--mast-btnfg:var(--on-accent);--mast-btnhover:color-mix(in srgb,var(--accent) 85%,var(--text));--mast-btnhoverfg:var(--on-accent);--mast-togglebg:var(--panel-2);--mast-toggleon:var(--accent);--mast-toggleonfg:var(--on-accent);--mast-edge:var(--rule);--mast-title:var(--accent);--mast-logo:var(--accent);--mast-fadec:var(--bg);--mast-band:var(--bg)}.topbar{background:color-mix(in srgb,var(--bg) 88%,transparent)!important;border-bottom:1px solid var(--rule)}.topbar .brand,.topbar .brand__txt,.topbar .brand__txt *{color:var(--text)}.topbar .brand__mark{background:var(--accent-tint)}.hero,.page-head:not(.fp-top){background:transparent;box-shadow:none;clip-path:none}.hero::before,.page-head::before{display:none!important}.hero h1 em{color:inherit}.pc-name,.prov-head .section-head h2,.provhero h1,h2[data-ck="compare.table.title"],h2[data-ck="supporters.tool.advchart.title"],h2[data-ck="supporters.tool.growth.title"],h2[data-ck="supporters.tool.income.title"],h2[data-ck="supporters.tool.tax.title"]{font-family:var(--font-head)!important;font-weight:700!important;letter-spacing:-.01em!important}.pc-name{font-size:calc(var(--fs-md) * var(--fs,1))!important}.provhero h1{font-size:clamp(24px,2.8vw,32px)!important}.chip{border-radius:6px!important}.tag{border-radius:4px!important}.hero.has-gradient::before,.page-head.has-gradient::before,.prov-head.has-gradient::before,html.mp-hero .hero::before,html.mp-hero .page-head::before,html.mp-hero .prov-head::before{display:none!important;height:0!important}.topbar.grad-mode,html.mp-hero .topbar{background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);border-bottom-color:var(--rule)}.brand__full img,.brand__full svg{max-height:30px}@media (max-width:560px){.brand__full img,.brand__full svg{max-height:28px}}



/* === Maple Paycheque Enhancements: Tax Efficiency Breakdown & Correlation Heatmap === */
.card-historical-returns { margin-top: 0; padding-top: 8px; border-top: 1px solid var(--rule); }
.card__yield .card-yield-streak { margin-left: auto; align-self: center; background: var(--panel); border-color: var(--rule-strong); color: var(--accent); white-space: nowrap; }
.card-historical-returns table { width: 100%; table-layout: fixed; border-collapse: collapse; text-align: right; }
.card-historical-returns caption { text-align: left; margin-bottom: 8px; font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; color: var(--muted); }
.card-historical-returns th { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); font-weight: 500; padding: 4px 2px; }
.card-historical-returns th:first-child { width: 34%; text-align: left; }
.card-historical-returns td { padding: 4px 2px; font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.card-return-value.up { color: var(--good); }
.card-return-value { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }
.card-return-value.down { color: var(--bad); }
.card-return-value.flat { color: var(--text-soft); }
.card-return-unavailable { color: var(--muted); }
.card-return-note { margin: 8px 0 0; color: var(--muted); font-family: var(--font-body); font-size: calc(var(--fs-micro) * var(--fs, 1)); line-height: 1.5; }
@media (max-width: 680px) {
  #adminBackdrop div:has(> #adminSyncCounter) { flex-wrap: wrap; }
  #adminSyncCounter { flex-basis: 100%; text-align: left; }
}
.card-annual-summary { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 12px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--rule); }
.card-annual-value { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-2xl) * var(--fs, 1)); font-weight: 700; margin-top: 6px; }
.sustainability-letter { display: inline-block; font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xl) * var(--fs, 1)); font-weight: 700; color: var(--muted); line-height: 1.3; }
.sustainability-status { font-family: var(--font-body); font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); margin-left: 5px; }
.card-annual-summary .sustainability-letter { margin-top: 6px; }

.investor-view {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 22px 48px;
  color: var(--text);
}
.investor-view[hidden] { display: none; }
.scoring-view {
  max-width: var(--shell);
  margin: 0 auto;
  padding: 0 22px 48px;
  color: var(--text);
}
.scoring-view[hidden] { display: none; }
.scoring-intro { margin: 0 0 18px; font-size: calc(var(--fs-md) * var(--fs, 1)); line-height: 1.65; }
.scoring-section { padding: 24px 0; border-bottom: 1px solid var(--rule); }
.scoring-section h2 { margin: 0 0 16px; font-family: var(--font-head); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: var(--head-w, 700); line-height: 1.3; }
.scoring-section p,
.scoring-section li { font-size: calc(var(--fs-md) * var(--fs, 1)); line-height: 1.65; }
.scoring-section ul { padding-left: 22px; }
.scoring-section li + li { margin-top: 8px; }
.scoring-balance { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin: 24px 0 30px; }
.scoring-balance > div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 0 0 12px; border-bottom: 4px solid var(--accent2); }
.scoring-balance > div + div { border-color: var(--accent); }
.scoring-balance-four { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.scoring-balance-four > div:nth-child(3) { border-color: var(--accent2); }
.scoring-balance-four > div:nth-child(4) { border-color: var(--accent); }
.scoring-balance span { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; color: var(--text-soft); }
.scoring-balance strong { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-2xl) * var(--fs, 1)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.scoring-balance strong small { font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 500; color: var(--muted); }
.scoring-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 34px; margin: 24px 0; }
.scoring-group { min-width: 0; border-top: 1px solid var(--rule-strong); }
.scoring-group > header { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; padding: 14px 0 8px; }
.scoring-group h3 { margin: 0; font-family: var(--font-head); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: var(--head-w, 700); line-height: 1.3; }
.scoring-group > header > span { color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; white-space: nowrap; }
.scoring-measures { margin: 0; }
.scoring-measures > div { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 14px 0; border-top: 1px solid var(--rule); }
.scoring-measures dt { display: flex; align-items: center; gap: 10px; font-family: var(--font-label, var(--font-body)); color: var(--text); }
.scoring-measures dt > span { display: grid; place-items: center; width: 30px; height: 30px; flex: 0 0 30px; border: 1px solid var(--rule-strong); border-radius: 50%; font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-variant-numeric: tabular-nums; }
.scoring-measures dt > strong { font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 600; }
.scoring-measures dd { margin: 0 0 0 40px; color: var(--text-soft); font-size: calc(var(--fs-md) * var(--fs, 1)); line-height: 1.65; }
.leaderboard-view { max-width: var(--shell); margin: 0 auto; padding: 0 22px 48px; color: var(--text); }
.leaderboard-view[hidden] { display: none; }
.leaderboard-section { padding: 8px 0 28px; }
.leaderboard-rankings-section { border-top: 1px solid var(--rule); padding-top: 28px; margin-top: 4px; }
.leaderboard-section > .section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px 20px; flex-wrap: wrap; margin: 18px 0 12px; }
.leaderboard-section-title-group { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.leaderboard-eyebrow { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; letter-spacing: 0; color: var(--accent); line-height: 1.2; }
.leaderboard-section > .section-head h2 { margin: 0; font-family: var(--font-head); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: var(--head-w, 700); letter-spacing: 0; line-height: 1.2; color: var(--text); }
.leaderboard-section > .section-head p { margin: 2px 0 0; color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); letter-spacing: 0; line-height: 1.45; }
.leaderboard-head-links { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; }
.leaderboard-asof { color: var(--muted); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); letter-spacing: 0; }
.leaderboard-head-link { display: inline-flex; align-items: center; gap: 5px; padding: 6px 11px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); color: var(--text); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; letter-spacing: 0; text-decoration: none; line-height: 1; }
.leaderboard-head-link:hover { border-color: var(--accent); background: var(--accent-tint); color: var(--text); }
.leaderboard-note { margin: 6px 0 14px; color: var(--text-soft); font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.6; letter-spacing: 0; max-width: 920px; }
.leaderboard-groups-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); padding: 10px 0 8px; gap: 18px; }
.leaderboard-group-card { padding: 18px; gap: 14px; border-radius: 0 0 var(--radius) var(--radius); }
.leaderboard-group-card.is-selected { border-color: var(--accent2); box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent2) 28%, transparent), var(--shadow); }
.leaderboard-group-content { pointer-events: auto; gap: 14px; }
.leaderboard-group-top { align-items: flex-start; gap: 12px; }
.leaderboard-group-icon { width: 40px; height: 40px; border-radius: 10px; background: color-mix(in srgb, var(--pcs, var(--accent)) 14%, var(--panel-2)); border: 1px solid color-mix(in srgb, var(--pcs, var(--accent)) 35%, var(--rule)); color: var(--pcs, var(--accent)); letter-spacing: 0; }
:root[data-theme=dark] .leaderboard-group-icon { background: color-mix(in srgb, var(--pcs, var(--accent)) 22%, var(--panel-2)); color: var(--text); }
.leaderboard-group-heading { flex: 1; min-width: 0; }
.leaderboard-group-title-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.leaderboard-group-title-row .pc-name { margin: 0; letter-spacing: 0 !important; }
.leaderboard-group-pill { font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; letter-spacing: 0; padding: 3px 8px; border-radius: 999px; background: var(--panel-2); border: 1px solid var(--rule-strong); color: var(--text-soft); white-space: nowrap; }
.leaderboard-group-pill--warn { background: var(--accent-tint); border-color: var(--accent-soft); color: var(--accent); }
.leaderboard-group-heading .pc-tag { margin: 4px 0 0; line-height: 1.4; letter-spacing: 0; }
.leaderboard-group-stats .pc-stat .l { letter-spacing: 0 !important; }
.leaderboard-group-list-wrap { display: flex; flex-direction: column; gap: 6px; flex: 1 1 auto; }
.leaderboard-group-list-wrap .pc-top3-label { letter-spacing: 0; margin-bottom: 0; }
.leaderboard-group-list { display: flex; flex-direction: column; gap: 2px; }
.leaderboard-group-li { padding: 0 !important; cursor: default !important; }
.leaderboard-group-li:hover { background: transparent !important; margin: 0 !important; padding: 0 !important; }
.leaderboard-group-fund { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 7px 8px; margin: 0 -8px; width: calc(100% + 16px); border: 0; border-radius: 8px; background: transparent; color: var(--text); font: inherit; text-align: left; cursor: pointer; }
.leaderboard-group-fund:hover { background: color-mix(in srgb, var(--pcs, var(--accent)) 10%, var(--panel-2)); }
:root[data-theme=dark] .leaderboard-group-fund:hover { background: color-mix(in srgb, var(--pcs, var(--accent)) 20%, var(--panel-2)); }
.leaderboard-group-rank { width: 20px; height: 20px; border-radius: 6px; background: var(--panel-2); border: 1px solid var(--rule); color: var(--muted); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; font-variant-numeric: tabular-nums; display: grid; place-items: center; flex-shrink: 0; }
.leaderboard-group-li:first-child .leaderboard-group-rank { background: var(--accent-tint); border-color: var(--accent-soft); color: var(--accent); }
.leaderboard-group-fund-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.leaderboard-group-fund-top { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; min-width: 0; }
.leaderboard-group-fund-top .mv-tk { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text); letter-spacing: 0; }
.leaderboard-group-prov { display: inline-flex; align-items: center; gap: 4px; font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; color: var(--muted); letter-spacing: 0; white-space: nowrap; }
.leaderboard-group-prov .dot { width: 6px; height: 6px; }
.leaderboard-group-yield { margin-left: auto; font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; font-variant-numeric: tabular-nums; color: var(--text-soft); letter-spacing: 0; white-space: nowrap; }
.leaderboard-group-fund-name { max-width: none !important; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); letter-spacing: 0; }
.leaderboard-score-pill { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 26px; padding: 0 8px; border-radius: 7px; border: 1px solid var(--rule-strong); background: var(--panel-2); color: var(--text); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: 0; flex-shrink: 0; }
.leaderboard-score-pill[data-tier="high"] { background: var(--good-tint); border-color: color-mix(in srgb, var(--good) 40%, var(--rule)); color: var(--good); }
.leaderboard-score-pill[data-tier="mid"] { background: var(--accent-tint); border-color: var(--accent-soft); color: var(--accent); }
.leaderboard-score-pill[data-tier="low"] { background: var(--panel-2); border-color: var(--rule-strong); color: var(--text-soft); }
.leaderboard-group-empty { padding: 12px 10px !important; border-radius: 8px; background: var(--panel-2); color: var(--muted); font-size: calc(var(--fs-xs) * var(--fs, 1)); line-height: 1.5; letter-spacing: 0; cursor: default !important; }
.leaderboard-group-foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 10px; border-top: 1px solid var(--rule); flex-wrap: wrap; }
.leaderboard-group-filter-btn { border: 1px solid var(--rule-strong); background: var(--panel-2); color: var(--text-soft); border-radius: 7px; padding: 6px 10px; font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; letter-spacing: 0; line-height: 1.1; cursor: pointer; }
.leaderboard-group-filter-btn:hover { border-color: var(--accent); color: var(--text); background: var(--hover); }
.leaderboard-group-filter-btn[aria-pressed="true"] { background: var(--accent2); border-color: var(--accent2); color: var(--on-accent); }
.leaderboard-group-screener-btn { margin-top: 0; margin-left: auto; border: 0; background: transparent; padding: 6px 4px; color: var(--text); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; letter-spacing: 0; cursor: pointer; }
.leaderboard-group-screener-btn:hover { color: var(--accent); }
.leaderboard-rankings-controls { display: flex; align-items: center; gap: 10px; }
.leaderboard-compare-all { flex: 0 0 auto; margin-left: auto; }
.leaderboard-view-toggle { margin-left: 0; }
.leaderboard-filter-chips { margin: 8px 0 18px; }
.screener-group-filter-field { min-width: 168px; }
.leaderboard-cards-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 16px; }
.leaderboard-etf-card { padding: 16px; gap: 12px; }
.leaderboard-card-content { gap: 11px; flex: 1 1 auto; }
.leaderboard-rank-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; height: 22px; padding: 0 7px; border-radius: 6px; background: var(--panel-2); border: 1px solid var(--rule-strong); color: var(--text-soft); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: 0; line-height: 1; }
.leaderboard-rank-badge[data-rank-tier="podium"] { background: var(--accent-tint); border-color: var(--accent-soft); color: var(--accent); }
.leaderboard-card-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 10px; align-items: stretch; }
.leaderboard-score-box { pointer-events: auto; position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: space-between; gap: 8px; padding: 10px 12px; border-radius: var(--radius-sm); background: var(--panel-2); border: 1px solid var(--rule); }
.leaderboard-score-box-head { display: flex; align-items: baseline; gap: 8px; }
.leaderboard-score-big { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-3xl) * var(--fs, 1)); font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1; color: var(--text); letter-spacing: 0; }
.leaderboard-score-big[data-tier="high"] { color: var(--good); }
.leaderboard-score-big[data-tier="mid"] { color: var(--accent); }
.leaderboard-score-meta { display: flex; flex-direction: column; line-height: 1.15; }
.leaderboard-score-lbl { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; color: var(--muted); letter-spacing: 0; }
.leaderboard-score-new { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; color: var(--accent); letter-spacing: 0; }
.leaderboard-score-bars { display: flex; flex-direction: column; gap: 5px; }
.leaderboard-score-bar-row { display: flex; flex-direction: column; gap: 2px; }
.leaderboard-score-bar-labels { display: flex; align-items: baseline; justify-content: space-between; gap: 6px; font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--text-soft); letter-spacing: 0; line-height: 1.2; }
.leaderboard-score-bar-labels strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; font-weight: 600; color: var(--text); }
.leaderboard-score-bar-track { width: 100%; height: 4px; border-radius: 999px; background: var(--rule); overflow: hidden; }
.leaderboard-score-bar-fill { display: block; height: 100%; border-radius: 999px; }
.leaderboard-score-bar-fill--payout { background: var(--accent2); }
.leaderboard-score-bar-fill--price { background: var(--accent); }
.leaderboard-yield-box { flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 6px; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--accent-soft) 55%, var(--rule)); }
.leaderboard-yield-main { display: flex; flex-direction: column; gap: 2px; }
.leaderboard-yield-main .y-num { font-size: calc(var(--fs-2xl) * var(--fs, 1)) !important; line-height: 1.05; letter-spacing: 0; }
.leaderboard-yield-main .y-lbl { letter-spacing: 0; }
.leaderboard-yield-box .card-yield-streak { pointer-events: auto; position: relative; z-index: 1; margin-left: 0; align-self: flex-start; }
.leaderboard-etf-card .card-historical-returns { pointer-events: auto; position: relative; z-index: 1; margin-top: auto; }
.leaderboard-card-foot { pointer-events: auto; position: relative; z-index: 1; display: flex; align-items: center; gap: 8px; padding-top: 10px; border-top: 1px solid var(--rule); }
.leaderboard-card-btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 34px; padding: 6px 10px; border-radius: var(--radius-sm); border: 1px solid var(--rule-strong); background: var(--panel-2); color: var(--text); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; letter-spacing: 0; line-height: 1; cursor: pointer; }
.leaderboard-card-btn:hover { background: var(--hover); border-color: var(--accent); }
.leaderboard-card-btn--primary { background: color-mix(in srgb, var(--accent2) 12%, var(--panel-2)); border-color: color-mix(in srgb, var(--accent2) 38%, var(--rule-strong)); color: var(--text); }
.leaderboard-card-btn--primary:hover { background: var(--accent2); border-color: var(--accent2); color: var(--on-accent); }
.leaderboard-table-wrap { width: 100%; overflow-x: auto; }
.leaderboard-table { width: 100%; border-collapse: collapse; text-align: left; }
.leaderboard-table th { padding: 10px 12px; border-bottom: 1px solid var(--rule-strong); color: var(--muted); font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; letter-spacing: 0; }
.leaderboard-table td { padding: 14px 12px; border-bottom: 1px solid var(--rule); font-size: calc(var(--fs-base) * var(--fs, 1)); }
.leaderboard-rank { width: 64px; color: var(--muted); font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }
.leaderboard-fund { border: 0; padding: 0; background: none; color: var(--text); font: inherit; font-weight: 600; text-align: left; }
.leaderboard-fund:hover { color: var(--accent); text-decoration: underline; }
.leaderboard-fund:focus-visible { outline: 2px solid var(--accent2); outline-offset: 3px; }
.leaderboard-fund span { margin-left: 8px; color: var(--text-soft); font-weight: 400; }
.leaderboard-provider { display: block; margin-top: 3px; color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.leaderboard-score { width: 100px; color: var(--text); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xl) * var(--fs, 1)) !important; font-variant-numeric: tabular-nums; font-weight: 700; text-align: right; white-space: nowrap; }
.score-data-status { display: flex; align-items: center; gap: 8px; padding: 8px 22px; color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.score-retry { border: 0; padding: 0; background: none; color: var(--accent); font: inherit; font-weight: 600; text-decoration: underline; }
.score-filter-field { min-width: 128px; }
.card-score-badge { display: inline-flex; align-items: center; gap: 6px; margin: 4px 0 6px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); padding: 3px 8px; color: var(--text-soft); background: var(--panel-2); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-variant-numeric: tabular-nums; font-weight: 600; }
.card-score-badge--short { border-color: var(--accent); }
.card-score-new { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; letter-spacing: 0; color: var(--accent); }
.discovery-view h2 { font-family: var(--font-head); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: var(--head-w, 700); margin: 34px 0 14px; letter-spacing: 0; }
.discovery-view .section-head h2 { margin: 0; }
.discovery-view label { display: grid; gap: 6px; color: var(--muted); font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; }
.discovery-view th,
.discovery-view td { min-width: 120px; max-width: 280px; white-space: normal !important; overflow-wrap: anywhere; }
.discovery-decisions { display: flex; gap: 8px; }
#discoveryRunState > .investor-metrics { display: flex; flex-wrap: wrap; gap: 24px 40px; }
#discoveryRunState .investor-metric { min-width: 80px; }
#discoverySources details { border-bottom: 1px solid var(--rule); padding-bottom: 18px; }
.discovery-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); padding-top: 0; }
.discovery-candidate { min-width: 0; gap: 14px; box-shadow: var(--shadow); }
.discovery-card-header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding-top: 6px; }
.discovery-ticker { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-2xl) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.discovery-state { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); text-transform: uppercase; font-weight: 700; color: var(--muted); }
.discovery-name { margin: 0; font-family: var(--font-body); font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 600; line-height: 1.5; color: var(--text-soft); }
.discovery-identity { margin: 0; font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.5; color: var(--muted); }
.discovery-identity strong { color: var(--good); font-weight: 600; }
.discovery-card-metadata { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 0; padding: 12px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.discovery-card-metadata dt { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); text-transform: uppercase; color: var(--muted); font-weight: 600; }
.discovery-card-metadata dd { margin: 6px 0 0; font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); line-height: 1.5; color: var(--text-soft); overflow-wrap: anywhere; }
.discovery-candidate > a { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--accent); font-weight: 600; }
.discovery-candidate > label { margin-top: auto; }
.discovery-candidate .discovery-decisions { padding-top: 2px; }
.discovery-candidate .discovery-decisions button { flex: 1; }
.discovery-candidate details { margin: 0; }
.discovery-candidate details p { font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.6; color: var(--text-soft); }
.discovery-review-feedback { max-width: 240px; margin: 8px 0 0; }
#discoveryToken[aria-invalid="true"] { border-color: var(--bad); outline: 1px solid var(--bad); }
.investor-section-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.investor-view > .page-head h1 { letter-spacing: 0; }
.investor-fund-heading > p { color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.investor-controls {
  display: flex;
  align-items: end;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px 0 24px;
}
.investor-controls label { display: grid; gap: 8px; font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; color: var(--muted); min-width: 0; }
.investor-fund-label { flex: 1; min-width: min(100%, 260px) !important; }
.investor-fund-label > label { display: block; margin-bottom: 8px; }
.investor-fund-picker { position: relative; min-width: 0; }
.investor-controls #investorFundSearch { width: 100%; padding-right: 42px; }
#investorFundSearch::-webkit-search-cancel-button { -webkit-appearance: none; }
.investor-picker-clear { position: absolute; right: 4px; top: 4px; width: 32px; height: 32px; border: 0; background: transparent; color: var(--muted); font-size: calc(var(--fs-xl) * var(--fs, 1)); cursor: pointer; }
.fund-search-results.investor-picker-results { position: absolute; top: calc(100% + 4px); left: 0; width: 100%; box-sizing: border-box; max-height: 320px; }
.investor-view select,
.investor-view input {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--rule-strong);
  border-radius: 4px;
  background: var(--panel);
  color: var(--text);
  font: inherit;
  font-family: var(--font-body);
  font-size: calc(var(--fs-base) * var(--fs, 1));
  line-height: 1.5;
}
.investor-controls select { width: 100%; text-overflow: ellipsis; }
.investor-controls input { width: 180px; }
.investor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 15px;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  color: var(--text);
  font: inherit;
  font-family: var(--font-body);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
}
.investor-button:hover { background: var(--hover); }
.investor-button:disabled { opacity: 0.5; cursor: default; }
.investor-view :focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.investor-status { min-height: 18px; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--muted); }
.investor-fund-heading { border-bottom: 1px solid var(--rule-strong); padding-bottom: 12px; }
.investor-fund-heading h2 { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-2xl) * var(--fs, 1)); font-weight: 700; margin: 0; letter-spacing: 0; }
.investor-fund-heading h2 span { display: block; font-family: var(--font-body); font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 500; margin-top: 8px; line-height: 1.5; }
.investor-metrics,
.investor-exposures,
.investor-quality-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; margin: 18px 0; }
.investor-metric dt { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); font-weight: 600; text-transform: uppercase; }
.investor-metric dd { margin: 8px 0; font-size: calc(var(--fs-2xl) * var(--fs, 1)); font-family: var(--font-num, var(--font-mono)); font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; line-height: 1.25; }
.investor-metric small { display: block; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); line-height: 1.6; }
.investor-exposures .investor-metric dd,
.investor-quality-grid .investor-metric dd { font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 500; line-height: 1.5; }
.investor-note { font-size: calc(var(--fs-sm) * var(--fs, 1)) !important; color: var(--muted); line-height: 1.65; }
.investor-unavailable { border-left: 3px solid var(--accent); padding: 8px 12px; color: var(--text-soft); font-size: calc(var(--fs-base) * var(--fs, 1)); line-height: 1.6; }
.investor-chart { margin: 18px 0; }
.investor-chart svg { display: block; width: 100%; aspect-ratio: 10 / 3; }
.investor-chart text { font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-micro) * var(--fs, 1)); fill: var(--muted); }
.investor-chart-axis { stroke: var(--rule); stroke-width: 1; }
.investor-chart-line { fill: none; stroke: var(--bad); stroke-width: 2; vector-effect: non-scaling-stroke; }
.investor-chart figcaption { color: var(--muted); font-size: calc(var(--fs-micro) * var(--fs, 1)); margin-top: 8px; }
.investor-view details { margin: 18px 0; font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.investor-view summary { cursor: pointer; color: var(--text-soft); }
.investor-quality-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.investor-table-scroll { max-width: 100%; overflow-x: auto; }
.investor-view table { width: 100%; border-collapse: collapse; font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.5; text-align: left; }
.investor-view caption { text-align: left; padding: 12px 0; color: var(--muted); }
.investor-view th { color: var(--muted); font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; }
.investor-view th,
.investor-view td { padding: 10px 12px; border-bottom: 1px solid var(--rule); vertical-align: middle; }
.investor-view td { font-variant-numeric: tabular-nums; }
@media (max-width: 680px) {
  .topnav > a[data-nav="providers"] { display: none; }
  .topnav > a[data-nav="scoring"] { display: none; }
  .topnav > a[data-nav="backtest"] { display: none; }
  .investor-view { padding: 0 16px 48px; }
  .scoring-view { padding: 0 16px 48px; }
  .leaderboard-view { padding: 0 16px 48px; }
  .leaderboard-groups-grid,
  .leaderboard-cards-grid { grid-template-columns: minmax(0, 1fr); }
  .leaderboard-section > .section-head h2 { font-size: calc(var(--fs-lg) * var(--fs, 1)); }
  .score-data-status { padding: 8px 16px; }
  .scoring-section h2 { font-size: calc(var(--fs-lg) * var(--fs, 1)); }
  .scoring-balance { grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 18px 0 24px; }
  .scoring-balance-four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .scoring-groups { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .investor-controls .investor-fund-label { flex-basis: 100%; }
  .investor-controls input { width: 150px; }
  .investor-quality-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .investor-view th,
  .investor-view td { white-space: nowrap; }
}
@media (max-width: 420px) {
  .investor-metrics { grid-template-columns: minmax(0, 1fr); }
  .investor-view > .page-head h1 { overflow-wrap: anywhere; }
  .leaderboard-card-hero { grid-template-columns: minmax(0, 1fr); }
}

.fund-search-results {
  position: fixed;
  z-index: 120;
  overflow-y: auto;
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--rule-strong);
  border-radius: 6px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  padding: 4px;
}
.fund-search-results[hidden] {
  display: none;
}
.fund-search-results [role="option"] {
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 100%;
  min-height: 52px;
  padding: 10px 12px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: inherit;
  font: inherit;
  font-family: var(--font-body);
  font-size: calc(var(--fs-base) * var(--fs, 1));
  text-align: left;
  cursor: pointer;
  white-space: normal;
  overflow-wrap: anywhere;
}
.fund-search-results [aria-selected="true"] {
  background: var(--hover);
}
.fund-search-results strong {
  font-family: var(--font-num, var(--font-mono));
  font-size: calc(var(--fs-base) * var(--fs, 1));
}
.fund-search-results span,
.fund-search-empty {
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  color: var(--muted);
}
.fund-search-empty {
  padding: 8px 12px;
  margin: 0;
}

.tax-bar {
  display: flex;
  height: 10px;
  border-radius: 6px;
  overflow: hidden;
  background: var(--panel-2);
  margin: 8px 0 12px;
  border: 1px solid var(--rule);
}
.tax-seg {
  height: 100%;
  transition: width 0.25s ease;
}
.tax-legend {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 12px;
  font-size: calc(var(--fs-xs) * var(--fs, 1));
}
.tax-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 5px 8px;
  background: var(--panel-2);
  border-radius: 6px;
  border: 1px solid var(--rule);
}
.tax-item__lbl {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--text-soft);
  font-weight: 500;
}
.tax-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.tax-item__val {
  font-family: var(--font-mono);
  font-weight: 700;
  color: var(--text);
}

/* Correlation Matrix Modal */
.corr-backdrop {
  position: fixed;
  inset: 0;
  z-index: 95;
  background: rgba(6, 15, 23, 0.62);
  backdrop-filter: blur(6px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.corr-backdrop[hidden] {
  display: none !important;
}
.corr-modal {
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--rule-strong);
  border-radius: 14px;
  width: min(1080px, 96vw);
  max-height: 88vh;
  display: flex;
  flex-direction: column;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}
.corr-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--rule);
  background: var(--panel-2);
}
.corr-head h3 {
  margin: 0;
  font-family: var(--font-head);
  font-size: calc(var(--fs-lg) * var(--fs, 1));
}
.corr-tabs {
  display: inline-flex;
  gap: 6px;
  background: var(--bg);
  padding: 4px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--rule);
}
.corr-tab {
  border: none;
  background: transparent;
  color: var(--text-soft);
  padding: 6px 12px;
  border-radius: var(--radius-sm);
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  font-weight: 600;
  cursor: pointer;
}
.corr-tab.is-active {
  background: var(--accent2);
  color: var(--on-accent, #fff);
}
.corr-body {
  padding: 16px 20px;
  overflow: auto;
  flex: 1;
}
.corr-table {
  border-collapse: collapse;
  font-family: var(--font-mono);
  font-size: calc(var(--fs-micro, 11px) * var(--fs, 1));
  width: 100%;
}
.corr-table th, .corr-table td {
  border: 1px solid var(--rule);
  padding: 5px 6px;
  text-align: center;
  min-width: 44px;
}
.corr-table th {
  background: var(--panel-2);
  color: var(--text);
  position: sticky;
  top: 0;
  z-index: 2;
}
.corr-table th.row-hdr {
  position: sticky;
  left: 0;
  z-index: 1;
  text-align: left;
}

#heroAnnounce,.hero__announce{display:none!important}

#heroAnnounce,.hero__announce{display:none!important}


/* === PVTX-INCOME DATA & SYNC ADMIN MODAL === */
.admin-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--rule);
  background: var(--panel-2);
  color: var(--text);
  font-family: var(--font-body);
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  font-weight: 600;
  cursor: pointer;
  transition: border-color .15s ease, background .15s ease, transform .1s ease;
  white-space: nowrap;
}
.admin-pill-btn:hover {
  border-color: var(--accent);
  background: var(--hover);
}
.admin-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #239B56;
  flex-shrink: 0;
}
.admin-dot.is-running {
  background: var(--accent);
  box-shadow: 0 0 0 3px color-mix(in srgb,var(--accent) 28%,transparent);
  animation: adminPulse 1.2s infinite ease-in-out;
}
@keyframes adminPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.25); opacity: 0.7; }
}
.admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.admin-kpi {
  padding: 12px 14px;
  border-radius: var(--radius-sm);
  background: var(--panel-2);
  border: 1px solid var(--rule);
}
.admin-kpi__lbl {
  font-size: calc(var(--fs-micro, 11px) * var(--fs, 1));
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
  color: var(--muted);
  margin-bottom: 4px;
}
.admin-kpi__val {
  font-family: var(--font-mono);
  font-size: calc(var(--fs-lg) * var(--fs, 1));
  font-weight: 700;
  color: var(--text);
}
.admin-kpi__sub {
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  color: var(--text-soft);
  margin-top: 2px;
}
.admin-progress-box {
  padding: 14px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--rule);
  background: var(--panel-2);
  margin-bottom: 16px;
}
.admin-progress-bar {
  height: 8px;
  border-radius: 999px;
  background: var(--rule);
  overflow: hidden;
  margin: 8px 0 6px;
}
.admin-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--accent2), var(--accent));
  transition: width .3s ease;
}
.admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.admin-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--rule-strong);
  background: var(--panel-2);
  color: var(--text);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 600;
  cursor: pointer;
  transition: all .15s ease;
}
.admin-btn:hover:not(:disabled) {
  border-color: var(--accent2);
  background: var(--accent2);
  color: #fff;
}
.admin-btn--primary {
  background: var(--accent2);
  color: #fff;
  border-color: var(--accent2);
}
.admin-btn--primary:hover:not(:disabled) {
  opacity: 0.92;
}
.admin-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.admin-meta-table {
  width: 100%;
  border-collapse: collapse;
  font-size: calc(var(--fs-sm) * var(--fs, 1));
}
.admin-meta-table th, .admin-meta-table td {
  padding: 8px 10px;
  border-bottom: 1px solid var(--rule);
  text-align: left;
}
.admin-meta-table th {
  color: var(--muted);
  font-weight: 600;
}
.admin-meta-table td.mono {
  font-family: var(--font-mono);
  font-weight: 600;
}

/* Drawer: score + 12M total return reuse native .d-grid/.d-cell/.dl/.dv */
.d-score-section .dv a { color: inherit; text-decoration: none; }
.d-score-section .dv a:hover { text-decoration: underline; }
.d-score-na { color: var(--muted); font-weight: 500; }
.d-score-tr.pos { color: var(--good); }
.d-score-tr.neg { color: var(--bad); }
.d-score-tr.flat { color: var(--muted); }

/* Compare: funds excluded from the plot for insufficient history */
.cmp-excluded { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--rule); }
.cmp-excluded p { margin: 0 0 6px; }
.cmp-excluded-list { margin: 0; padding-left: 18px; list-style: disc; }
.cmp-excluded-list li { margin-top: 3px; }
.cmp-excluded-list strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }

/* Screener table: Score column */
.t-score { font-variant-numeric: tabular-nums; font-weight: 600; }
.t-score--na { color: var(--muted); font-weight: 500; }
.t-score--high { display: inline-block; min-width: 2.2em; padding: 2px 8px; border-radius: 999px; color: var(--good); background: var(--good-tint); font-weight: 700; }

/* ===== Fund page (#/fund/<MARKET>/<TICKER>) ===== */
.fund-breadcrumb { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--mast-label, var(--muted)); margin: 0 0 10px; }
.fund-breadcrumb a { color: var(--mast-soft, var(--text-soft)); text-decoration: none; }
.fund-breadcrumb a:hover { color: var(--mast-hl, var(--accent)); text-decoration: underline; }
.fund-breadcrumb span { margin: 0 2px; opacity: 0.7; }
.fund-section { margin: 28px 0 0; }
.fund-section .section-head { margin-bottom: 14px; }
.fund-section .section-head h2 { font-family: var(--font-head); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: var(--head-w, 700); margin: 0; letter-spacing: 0; }

/* Score hero */
.fund-score-hero { display: grid; grid-template-columns: minmax(0, 260px) minmax(0, 1fr); gap: 28px; align-items: start; padding: 20px 0 26px; border-bottom: 1px solid var(--rule); }
.fund-score-headline { display: flex; flex-direction: column; gap: 8px; }
.fund-score-big { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-2xl) * var(--fs, 1) * 1.6); font-weight: 700; line-height: 1; color: var(--text); }
.fund-score-big[data-tier="high"] { color: var(--good); }
.fund-score-big[data-tier="mid"] { color: var(--accent); }
.fund-score-meta { display: flex; flex-direction: column; gap: 2px; }
.fund-score-lbl { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; color: var(--muted); letter-spacing: 0; }
.fund-score-rank { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); font-weight: 600; }
.fund-score-new { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; color: var(--accent); letter-spacing: 0; }
.fund-score-how { display: inline-flex; align-items: center; gap: 5px; margin-top: 4px; font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; color: var(--accent); text-decoration: none; }
.fund-score-how:hover { text-decoration: underline; }
.fund-score-bars { display: flex; flex-direction: column; gap: 10px; }
.fund-score-bar-row { display: flex; flex-direction: column; gap: 3px; }
.fund-score-bar-labels { display: flex; justify-content: space-between; font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.fund-score-bar-labels span { color: var(--text-soft); font-weight: 600; }
.fund-score-bar-labels strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }
.fund-score-bar-track { height: 8px; border-radius: 999px; background: var(--panel-2); overflow: hidden; }
.fund-score-bar-fill { display: block; height: 100%; border-radius: 999px; }
.fund-score-bar-fill--payout { background: var(--accent2); }
.fund-score-bar-fill--capital { background: var(--accent-soft); }
.fund-score-bar-fill--price { background: var(--accent); }
.fund-score-bar-fill--liq { background: var(--muted); }

/* Key stats grid */
.fund-stats-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fund-stat .fund-stat-pos { color: var(--good); }
.fund-stat .fund-stat-neg { color: var(--bad); }
.fund-stat-note { margin-top: 4px; font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); }

/* Calculator */
.fund-calc-controls { display: flex; flex-wrap: wrap; gap: 20px; align-items: end; margin-bottom: 12px; }
.fund-calc-controls label { display: flex; flex-direction: column; gap: 6px; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); font-weight: 600; min-width: 200px; }
.fund-calc-controls input[type="number"] { padding: 8px 10px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); color: var(--text); font-family: var(--font-num, var(--font-mono)); font-size: calc(var(--fs-base) * var(--fs, 1)); }
.fund-calc-controls input[type="range"] { width: 100%; accent-color: var(--accent); }
.fund-calc-out { font-size: calc(var(--fs-md) * var(--fs, 1)); color: var(--text); }
.fund-calc-out strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }

/* Distribution + holdings tables */
.fund-holdings { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px 24px; }
.fund-holdings li { display: flex; align-items: baseline; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--rule); }
.fund-holding-rank { font-family: var(--font-num, var(--font-mono)); color: var(--muted); font-variant-numeric: tabular-nums; min-width: 1.6em; }
.fund-holding-name { color: var(--text); }

/* Similar funds */
.fund-similar-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.fund-similar-card { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); text-decoration: none; color: var(--text); }
.fund-similar-card:hover { border-color: var(--accent); background: var(--hover); }
.fund-similar-score { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.fund-similar-score[data-tier="high"] { color: var(--good); }
.fund-similar-score[data-tier="mid"] { color: var(--accent); }
.fund-similar-main { display: flex; flex-direction: column; }
.fund-similar-sub { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }

/* Footer actions */
.fund-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.fund-actions .leaderboard-card-btn { flex: 0 0 auto; min-height: 42px; padding: 8px 16px; font-size: calc(var(--fs-sm) * var(--fs, 1)); }

@media (max-width: 680px) {
  .fund-score-hero { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .fund-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fund-holdings { grid-template-columns: minmax(0, 1fr); }
}

/* Fund page: score groups with substantiating measures */
.fund-score-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 28px; }
.fund-score-group { display: flex; flex-direction: column; gap: 8px; }
.fund-measures { display: flex; flex-direction: column; gap: 4px; padding-left: 2px; }
.fund-measure { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.fund-measure-label { color: var(--text-soft); font-weight: 600; min-width: 112px; }
.fund-measure-value { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; color: var(--text); }
.fund-measure-note { color: var(--muted); flex: 1 1 100%; }

/* Fund page: growth/compare actions */
.fund-growth-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.fund-growth-actions .leaderboard-card-btn { flex: 0 0 auto; min-height: 42px; padding: 8px 16px; font-size: calc(var(--fs-sm) * var(--fs, 1)); }

/* Fund page: distribution chart (reuses drawer .dist-chart) */
.fund-dist-chart { margin: 8px 0 16px; }

/* Fund page: 52-week range (mirrors drawer range) */
.fund-range { margin-top: 16px; }
.fund-range-ends { display: flex; justify-content: space-between; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--text-soft); margin-bottom: 6px; }
.fund-range-ends strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; color: var(--text); }
.fund-range-bar { position: relative; height: 6px; border-radius: 999px; background: var(--panel-2); }
.fund-range-dot { position: absolute; top: 50%; width: 12px; height: 12px; border-radius: 50%; background: var(--accent); transform: translate(-50%, -50%); }

@media (max-width: 680px) {
  .fund-score-groups { grid-template-columns: minmax(0, 1fr); }
}

/* Fund page: inline Growth of $100 chart */
.fund-growth-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 12px; }
.fund-growth-add { flex: 0 0 auto; }
.fund-growth-search { position: relative; flex: 1 1 220px; min-width: 200px; max-width: 320px; }
.fund-growth-search input { width: 100%; padding: 8px 10px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); color: var(--text); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.fund-growth-results { position: absolute; top: calc(100% + 4px); left: 0; width: 100%; box-sizing: border-box; z-index: 120; max-height: 320px; overflow-y: auto; background: var(--panel); color: var(--text); border: 1px solid var(--rule-strong); border-radius: 6px; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18); padding: 4px; }
.fund-growth-results[hidden] { display: none; }
.fund-growth-opt { display: flex; gap: 8px; align-items: baseline; width: 100%; text-align: left; padding: 8px 10px; border: 0; border-radius: 3px; background: transparent; cursor: pointer; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text); }
.fund-growth-opt:hover { background: var(--hover); }
.fund-growth-opt strong { font-family: var(--font-num, var(--font-mono)); }
.fund-growth-opt span { color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fund-growth-legend { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; }
.fund-growth-chip { display: inline-flex; align-items: center; gap: 7px; padding: 4px 8px; border: 1px solid var(--rule-strong); border-radius: 999px; font-size: calc(var(--fs-xs) * var(--fs, 1)); background: var(--panel); }
.fund-growth-chip strong { font-family: var(--font-num, var(--font-mono)); }
.fund-growth-swatch { width: 10px; height: 10px; border-radius: 2px; flex: 0 0 auto; }
.fund-growth-final { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; color: var(--text-soft); }
.fund-growth-final.pos { color: var(--good); }
.fund-growth-final.neg { color: var(--bad); }
.fund-growth-endlabel { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; font-size: 11px; font-weight: 700; }
.fund-growth-remove { border: 0; background: none; color: var(--muted); cursor: pointer; font-size: calc(var(--fs-md) * var(--fs, 1)); line-height: 1; padding: 0 0 0 2px; }
.fund-growth-remove:hover { color: var(--bad); }
.fund-growth-chart { width: 100%; aspect-ratio: 760 / 320; min-height: 240px; border: 1px solid var(--rule); border-radius: var(--radius-sm); background: var(--panel); }
.fund-growth-svg { width: 100%; height: 100%; display: block; }
.fund-growth-grid { stroke: var(--rule); stroke-width: 1; }
.fund-growth-baseline { stroke: var(--rule-strong); stroke-width: 1; stroke-dasharray: 3 3; }
.fund-growth-axis { fill: var(--muted); font-family: var(--font-num, var(--font-mono)); font-size: 11px; }

/* Fund page: header disclaimer under provider/type line */
.fund-disclaimer { margin-top: 6px; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }

/* Header search: market-data lookup + add-to-directory row */
.fund-search-results .fund-search-add { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-top: 1px solid var(--rule); }
.fund-search-add-info { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1 1 auto; }
.fund-search-add-info strong { font-family: var(--font-num, var(--font-mono)); color: var(--accent); }
.fund-search-add-sub { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); overflow: hidden; text-overflow: ellipsis; }
.fund-search-add-btn { flex: 0 0 auto; width: 34px; height: 34px; border-radius: 8px; border: 1px solid var(--rule-strong); background: var(--panel-2); color: var(--good); font-size: calc(var(--fs-xl) * var(--fs, 1)); font-weight: 700; line-height: 1; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }
.fund-search-add-btn:hover { background: var(--good); color: var(--on-accent, #fff); border-color: var(--good); }

/* === Find (ETF questionnaire) === */
.find-view { padding-bottom: 48px; }
.find-layout { display: grid; grid-template-columns: minmax(0, 340px) minmax(0, 1fr); gap: 34px; align-items: start; }
@media (max-width: 860px) { .find-layout { grid-template-columns: 1fr; gap: 24px; } }

.find-form { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 84px; }
@media (max-width: 860px) { .find-form { position: static; } }

.find-q { display: flex; flex-direction: column; gap: 8px; }
.find-q__label { font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.find-q__help { margin: 0; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); line-height: 1.45; }

.find-seg { display: flex; flex-wrap: wrap; gap: 8px; }
.find-seg__btn {
  display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px;
  flex: 1 1 auto; min-width: 84px;
  padding: 10px 12px; border: 1.5px solid var(--rule-strong); border-radius: 12px;
  background: var(--panel-2); color: var(--text-soft); cursor: pointer;
  font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600;
  line-height: 1.2; text-align: left; transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.find-seg__btn svg { color: var(--muted); margin-bottom: 2px; }
.find-seg__txt { display: block; }
.find-seg__sub { display: block; font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; color: var(--muted); }
.find-seg__btn:hover { background: var(--hover); color: var(--text); }
.find-seg__btn[aria-pressed="true"] { background: var(--accent2); border-color: var(--accent2); color: var(--on-accent, #fff); }
.find-seg__btn[aria-pressed="true"] svg,
.find-seg__btn[aria-pressed="true"] .find-seg__sub { color: var(--on-accent, #fff); opacity: .9; }
.find-seg__btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.find-toggle { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; padding: 8px 0; }
.find-toggle input { margin-top: 2px; width: 16px; height: 16px; accent-color: var(--accent2); flex: none; }
.find-toggle__txt { display: flex; flex-direction: column; gap: 2px; }
.find-toggle__txt strong { font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; color: var(--text); }
.find-toggle__txt small { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); line-height: 1.4; }

.find-builder { display: flex; flex-direction: column; gap: 12px; margin-top: 4px; padding: 12px; border: 1px solid var(--rule); border-radius: 12px; background: var(--panel); }
.find-field { display: flex; flex-direction: column; gap: 6px; }
.find-field label { font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; color: var(--text-soft); }
.find-field input[type="number"] {
  padding: 8px 10px; border: 1.5px solid var(--rule-strong); border-radius: 8px;
  background: var(--panel-2); color: var(--text); font-family: var(--font-num);
  font-size: calc(var(--fs-base) * var(--fs, 1)); font-variant-numeric: tabular-nums;
}
.find-field__help { font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); line-height: 1.4; }
.find-range { display: flex; align-items: center; gap: 12px; }
.find-range input[type="range"] { flex: 1; accent-color: var(--accent2); }
.find-range__val { min-width: 20px; font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 700; color: var(--text); }

.find-actions { display: flex; align-items: center; gap: 12px; }
.find-submit {
  display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 18px;
  border: 1px solid var(--accent2); border-radius: 10px; background: var(--accent2); color: var(--on-accent, #fff);
  font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 700; cursor: pointer;
  transition: filter .15s ease;
}
.find-submit:hover { filter: brightness(1.08); }
.find-submit:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.find-reset { align-self: center; }

/* Results */
.find-results { min-height: 200px; display: flex; flex-direction: column; gap: 16px; }
.find-eyebrow { display: block; font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.find-rank-note, .find-warn { margin: 0; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); line-height: 1.5; }
.find-warn { color: var(--text-soft); }
.find-disclaimer { margin-top: 8px; }

.find-prompt, .find-empty { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; padding: 48px 18px; border: 1px dashed var(--rule-strong); border-radius: 14px; color: var(--text-soft); }
.find-prompt svg { color: var(--muted); }
.find-prompt p, .find-empty p { margin: 0; font-size: calc(var(--fs-md) * var(--fs, 1)); }
.find-prompt__sub, .find-empty__hint { font-size: calc(var(--fs-sm) * var(--fs, 1)) !important; color: var(--muted); }

.find-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 14px; }
@media (max-width: 520px) { .find-grid { grid-template-columns: 1fr; } }

.find-card { display: flex; flex-direction: column; gap: 10px; padding: 16px; border: 1px solid var(--rule); border-radius: 14px; background: var(--panel); }
.find-card__head { display: grid; grid-template-columns: auto 1fr auto; gap: 10px; align-items: start; }
.find-card__rank { font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 700; color: var(--muted); min-width: 16px; }
.find-card__id { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.find-card__ticker { font-family: var(--font-mono); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: 700; letter-spacing: -.02em; color: var(--text); }
.find-card__name { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); line-height: 1.35; }
.find-card__meta { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }
.find-card__score { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 54px; padding: 6px 8px; border-radius: 10px; background: var(--accent-tint); border: 1px solid var(--accent-soft); }
.find-card__score-n { font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-xl) * var(--fs, 1)); font-weight: 700; color: var(--accent); line-height: 1; }
.find-card__score-l { font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }

.find-card__stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(72px, 1fr)); gap: 8px 12px; padding: 10px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.find-card__stat { display: flex; flex-direction: column; gap: 2px; }
.find-card__stat-v { font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-md) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.find-card__stat-v.pos { color: var(--good); }
.find-card__stat-v.neg { color: var(--bad); }
.find-card__stat-v.na { color: var(--muted); font-weight: 600; }
.find-card__stat-l { font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }

.find-card__reason { margin: 0; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--text-soft); line-height: 1.5; }
.find-card__foot { display: flex; }
.find-card__link { display: inline-flex; align-items: center; gap: 5px; padding: 0; border: 0; background: none; color: var(--accent); cursor: pointer; font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; }
.find-card__link:hover { text-decoration: underline; }
.find-card__link:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }

.find-summary { display: flex; flex-wrap: wrap; gap: 14px 28px; padding: 16px; border: 1px solid var(--rule); border-radius: 14px; background: var(--panel-2); }
.find-summary__stat { display: flex; flex-direction: column; gap: 2px; }
.find-summary__v { font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-xl) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.find-summary__l { font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }

.find-compare-all {
  align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 16px;
  border: 1px solid var(--rule-strong); border-radius: 8px; background: var(--panel-2); color: var(--text);
  font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; cursor: pointer;
}
.find-compare-all:hover { background: var(--hover); }
.find-compare-all:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

/* === Find — correlation matrix === */
.find-corr { display: flex; flex-direction: column; gap: 12px; padding-top: 4px; }
.find-corr__head { margin-bottom: 0; }
.find-corr__read { margin: 0; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); line-height: 1.55; }
.find-corr__read strong { color: var(--text); }

.find-corr__wrap { border: 1px solid var(--rule); border-radius: 14px; background: var(--panel); padding: 4px; overflow-x: auto; }
.find-corr__wrap:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.find-corr__table { border-collapse: separate; border-spacing: 4px; width: 100%; }
.find-corr__table th,
.find-corr__table td { padding: 0; }

.find-corr__corner { width: 56px; }
.find-corr__colh,
.find-corr__rowh {
  font-family: var(--font-mono); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700;
  letter-spacing: -.02em; color: var(--text-soft); white-space: nowrap;
}
.find-corr__colh { padding: 4px 2px 6px !important; text-align: center; vertical-align: bottom; }
.find-corr__rowh { padding: 0 8px 0 4px !important; text-align: right; }
.find-corr__th-txt { display: inline-block; }

.find-corr__cell {
  position: relative;
  width: 52px; height: 42px; min-width: 52px; border-radius: 8px; text-align: center; vertical-align: middle;
  font-family: var(--font-num); font-variant-numeric: tabular-nums;
  font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; color: var(--text);
  transition: transform .1s ease;
}
.find-corr__cell .find-corr__val { display: inline-block; }

/* top-N least-correlated (strongest diversifiers): ring + rank badge */
.find-corr__cell.is-top { box-shadow: inset 0 0 0 2px var(--good); font-weight: 700; }
.find-corr__cell.is-top:hover { transform: scale(1.06); z-index: 1; }
.find-corr__rank {
  position: absolute; top: 2px; left: 3px; min-width: 13px; height: 13px; padding: 0 2px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 7px; background: var(--good); color: var(--on-accent, #fff);
  font-family: var(--font-num); font-variant-numeric: tabular-nums;
  font-size: 9px; font-weight: 700; line-height: 1;
}
.find-corr__least { display: flex; align-items: flex-start; gap: 8px; }
.find-corr__rank-key {
  flex: none; min-width: 18px; height: 18px; padding: 0 3px; margin-top: 1px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 9px; background: var(--good); color: var(--on-accent, #fff);
  font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: 11px; font-weight: 700;
}
.find-corr__cell:hover { transform: scale(1.06); }
.find-corr__cell.is-self { background: var(--panel-2); color: var(--muted); font-weight: 400; }

/* correlation bands — tinted from semantic up/brass/down so both themes read correctly.
   Low correlation (diversifying) is the "good" state here, so it leans positive/up. */
.find-corr__cell.corr-neg { background: color-mix(in srgb, var(--good) 26%, var(--panel)); }
.find-corr__cell.corr-lo  { background: color-mix(in srgb, var(--good) 13%, var(--panel)); }
.find-corr__cell.corr-mid { background: color-mix(in srgb, var(--accent-soft) 34%, var(--panel)); }
.find-corr__cell.corr-hi  { background: color-mix(in srgb, var(--bad) 26%, var(--panel)); color: var(--text); }
.find-corr__cell.corr-na  { background: var(--panel-2); color: var(--muted); font-weight: 400; }

.find-corr__legend { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.find-corr__legend-item { display: inline-flex; align-items: center; gap: 6px; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--text-soft); }
.find-corr__swatch { width: 16px; height: 16px; border-radius: 5px; border: 1px solid var(--rule); flex: none; }
.find-corr__swatch.corr-neg { background: color-mix(in srgb, var(--good) 26%, var(--panel)); }
.find-corr__swatch.corr-lo  { background: color-mix(in srgb, var(--good) 13%, var(--panel)); }
.find-corr__swatch.corr-mid { background: color-mix(in srgb, var(--accent-soft) 34%, var(--panel)); }
.find-corr__swatch.corr-hi  { background: color-mix(in srgb, var(--bad) 26%, var(--panel)); }

.find-corr__note { margin: 0; font-size: calc(var(--fs-micro) * var(--fs, 1)); color: var(--muted); line-height: 1.5; }

/* === Drawer performance chart (price vs total return) === */
.d-perf-section .perf-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.perf-range-seg { display: inline-flex; border: 1px solid var(--rule-strong); border-radius: 8px; overflow: hidden; background: var(--panel-2); }
.perf-range-seg button {
  border: 0; background: none; cursor: pointer; padding: 5px 12px;
  font-family: var(--font-num); font-variant-numeric: tabular-nums;
  font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; color: var(--text-soft);
  transition: background-color .12s ease, color .12s ease;
}
.perf-range-seg button + button { border-left: 1px solid var(--rule-strong); }
.perf-range-seg button:hover { background: var(--hover); color: var(--text); }
.perf-range-seg button[aria-pressed="true"] { background: var(--accent2); color: var(--on-accent, #fff); }
.perf-range-seg button:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }

.perf-box { padding: 12px 10px 10px; }
.perf-host { width: 100%; }
.perf-svg { display: block; width: 100%; overflow: visible; }

.perf-grid { stroke: var(--rule); stroke-width: 1; }
.perf-grid[data-zero="1"] { stroke: var(--rule-strong); }
.perf-axis-y { fill: var(--muted); font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: 10px; text-anchor: end; dominant-baseline: middle; }
.perf-axis-x { fill: var(--muted); font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: 10px; }

.perf-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.perf-line--price { stroke: var(--muted); stroke-dasharray: 5 4; }
.perf-line--total { stroke: var(--accent); }
.perf-dot--price { fill: var(--muted); }
.perf-dot--total { fill: var(--accent); }

.perf-legend { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 10px; }
.perf-leg { display: inline-flex; align-items: center; gap: 6px; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--text-soft); }
.perf-leg strong { font-family: var(--font-num); font-variant-numeric: tabular-nums; color: var(--text); }
.perf-leg em { color: var(--muted); font-style: normal; }
.perf-swatch { width: 16px; height: 3px; border-radius: 2px; flex: none; }
.perf-leg--price .perf-swatch { background: var(--muted); }
.perf-leg--total .perf-swatch { background: var(--accent); }

/* Denser correlation cells when the matrix has many funds (shortlist up to 20) */
.find-corr__table.is-dense { border-spacing: 3px; }
.find-corr__table.is-dense .find-corr__cell { width: 40px; min-width: 40px; height: 34px; font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.find-corr__table.is-dense .find-corr__colh,
.find-corr__table.is-dense .find-corr__rowh { font-size: calc(var(--fs-micro) * var(--fs, 1)); }
.find-corr__table.is-dense .find-corr__corner { width: 48px; }

/* === Find — computing indicator, stale banner, income table === */
.find-computing { display: flex; align-items: center; gap: 14px; padding: 28px 18px; border: 1px solid var(--rule); border-radius: 14px; background: var(--panel); }
.find-computing__txt { display: flex; flex-direction: column; gap: 3px; }
.find-computing__txt strong { font-size: calc(var(--fs-md) * var(--fs, 1)); color: var(--text); }
.find-computing__txt span { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--muted); line-height: 1.45; }
.find-spinner { width: 26px; height: 26px; flex: none; border-radius: 50%; border: 3px solid var(--rule-strong); border-top-color: var(--accent); animation: find-spin 0.8s linear infinite; }
@keyframes find-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .find-spinner { animation-duration: 2.4s; } }

.find-submit.is-stale { background: var(--accent); border-color: var(--accent); }
.find-stale { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; padding: 10px 14px; border: 1px solid var(--accent-soft); border-radius: 10px; background: var(--accent-tint); font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text); }
.find-stale__btn { border: 0; background: none; padding: 0; color: var(--accent); font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 700; cursor: pointer; text-decoration: underline; }
.find-stale__btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }

.find-income { display: flex; flex-direction: column; gap: 10px; }
.find-income__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.find-income__reset {
  border: 1px solid var(--rule-strong); border-radius: 8px; background: var(--panel-2); color: var(--text-soft);
  padding: 5px 12px; font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; cursor: pointer;
}
.find-income__reset:hover { background: var(--hover); color: var(--text); }
.find-income__reset:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.find-income__pctcell { white-space: nowrap; }
.find-income__pct {
  width: 84px; min-width: 84px; text-align: right; padding: 6px 10px; border: 1.5px solid var(--rule-strong); border-radius: 8px;
  background: var(--panel-2); color: var(--text); font-family: var(--font-num); font-variant-numeric: tabular-nums;
  font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600;
}
.find-income__pct:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.find-income__pctsign { margin-left: 3px; color: var(--muted); font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.find-income__total.is-off .find-income__totpct { color: var(--bad); }
.find-income__sumnote { margin: 0; font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.find-income__sumnote.is-ok { color: var(--muted); }
.find-income__sumnote.is-off { color: var(--bad); font-weight: 600; }
.find-income__wrap { border: 1px solid var(--rule); border-radius: 14px; background: var(--panel); overflow-x: auto; }
.find-income__table { width: 100%; border-collapse: collapse; }
.find-income__table th, .find-income__table td { padding: 9px 12px; text-align: right; font-size: calc(var(--fs-sm) * var(--fs, 1)); white-space: nowrap; }
.find-income__table th.l, .find-income__table td.l { text-align: left; }
.find-income__table thead th { color: var(--muted); font-weight: 600; font-size: calc(var(--fs-xs) * var(--fs, 1)); letter-spacing: .04em; text-transform: uppercase; border-bottom: 1px solid var(--rule); }
.find-income__table td.num { font-family: var(--font-num); font-variant-numeric: tabular-nums; color: var(--text); }
.find-income__table tbody tr + tr td { border-top: 1px solid var(--rule); }
.find-income__fund { display: flex; flex-direction: column; gap: 1px; }
.find-income__tk { font-family: var(--font-mono); font-weight: 700; letter-spacing: -.02em; color: var(--text); }
.find-income__nm { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); max-width: 260px; overflow: hidden; text-overflow: ellipsis; }
.find-income__table tfoot .find-income__total td { border-top: 2px solid var(--rule-strong); font-weight: 700; color: var(--text); background: var(--panel-2); }
.find-income__table tfoot .find-income__total td.num { color: var(--text); }

/* === Category Champions Strip (Explore / Screener) === */
.category-strip { margin: 18px 0 20px; }
.category-strip__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.category-strip__title { font-family: var(--font-body); font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.category-strip__sub { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }
.category-strip__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.category-strip__chip {
  display: inline-flex; align-items: center; gap: 7px;
  background: var(--panel-2); border: 1.5px solid var(--rule-strong); color: var(--text);
  border-radius: var(--radius-sm); padding: 7px 13px;
  font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600;
  cursor: pointer; transition: all 0.16s ease;
}
.category-strip__chip:hover { background: var(--hover); border-color: var(--accent); }
.category-strip__chip[aria-pressed="true"] {
  background: var(--accent2); color: var(--on-accent, #fff); border-color: var(--accent2);
  box-shadow: 0 1px 3px rgba(0,0,0,0.18);
}
.category-strip__count {
  font-size: calc(var(--fs-micro) * var(--fs, 1));
  font-family: var(--font-num, var(--font-mono));
  opacity: 0.85;
}

@media (max-width: 680px) {
  .category-strip { margin: 12px 0 16px; }
  .category-strip__chips {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 2px 2px 10px;
    margin: 0 -16px;
    padding-left: 16px;
    padding-right: 16px;
    gap: 8px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .category-strip__chips::-webkit-scrollbar { display: none; }
  .category-strip__chip {
    flex-shrink: 0;
    scroll-snap-align: start;
    white-space: nowrap;
    min-height: 38px;
  }
}

/* === Backtester (scenario backtest; owned by backtest.js) === */
.backtest-view {
  color: var(--text);
  padding-bottom: 48px;
}
.backtest-view[hidden] { display: none; }

.backtest-section,
.backtest-results,
.backtest-details,
.backtest-income {
  display: flex;
  flex-direction: column;
}
.backtest-results[hidden] { display: none; }
.backtest-results[aria-busy="true"] { opacity: .6; transition: opacity .2s ease; }

.backtest-view .section-head h3,
.backtest-assumptions h3,
.backtest-alloc-head h3 {
  margin: 0;
  font-family: var(--font-head);
  font-size: calc(var(--fs-md) * var(--fs, 1));
  font-weight: var(--head-w, 700);
  letter-spacing: 0;
  color: var(--text);
}
.backtest-sub-head { margin: 24px 0 12px; }
.backtest-view .sh-sub { max-width: 72ch; }
.backtest-block {
  border-top: 1px solid var(--rule);
  margin-top: 24px;
}
.backtest-block > .backtest-sub-head:first-child { margin-top: 16px; }
.backtest-results-head { margin-top: 34px; }

.backtest-head-actions,
.backtest-alloc-actions,
.backtest-csv-bar,
.backtest-confirm__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.backtest-btn-sm { padding-left: 12px; padding-right: 12px; }
.btn-ext:disabled { opacity: .5; cursor: not-allowed; }

.backtest-label,
.backtest-settings-grid label,
.backtest-presets-eyebrow {
  font-family: var(--font-label, var(--font-body));
  font-size: calc(var(--fs-micro) * var(--fs, 1));
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0;
  color: var(--muted);
}
.backtest-hint,
.backtest-alloc-sub,
.backtest-presets-hint,
.backtest-name-txt {
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  color: var(--muted);
  line-height: 1.45;
}

/* Messages and feedback */
.backtest-messages {
  border: 1px solid var(--bad);
  background: var(--bad-tint);
  border-radius: var(--radius-sm);
  padding: 12px 16px;
  margin-top: 18px;
  font-size: calc(var(--fs-sm) * var(--fs, 1));
}
.backtest-messages[hidden] { display: none; }
.backtest-messages__title { margin: 0 0 6px; font-weight: 600; }
.backtest-messages ul { margin: 0 0 10px; padding-left: 18px; }
.backtest-link-feedback {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  color: var(--muted);
}
.backtest-link-feedback:empty { display: none; }
.backtest-link-input { flex: 1 1 320px; min-width: 0; min-height: 42px; }
.backtest-ok { color: var(--good); }

/* Example scenarios */
.backtest-presets-wrap {
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 12px 0;
  margin-bottom: 18px;
}
.backtest-presets-header { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin-bottom: 8px; }
.backtest-presets-row { display: flex; gap: 8px; flex-wrap: wrap; }
.backtest-preset-chip {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-height: 42px;
  max-width: 300px;
  padding: 8px 12px;
  text-align: left;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  color: var(--text);
  font-family: var(--font-body);
  cursor: pointer;
}
.backtest-preset-chip:hover { border-color: var(--accent); background: var(--accent-tint); }
.backtest-preset-chip:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.backtest-preset-title {
  font-family: var(--font-ticker, var(--font-mono));
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 700;
}
.backtest-preset-summary { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }

/* Settings */
.backtest-settings-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 24px;
}
.backtest-settings-grid .field { display: flex; flex-direction: column; align-items: stretch; gap: 6px; min-width: 0; }
.backtest-settings-grid .field[hidden] { display: none; }
.backtest-view .sel,
.backtest-view select.sel {
  min-height: 42px;
  width: 100%;
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  background: var(--panel-2);
  color: var(--text);
  font-family: var(--font-body);
  font-size: calc(var(--fs-base) * var(--fs, 1));
}
.backtest-view .sel:focus-visible,
.backtest-view .sel:focus { outline: 2px solid var(--accent); outline-offset: 1px; border-color: var(--accent); }
.backtest-num { font-family: var(--font-num); font-variant-numeric: tabular-nums; }
.backtest-month-pair,
.backtest-inline-pair { display: flex; align-items: center; gap: 8px; }
.backtest-month-pair .sel,
.backtest-inline-pair .sel { flex: 1 1 0; }
.backtest-settings-grid .seg .btn-mkt { white-space: normal; }
.backtest-confirm {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid var(--accent);
  background: var(--accent-tint);
  border-radius: var(--radius-sm);
}
.backtest-confirm[hidden] { display: none; }
.backtest-confirm p { margin: 0; color: var(--text); }

/* Scenarios */
.backtest-scenario-bar { display: flex; align-items: flex-end; gap: 12px; flex-wrap: wrap; border-bottom: 1px solid var(--rule); margin-bottom: 16px; }
.backtest-scenario-tabs { display: flex; gap: 4px; flex-wrap: wrap; }
.backtest-scenario-bar #btScenarioAddSlot { margin-left: auto; padding-bottom: 6px; }
.backtest-tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 14px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--text-soft);
  font-family: var(--font-body);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 600;
  cursor: pointer;
}
.backtest-tab:hover { color: var(--text); background: var(--hover); }
.backtest-tab[aria-selected="true"] { color: var(--text); border-bottom-color: var(--accent); }
.backtest-tab:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
.backtest-tab__total { font-family: var(--font-num); font-variant-numeric: tabular-nums; color: var(--muted); font-weight: 500; }
.backtest-tab__total.is-invalid,
.backtest-table td.is-invalid { color: var(--bad); }

.backtest-alloc-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.backtest-alloc-head-txt { display: flex; flex-direction: column; gap: 4px; max-width: 60ch; }
.backtest-copy-from select.sel { width: auto; }

.backtest-alloc-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 8px 12px;
  margin-bottom: 12px;
  border-radius: var(--radius-sm);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
}
.backtest-alloc-banner.is-balanced { background: var(--good-tint); border: 1px solid var(--good); color: var(--good); }
.backtest-alloc-banner.is-unbalanced { background: var(--bad-tint); border: 1px solid var(--bad); color: var(--bad); }
.backtest-banner-msg { flex: 1 1 240px; }
.backtest-banner-btn {
  min-height: 36px;
  padding: 6px 12px;
  border: 1px solid currentColor;
  border-radius: var(--radius-sm);
  background: var(--panel);
  color: inherit;
  font-family: var(--font-body);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 600;
  cursor: pointer;
}

/* Tables */
.backtest-table-wrap { box-shadow: none; }
.backtest-table-wrap:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.backtest-table-wrap.is-tall { max-height: 440px; overflow: auto; }
table.dt.backtest-table { min-width: 0; font-size: calc(var(--fs-sm) * var(--fs, 1)); }
table.dt.backtest-table th { cursor: default; user-select: auto; background: var(--panel-2); }
.backtest-table th,
.backtest-table td { padding: 9px 12px; text-align: right; white-space: nowrap; }
.backtest-table td { font-family: var(--font-num); font-variant-numeric: tabular-nums; }
.backtest-table th.l,
.backtest-table td.l { text-align: left; font-family: var(--font-body); }
.backtest-table td.mono { font-family: var(--font-ticker, var(--font-mono)); }
.backtest-table tbody tr + tr td { border-top: 1px solid var(--rule); }
.backtest-table td.is-pos { color: var(--good); }
.backtest-table td.is-neg { color: var(--bad); }
.backtest-table td.is-est { color: var(--accent); font-style: italic; }
.backtest-table td.is-hi { font-weight: 700; }
.backtest-table td.is-lo { color: var(--muted); }
.backtest-table tfoot .backtest-tfoot-row td { border-top: 1px solid var(--rule-strong); font-weight: 700; background: var(--panel-2); }
.backtest-alloc-table td { vertical-align: middle; }
.backtest-picker-cell { min-width: 150px; }
.backtest-name-cell { max-width: 360px; white-space: normal; }

.backtest-picker { position: relative; }
.backtest-view .backtest-ticker-input {
  width: 150px;
  font-family: var(--font-ticker, var(--font-mono));
  font-weight: 700;
  text-transform: uppercase;
}
.backtest-ticker-input.is-unconfirmed { border-style: dashed; border-color: var(--accent); }
.backtest-ticker-input::placeholder { text-transform: none; font-weight: 400; font-family: var(--font-body); }
.backtest-pct-input {
  width: 84px;
  min-height: 42px;
  padding: 6px 8px;
  text-align: right;
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  background: var(--panel-2);
  color: var(--text);
  font-family: var(--font-num);
  font-variant-numeric: tabular-nums;
  font-size: calc(var(--fs-base) * var(--fs, 1));
}
.backtest-pct-input:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.backtest-pctsign { margin-left: 4px; color: var(--muted); }
.backtest-remove-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  background: var(--panel-2);
  color: var(--muted);
  cursor: pointer;
}
.backtest-remove-btn svg { width: 14px; height: 14px; }
.backtest-remove-btn:hover { border-color: var(--bad); color: var(--bad); background: var(--bad-tint); }
.backtest-remove-btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

/* Run */
.backtest-submit-row { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; margin-top: 20px; }
.btn-ext.btn-run-backtest { background: var(--accent2); border-color: var(--accent2); color: var(--on-accent); font-weight: 700; }
.btn-ext.btn-run-backtest:hover { background: var(--accent2-soft); border-color: var(--accent2-soft); }
.backtest-status-msg { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--muted); }
.backtest-status-msg.is-loading { color: var(--accent); }
.backtest-status-msg.is-error { color: var(--bad); font-weight: 600; }
.backtest-status-msg.is-success { color: var(--good); }

/* Results */
.backtest-asof { display: flex; align-items: center; gap: 8px 16px; flex-wrap: wrap; font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.backtest-asof__state { font-weight: 600; }
.backtest-asof__seg,
.backtest-detail-seg,
.backtest-scale-toggle { width: auto; flex-wrap: nowrap; }
.backtest-notes { margin: 0 0 12px; padding-left: 18px; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); }
.backtest-notes li + li { margin-top: 4px; }
.backtest-notes li.is-warn,
.backtest-note.is-warn { color: var(--bad); }
.backtest-note { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--muted); margin: 8px 0 0; }
.backtest-summary-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: 24px; align-items: start; }
.backtest-assumptions {
  border-top: 1px solid var(--rule);
  margin-top: 24px;
  padding-top: 16px;
  font-size: calc(var(--fs-xs) * var(--fs, 1));
}
.backtest-assumptions dl { margin: 12px 0 0; }
.backtest-assumptions dt { font-weight: 700; color: var(--text); }
.backtest-assumptions dd { margin: 2px 0 10px; color: var(--text-soft); line-height: 1.45; }
.backtest-csv-bar { margin-top: 4px; }

.backtest-kpi-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; margin: 4px 0 8px; }
.backtest-kpi {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 16px;
  background: var(--panel-2);
  border: 1px solid var(--rule);
  border-radius: var(--radius-sm);
}
.backtest-kpi__lbl { font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; text-transform: uppercase; color: var(--muted); }
.backtest-kpi__val { font-family: var(--font-num); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-xl) * var(--fs, 1)); font-weight: 700; color: var(--text); }
.backtest-kpi__sub { font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--muted); }

/* Charts */
.backtest-chart-wrap { position: relative; margin: 0 0 16px; }
.backtest-chart-wrap:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.backtest-svg { display: block; max-width: 100%; height: auto; }
.backtest-chart-grid { stroke: var(--rule); stroke-dasharray: 3 3; }
.backtest-chart-zero { stroke: var(--rule-strong); }
.backtest-chart-axis-txt { fill: var(--muted); font-family: var(--font-num); font-size: calc(var(--fs-micro) * var(--fs, 1)); }
.backtest-chart-overlay { fill: transparent; cursor: crosshair; }
.backtest-chart-crosshair { stroke: var(--text-soft); stroke-dasharray: 4 3; pointer-events: none; }
.backtest-line { fill: none; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.backtest-line.is-s1 { stroke: var(--accent); stroke-width: 2.5; }
.backtest-line.is-s2 { stroke: var(--text); }
.backtest-line.is-s3 { stroke: var(--text-soft); stroke-dasharray: 8 4; }
.backtest-line.is-bm { stroke: var(--muted); stroke-dasharray: 2 3; }
.backtest-chart-dot { pointer-events: none; stroke: var(--panel); stroke-width: 2; }
.backtest-chart-dot.is-s1 { fill: var(--accent); }
.backtest-chart-dot.is-s2 { fill: var(--text); }
.backtest-chart-dot.is-s3 { fill: var(--text-soft); }
.backtest-chart-dot.is-bm { fill: var(--muted); }
.backtest-swatch { display: inline-block; flex: 0 0 auto; width: 18px; height: 0; border-top: 3px solid var(--muted); vertical-align: middle; }
.backtest-swatch.is-s1 { border-top-color: var(--accent); }
.backtest-swatch.is-s2 { border-top-color: var(--text); }
.backtest-swatch.is-s3 { border-top-color: var(--text-soft); border-top-style: dashed; }
.backtest-swatch.is-bm { border-top-color: var(--muted); border-top-style: dotted; }
.backtest-swatch.is-income { height: 10px; border: 0; background: var(--accent); }
.backtest-swatch.is-income-est { height: 10px; border: 1px dashed var(--accent); background: var(--accent-tint); }
.backtest-chart-tooltip {
  position: absolute;
  top: 12px;
  z-index: 5;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 180px;
  max-width: 280px;
  padding: 8px 12px;
  background: var(--panel);
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow);
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  pointer-events: none;
}
.backtest-chart-tooltip[hidden] { display: none; }
.backtest-tooltip-date { font-family: var(--font-num); color: var(--muted); }
.backtest-tooltip-row { display: flex; align-items: center; gap: 6px; }
.backtest-tooltip-lbl { color: var(--text-soft); }
.backtest-tooltip-val { margin-left: auto; font-family: var(--font-num); font-variant-numeric: tabular-nums; font-weight: 700; }
.backtest-chart-legend { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 8px; font-size: calc(var(--fs-xs) * var(--fs, 1)); color: var(--text-soft); }
.backtest-legend-item { display: inline-flex; align-items: center; gap: 6px; }
.backtest-legend-hint { color: var(--muted); }
.backtest-income-bar { fill: var(--accent); }
.backtest-income-bar.is-est { fill: var(--accent-tint); stroke: var(--accent); stroke-dasharray: 3 2; }
.backtest-income-val-txt { fill: var(--text); font-family: var(--font-num); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 700; }

/* Toast */
.backtest-toast {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 130;
  padding: 10px 16px;
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow);
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  opacity: 0;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
}
.backtest-toast.is-visible { opacity: 1; transform: none; }

@media (max-width: 960px) {
  .backtest-summary-grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
}
@media (max-width: 680px) {
  .backtest-settings-grid { grid-template-columns: minmax(0, 1fr); }
  .backtest-scenario-bar #btScenarioAddSlot { margin-left: 0; }
  .backtest-preset-chip { max-width: none; width: 100%; }
  .backtest-asof__seg,
  .backtest-detail-seg { width: 100%; flex-wrap: wrap; }
  .backtest-toast { left: 16px; right: 16px; }
  .backtest-view .backtest-ticker-input { width: 130px; }
}
@media (prefers-reduced-motion: reduce) {
  .backtest-toast,
  .backtest-results[aria-busy="true"] { transition: none; }
}

/* === Intent Hub (Entry Point & Workflow Router) === */
.intent-hub {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--mast-fieldline, rgba(255, 255, 255, 0.16));
}

.intent-hub__head {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 16px;
}

.intent-hub__eyebrow {
  font-family: var(--font-body);
  font-size: calc(var(--fs-micro) * var(--fs, 1));
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: var(--mast-hl, var(--accent));
}

.intent-hub__title {
  margin: 0;
  font-family: var(--font-head, var(--font-body));
  font-size: calc(var(--fs-lg) * var(--fs, 1));
  font-weight: var(--head-w, 700);
  color: var(--mast-on, var(--text));
  letter-spacing: -0.01em;
}

.intent-hub__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.intent-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--mast-field, var(--panel));
  border: 1.5px solid var(--mast-fieldline, var(--rule));
  border-radius: var(--radius);
  padding: 20px 22px;
  color: var(--mast-on, var(--text));
  text-decoration: none;
  transition: transform 0.22s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.22s ease;
  position: relative;
  overflow: hidden;
}

.intent-card:hover {
  transform: translateY(-3px);
  background: var(--mast-hover, var(--hover));
  border-color: var(--mast-hl, var(--accent));
  box-shadow: 0 12px 28px -12px rgba(0, 0, 0, 0.4);
}

.intent-card:focus-visible {
  outline: 2px solid var(--mast-hl, var(--accent));
  outline-offset: 2px;
}

.intent-card--featured {
  border-color: color-mix(in srgb, var(--mast-hl, var(--accent)) 55%, var(--mast-fieldline, rgba(255, 255, 255, 0.16)));
  background: color-mix(in srgb, var(--mast-hl, var(--accent)) 6%, var(--mast-field, var(--panel)));
}

.intent-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}

.intent-card__badge {
  font-family: var(--font-body);
  font-size: calc(var(--fs-micro) * var(--fs, 1));
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--mast-label, var(--muted));
}

.intent-card__badge--gold {
  color: var(--mast-hl, var(--accent));
}

.intent-card__icon {
  width: 38px;
  height: 38px;
  border-radius: 9px;
  background: var(--mast-press, rgba(255, 255, 255, 0.08));
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--mast-hl, var(--accent));
  flex-shrink: 0;
}

.intent-card__icon svg {
  width: 20px;
  height: 20px;
}

.intent-card__body {
  flex-grow: 1;
}

.intent-card__title {
  margin: 0 0 6px;
  font-family: var(--font-body);
  font-size: calc(var(--fs-md) * var(--fs, 1));
  font-weight: 700;
  color: var(--mast-on, var(--text));
  line-height: 1.3;
}

.intent-card__desc {
  margin: 0;
  font-size: calc(var(--fs-xs) * var(--fs, 1));
  color: var(--mast-soft, var(--text-soft));
  line-height: 1.5;
}

.intent-card__action {
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px solid var(--mast-fieldline, var(--rule));
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  font-weight: 700;
  color: var(--mast-hl, var(--accent));
}

.intent-card__arrow {
  width: 16px;
  height: 16px;
  transition: transform 0.2s ease;
}

.intent-card:hover .intent-card__arrow {
  transform: translateX(4px);
}

#intentCardExplore:hover .intent-card__arrow {
  transform: translateY(4px);
}

/* Responsive Layout for Intent Hub */
@media (max-width: 960px) {
  .intent-hub__grid {
    gap: 12px;
  }
  .intent-card {
    padding: 16px 18px;
  }
}

@media (max-width: 720px) {
  .intent-hub {
    margin-top: 22px;
    padding-top: 18px;
  }
  .intent-hub__grid {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    padding: 4px 4px 16px;
    margin: 10px -16px 0;
    padding-left: 16px;
    padding-right: 16px;
    gap: 12px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .intent-hub__grid::-webkit-scrollbar {
    display: none;
  }
  .intent-card {
    flex: 0 0 84%;
    scroll-snap-align: center;
    padding: 16px 18px;
  }
}

/* === Mobile Ergonomics & Native UX Refinements (< 680px) === */
@media (max-width: 680px) {
  /* 1. Touch Target Expansions (44px Minimum for Accessibility & Ergonomics) */
  button,
  .btn,
  .btn-ext,
  .btn-mkt,
  .btn-reset,
  .controls__apply,
  .leaderboard-card-btn,
  .find-btn,
  .btn-run-backtest,
  .backtest-share-btn,
  .backtest-banner-btn,
  .find-income__reset {
    min-height: 44px;
    touch-action: manipulation;
  }

  .backtest-preset-chip {
    min-height: 48px;
    touch-action: manipulation;
  }

  .backtest-scale-btn {
    min-height: 40px;
    padding: 8px 14px;
    touch-action: manipulation;
  }

  .investor-remove,
  .backtest-remove-btn {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    padding: 0;
  }

  .brand__name {
    font-size: calc(var(--fs-sm) * var(--fs, 1));
    letter-spacing: .04em;
  }

  .brand__sub {
    font-size: 10px;
    letter-spacing: 0;
  }

  .chip,
  .market-toggle button {
    min-height: 40px;
    padding: 8px 14px;
  }

  .icon-btn,
  .search-clear,
  .investor-picker-clear {
    min-height: 44px;
    min-width: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  /* 2. Prevent iOS Safari auto-zoom on input focus */
  input[type="number"],
  input[type="search"],
  input[type="text"],
  select.sel {
    min-height: 44px;
    font-size: 16px;
  }

  .find-income__pct,
  .backtest-pct-input {
    min-height: 42px;
    font-size: 16px;
  }

  /* 3. Horizontal Table Scroll Edge Affordance */
  .table-wrap,
  .investor-table-scroll,
  .dist-table-scroll,
  .find-income__wrap,
  .backtest-table-wrap,
  .cmp__tablewrap {
    position: relative;
    -webkit-overflow-scrolling: touch;
    box-shadow: inset -10px 0 10px -10px rgba(0, 0, 0, 0.28);
  }
}

/* Assessment: Fund Assessment view (seven unframed sections) and shared score breakdown */
.investor-section { border-top: 1px solid var(--rule); padding-bottom: 8px; min-width: 0; }
.investor-section > .section-head { margin: 24px 0 12px; }
.investor-section > .section-head .sh-sub a { color: var(--accent); }
.investor-identity { border-top: 0; }
.investor-fund-heading { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.investor-fund-link { text-decoration: none; display: inline-flex; align-items: center; gap: 8px; }
.investor-subhead { margin: 18px 0 8px; font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; color: var(--muted); }
.investor-status-list { margin: 0 0 18px; padding-left: 18px; color: var(--text-soft); font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.6; }
.investor-status-list li + li { margin-top: 4px; }
.investor-metrics-secondary .investor-metric dd { font-size: calc(var(--fs-lg) * var(--fs, 1)); }
.investor-view th.num,
.investor-view td.num { text-align: right; }
.investor-view tbody th { color: var(--text); font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); font-weight: 600; text-transform: none; }
.investor-view tbody th small,
.investor-view td small { display: block; color: var(--muted); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 400; line-height: 1.5; }
.investor-view td.num,
.investor-measure-value { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }
.investor-measure-missing { color: var(--text-soft); }
.investor-view abbr[title] { text-decoration: underline dotted; text-underline-offset: 3px; cursor: help; }
.investor-score-table td,
.investor-score-table th { white-space: normal !important; }
.investor-score-table td.num,
.investor-score-table th.num { white-space: nowrap !important; }
.investor-score-line { display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; margin: 0 0 8px; }
.investor-score-label { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; color: var(--muted); }
.investor-score-line strong { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: 600; color: var(--text); }
.investor-info-wrap { position: relative; display: inline-flex; align-self: center; }
.investor-info { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 0; border: 1px solid var(--rule-strong); border-radius: 50%; background: var(--panel-2); color: var(--text-soft); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 700; cursor: help; }
.investor-info:hover { background: var(--hover); }
.investor-info:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.investor-tooltip { display: none; position: absolute; z-index: 20; left: 50%; top: calc(100% + 8px); transform: translateX(-50%); width: min(280px, 80vw); padding: 8px 12px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); color: var(--text-soft); box-shadow: var(--shadow); font-family: var(--font-body); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 400; line-height: 1.5; text-transform: none; }
.investor-info-wrap:hover .investor-tooltip,
.investor-info:focus + .investor-tooltip { display: block; }
.fund-score-hero .fund-score-big { font-size: calc(var(--fs-xl) * var(--fs, 1)); line-height: 1.2; }
.fund-score-hero .investor-score-line strong.fund-score-big { font-size: calc(var(--fs-xl) * var(--fs, 1)); }
.fund-score-hero { padding-top: 0; }
.fund-score-measures { min-width: 0; }
.fund-score-measures .investor-table-scroll { max-width: 100%; overflow-x: auto; }
.fund-score-measures table { width: 100%; border-collapse: collapse; font-size: calc(var(--fs-sm) * var(--fs, 1)); text-align: left; }
.fund-score-measures caption { text-align: left; padding: 0 0 8px; color: var(--muted); font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.fund-score-measures th,
.fund-score-measures td { padding: 8px 10px; border-bottom: 1px solid var(--rule); vertical-align: top; }
.fund-score-measures thead th { color: var(--muted); font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; }
.fund-score-measures tbody th { font-weight: 600; color: var(--text); }
.fund-score-measures th.num,
.fund-score-measures td.num { text-align: right; font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.fund-score-measures small { display: block; color: var(--muted); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 400; line-height: 1.5; }
.fund-score-measures .investor-measure-value { font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; }
.fund-score-measures abbr[title] { text-decoration: underline dotted; text-underline-offset: 3px; cursor: help; }
@media (max-width: 680px) {
  .investor-fund-link { width: 100%; justify-content: center; }
}

/* === Admin import (Track A: admin token form + CSV symbol import) ===
   Token form injected into the Data admin modal (app.js) and the
   "Import Symbols" panel on #/discovery (discovery.js). Tokens only. */
.admin-auth { display: grid; gap: 8px; margin: 0 0 16px; padding: 12px 16px 16px; border-bottom: 1px solid var(--rule); }
.admin-auth label { font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-xs) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; color: var(--muted); }
.admin-auth__row { display: flex; flex-wrap: wrap; gap: 8px; align-items: stretch; }
.admin-auth__row input { flex: 1 1 220px; min-width: 0; min-height: 40px; padding: 8px 10px; border: 1px solid var(--rule-strong); border-radius: var(--radius-sm); background: var(--panel); color: var(--text); font: inherit; font-size: calc(var(--fs-base) * var(--fs, 1)); }
.admin-auth__row input:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.admin-auth__row input[aria-invalid] { border-color: var(--bad); }
.admin-auth__msg { margin: 0; min-height: 1em; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--muted); }
.discovery-view #discoveryToken[aria-invalid="true"] { border-color: var(--bad); }
.admin-import { margin-top: 48px; padding-top: 8px; border-top: 1px solid var(--rule); }
.admin-import code { font-family: var(--font-mono); font-size: .92em; color: var(--text-soft); }
.admin-import__controls { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; margin: 18px 0 12px; }
.admin-import__file input[type="file"] { min-height: 42px; padding: 8px 10px; max-width: 100%; font-family: var(--font-body); font-size: calc(var(--fs-sm) * var(--fs, 1)); text-transform: none; color: var(--text); }
.admin-import .btn-ext:disabled { opacity: .5; cursor: default; border-color: var(--rule-strong); background: var(--panel-2); }
.admin-import__counts { margin: 18px 0; }
.discovery-view #discoveryImport .admin-import__counts { display: flex; flex-wrap: wrap; gap: 24px 40px; }
.admin-import__warnings { margin: 0 0 12px; padding-left: 18px; font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); }
.discovery-view .admin-import__table th, .discovery-view .admin-import__table td { min-width: 0; max-width: none; }
.discovery-view .admin-import__table th, .discovery-view .admin-import__table td.admin-import__ticker, .discovery-view .admin-import__table td.admin-import__numcol { white-space: nowrap !important; overflow-wrap: normal; }
.admin-import__table td.admin-import__notes { min-width: 240px; color: var(--text-soft); }
.admin-import__table td.admin-import__name { min-width: 180px; }
.admin-import__table:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.admin-import__numcol { text-align: right !important; font-family: var(--font-num, var(--font-mono)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.admin-import__ticker { font-family: var(--font-mono); font-weight: 600; white-space: nowrap; }
.admin-import__muted { color: var(--muted); }
.admin-import__status { display: inline-block; padding: 2px 8px; border: 1px solid var(--rule-strong); border-radius: 999px; background: var(--panel-2); color: var(--text-soft); font-family: var(--font-label, var(--font-body)); font-size: calc(var(--fs-micro) * var(--fs, 1)); font-weight: 600; text-transform: uppercase; white-space: nowrap; }
.admin-import__status--new, .admin-import__status--added { color: var(--good); background: var(--good-tint); border-color: var(--good); }
.admin-import__status--invalid, .admin-import__status--failed { color: var(--bad); background: var(--bad-tint); border-color: var(--bad); }
.admin-import__status--not_found { color: var(--accent); background: var(--accent-tint); border-color: var(--accent); }
.admin-import__confirm { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin: 18px 0; }
.admin-import__confirm .investor-note { flex: 1 1 280px; margin: 0; }
.admin-import__progress p { margin: 18px 0 8px; font-size: calc(var(--fs-base) * var(--fs, 1)); }
.admin-import__progress progress { width: 100%; max-width: 480px; height: 8px; accent-color: var(--accent); }
@media (max-width: 680px) {
  .admin-import__controls { align-items: stretch; }
  .admin-import__controls > * { flex: 1 1 100%; }
  .admin-import__file input[type="file"] { width: 100%; }
  /* Match the existing mobile input rule: avoid iOS Safari zoom on focus */
  .admin-auth__row input, .discovery-view #discoveryToken { font-size: max(16px, calc(var(--fs-base) * var(--fs, 1))); }
}

/* ============================================================
   Maple Editorial Quant (Flagship Blend)
   Combines Private Wealth Editorial authority (Instrument Serif H1/H2,
   warm limestone paper, Boreal Pine + Maple Terracotta palette,
   double-rule dividers) with Quant Terminal precision (Plus Jakarta Sans
   UI, JetBrains Mono tabular numerals, crisp 5px geometry, striped tables,
   and Data-First compact density).
   ============================================================ */

:root,
html[data-mp-preset="blend"] {
  /* 1. Editorial Serif headlines + Surgical UI Sans + Quant Mono numerals */
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-head: 'Instrument Serif', Georgia, serif;
  --font-mono: 'JetBrains Mono', monospace;
  --font-num: var(--font-mono);
  --font-ticker: var(--font-mono);
  --font-label: var(--font-body);
  --head-w: 400;
  --radius: 5px;
  --radius-sm: 4px;

  /* 2. Warm Limestone Ledger Paper & Pure White Data Panels */
  --bg: #F6F5F0;
  --panel: #FFFFFF;
  --panel-2: #EFECE4;
  --hover: #E5E1D6;
  --text: #141615;
  --text-soft: #424643;
  --muted: #6B706B;
  --rule: #E2DFD5;
  --rule-strong: #C7C2B4;

  /* 3. Boreal Pine Controls + Burnished Maple Terracotta Signal */
  --accent: #A63A16;
  --accent-soft: #E8C0B0;
  --accent-tint: #FAF0EC;
  --accent2: #163828;
  --accent2-soft: #3A6650;
  --on-accent: #FFFFFF;

  /* 4. Financial semantic colors & crisp minimal elevation */
  --good: #166534;
  --good-tint: #E4F2EA;
  --bad: #B91C1C;
  --bad-tint: #FCE8E6;
  --shadow: 0 1px 2px rgba(20, 22, 21, 0.04);
}

:root[data-theme="dark"],
html[data-mp-preset="blend"][data-theme="dark"] {
  --bg: #0D100E;
  --panel: #141916;
  --panel-2: #1C231F;
  --hover: #252E29;
  --text: #F2F0EA;
  --text-soft: #B8BEB9;
  --muted: #7E8680;
  --rule: #242C27;
  --rule-strong: #36423B;

  --accent: #E58565;
  --accent-soft: #6E3524;
  --accent-tint: #241814;
  --accent2: #74C69D;
  --accent2-soft: #52B788;
  --on-accent: #0D1511;

  --good: #4ADE80;
  --good-tint: #132A1E;
  --bad: #F87171;
  --bad-tint: #2E1616;
  --shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

/* Editorial Headline Authority + Double-Rule Structural Dividers (Flagship Blend) */
html:not([data-mp-preset]) .hero h1,
html[data-mp-preset="blend"] .hero h1,
html:not([data-mp-preset]) .page-head h1,
html[data-mp-preset="blend"] .page-head h1,
html:not([data-mp-preset]) .page-head h2,
html[data-mp-preset="blend"] .page-head h2,
html:not([data-mp-preset]) .provhero h1,
html[data-mp-preset="blend"] .provhero h1 {
  font-family: var(--font-head) !important;
  font-weight: 400 !important;
  font-size: clamp(32px, 3.6vw, 44px) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.05 !important;
}
html:not([data-mp-preset])[data-mp-density="compact"] .hero h1,
html[data-mp-preset="blend"][data-mp-density="compact"] .hero h1 {
  font-size: clamp(28px, 3vw, 36px) !important;
}
html:not([data-mp-preset]) .section-head h2,
html[data-mp-preset="blend"] .section-head h2,
html:not([data-mp-preset]) .leaderboard-section > .section-head h2,
html[data-mp-preset="blend"] .leaderboard-section > .section-head h2,
html:not([data-mp-preset]) .intent-hub__title,
html[data-mp-preset="blend"] .intent-hub__title {
  font-family: var(--font-head) !important;
  font-weight: 400 !important;
  font-size: calc(var(--fs-2xl) * var(--fs, 1)) !important;
  letter-spacing: 0 !important;
}
html:not([data-mp-preset]) .intent-hub,
html[data-mp-preset="blend"] .intent-hub,
html:not([data-mp-preset]) .leaderboard-rankings-section,
html[data-mp-preset="blend"] .leaderboard-rankings-section {
  border-top: 3px double var(--rule-strong);
}
html:not([data-mp-preset]) table.dt tbody tr:nth-child(even) td,
html[data-mp-preset="blend"] table.dt tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--panel-2) 45%, var(--panel));
}
html:not([data-mp-preset]) table.dt tbody tr:hover td,
html[data-mp-preset="blend"] table.dt tbody tr:hover td {
  background: var(--hover);
}

/* Market switch: text segmented control, not flags */
.market-toggle--text { border-radius: 8px; padding: 2px; background: var(--panel-2); border: 1px solid var(--rule-strong); }
.market-toggle--text button { border-radius: 6px; padding: 7px 12px; font-weight: 700; letter-spacing: .01em; }
.market-toggle--text .mkt-lbl { font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1; }
.market-toggle--text button[aria-pressed="true"] { background: var(--accent2); color: var(--on-accent); box-shadow: 0 1px 2px rgba(0, 0, 0, 0.14); }
.market-toggle--text .flag { display: none !important; }

/* Header: crisp glass ledger bar, nav sits left next to the wordmark */
.topbar__in { gap: 20px; padding: 12px 22px; }
.topnav { margin-right: auto; }
.search { margin-left: 0; }
.brand__mark .mp-logo-svg path { fill: var(--accent); }
.topnav__link[aria-current="page"] {
  color: var(--text);
  background: var(--panel-2);
  border-color: var(--rule-strong);
  font-weight: 700;
}

/* Hero & Workflow Hub: tighter vertical rhythm so ETF data sits higher above the fold */
.hero {
  grid-template-columns: 1fr;
  grid-template-areas: "lead" "sub" "stats";
  row-gap: 10px;
  padding: 22px 0 14px;
}
.hero h1 {
  font-family: var(--font-head);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--text);
  max-width: 22ch;
}
.hero h1 em { font-style: normal; color: inherit; }
.hero__eyebrow { color: var(--accent); margin-bottom: 4px; }
.hero__sub { max-width: 66ch; color: var(--text-soft); }
.hero__stats {
  display: flex;
  gap: 32px;
  padding-top: 12px;
  border-top: 1px solid var(--rule);
  margin-top: 4px;
}
.hstat { text-align: left; }
.hstat__n {
  font-family: var(--font-num);
  font-size: calc(var(--fs-2xl) * var(--fs, 1));
  font-weight: 700;
  letter-spacing: -0.02em;
}

.intent-hub {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--rule);
}
.intent-card {
  padding: 16px 18px;
  border: 1px solid var(--rule);
  box-shadow: var(--shadow);
}
.intent-card--featured {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--rule));
  background: color-mix(in srgb, var(--accent) 4%, var(--panel));
}

/* Filter Controls: quiet unselected chips, high-contrast active Obsidian pills */
.controls {
  border: 1px solid var(--rule);
  box-shadow: var(--shadow);
  padding: 14px 18px;
}
.chip {
  border-radius: 6px;
  background: transparent;
  border: 1px solid var(--rule-strong);
  color: var(--text-soft);
}
@media (hover: hover) {
  .chip:not([aria-disabled="true"]):not([aria-pressed="true"]):hover {
    border-color: var(--text-soft);
    background: var(--panel-2);
    color: var(--text);
  }
}
.chip[aria-pressed="true"] {
  background: var(--accent2);
  color: var(--on-accent);
  border-color: var(--accent2);
}

/* Fund Cards: 3-second scan hierarchy + de-boxed 2x2 metrics ledger */
.card {
  border: 1px solid var(--rule);
  border-radius: 8px;
  padding: 16px 18px;
  gap: 11px;
}
.card__ticker {
  font-family: var(--font-ticker);
  font-weight: 700;
  letter-spacing: -0.02em;
}
.price-now {
  font-family: var(--font-num);
  font-weight: 600;
  letter-spacing: -0.02em;
}
.card__yield {
  background: var(--accent-tint);
  border-left: 3px solid var(--accent);
  border-radius: 2px 6px 6px 2px;
  padding: 8px 12px;
  gap: 10px;
  align-items: baseline;
}
.card__yield .y-num {
  font-family: var(--font-num);
  font-size: calc(var(--fs-2xl) * var(--fs, 1));
  font-weight: 700;
  color: var(--accent);
  letter-spacing: -0.02em;
  line-height: 1.05;
}
.card__yield .y-lbl {
  color: var(--text-soft);
  font-weight: 700;
}
.leaderboard-yield-box.card__yield {
  border-left: 3px solid var(--accent);
  background: var(--accent-tint);
}

/* De-box the 2x2 metrics grid into a clean hairline tear-sheet */
.metrics {
  background: transparent;
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  border-radius: 0;
  gap: 0;
}
.metric {
  background: transparent;
  padding: 8px 0;
}
.metric:nth-child(even) {
  padding-left: 12px;
  border-left: 1px solid var(--rule);
}
.metric:nth-child(odd) {
  padding-right: 12px;
}
.metric:nth-child(n+3) {
  border-top: 1px solid var(--rule);
}
.metric .m-v {
  font-family: var(--font-num);
  font-weight: 600;
  letter-spacing: -0.01em;
}

/* Soften passive metadata tags so they don't compete with buttons */
.tag {
  border-radius: 4px;
  border-color: transparent;
  background: var(--panel-2);
  color: var(--text-soft);
}
.tag--on {
  background: var(--hover);
  border-color: var(--rule-strong);
  color: var(--text);
  font-weight: 700;
}

.range__bar { background: var(--rule-strong); }
.range__dot, :root[data-theme="dark"] .range__dot { background: var(--accent); }

/* Keep the card accent stripe/hover in the Maple Copper accent */
.card, .provhero, .provider-card { --pcs: var(--pc, var(--accent)); }

/* ============================================================
   MAPLE PAYCHEQUE THEME STUDIO — 4 FINTECH DESIGN SYSTEMS
   1. ledger     — Maple Ledger 2.0 (Archivo + IBM Plex Mono)
   2. quant      — Quant Terminal (Plus Jakarta Sans + JetBrains Mono)
   3. editorial  — Private Wealth Journal (Instrument Serif + Plus Jakarta Sans + IBM Plex Mono)
   4. neobroker  — Neo-Brokerage Clean (DM Sans + Space Mono)
   ============================================================ */

/* --- PRESET: MAPLE LEDGER 2.0 (default research appearance) --- */
html[data-mp-preset="ledger"] {
  --font-body: 'Archivo', system-ui, sans-serif;
  --font-head: 'Archivo', system-ui, sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;
  --font-num: var(--font-mono);
  --font-ticker: var(--font-mono);
  --font-label: var(--font-body);
  --head-w: 700;
  --radius: 8px;
  --radius-sm: 6px;

  --bg: #F6F7F6;
  --panel: #FFFFFF;
  --panel-2: #EEF1F0;
  --hover: #E5EAE8;
  --text: #111618;
  --text-soft: #434D50;
  --muted: #687376;
  --rule: #E2E7E5;
  --rule-strong: #C8D0CE;
  --accent: #A64B25;
  --accent-soft: #F0C7B4;
  --accent-tint: #FAF0EB;
  --accent2: var(--accent);
  --accent2-soft: #3B494E;
  --on-accent: #FFFFFF;
}

html[data-mp-preset="ledger"][data-theme="dark"] {
  --bg: #0E1315;
  --panel: #151C1F;
  --panel-2: #1C2529;
  --hover: #243035;
  --text: #F0F3F2;
  --text-soft: #B2BCBA;
  --muted: #A3AFAD;
  --rule: #232E32;
  --rule-strong: #344247;
  --accent: #E2875A;
  --accent-soft: #7A3E24;
  --accent-tint: #261B16;
  --accent2: var(--accent);
  --accent2-soft: #B2C2BD;
  --on-accent: #0E1315;
}

/* --- PRESET 2: QUANT TERMINAL (StockAnalysis / Koyfin / Linear) --- */
html[data-mp-preset="quant"] {
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-head: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --font-num: var(--font-mono);
  --font-ticker: var(--font-mono);
  --font-label: var(--font-body);
  --head-w: 700;
  --radius: 4px;
  --radius-sm: 3px;

  --bg: #F8FAFC;
  --panel: #FFFFFF;
  --panel-2: #F1F5F9;
  --hover: #E2E8F0;
  --text: #0F172A;
  --text-soft: #334155;
  --muted: #64748B;
  --rule: #E2E8F0;
  --rule-strong: #CBD5E1;

  --accent: #2563EB;
  --accent-soft: #BFDBFE;
  --accent-tint: #EFF6FF;
  --accent2: #0F172A;
  --accent2-soft: #334155;
  --on-accent: #FFFFFF;

  --good: #059669;
  --good-tint: #ECFDF5;
  --bad: #DC2626;
  --bad-tint: #FEF2F2;
  --shadow: none;
}

html[data-mp-preset="quant"][data-theme="dark"] {
  --bg: #090D16;
  --panel: #0F1623;
  --panel-2: #162032;
  --hover: #1E293B;
  --text: #F8FAFC;
  --text-soft: #CBD5E1;
  --muted: #64748B;
  --rule: #1E293B;
  --rule-strong: #334155;

  --accent: #60A5FA;
  --accent-soft: #1E3A8A;
  --accent-tint: #111C35;
  --accent2: #38BDF8;
  --accent2-soft: #0284C7;
  --on-accent: #090D16;

  --good: #34D399;
  --good-tint: #06281E;
  --bad: #F87171;
  --bad-tint: #2C1215;
  --shadow: none;
}

html[data-mp-preset="quant"] .card,
html[data-mp-preset="quant"] .controls,
html[data-mp-preset="quant"] .intent-card,
html[data-mp-preset="quant"] .table-wrap,
html[data-mp-preset="quant"] .cmp__chart,
html[data-mp-preset="quant"] .cmp__tablewrap,
html[data-mp-preset="quant"] .rail-card {
  border-radius: 4px;
  box-shadow: none;
  border-color: var(--rule-strong);
}
html[data-mp-preset="quant"] .card__yield {
  background: var(--panel-2);
  border-left: 2px solid var(--accent);
  border-radius: 2px;
  padding: 7px 10px;
}
html[data-mp-preset="quant"] .chip,
html[data-mp-preset="quant"] .tag {
  border-radius: 3px !important;
}
html[data-mp-preset="quant"] table.dt tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--panel-2) 55%, var(--panel));
}
html[data-mp-preset="quant"] table.dt tbody tr:hover td {
  background: var(--hover);
}

/* --- PRESET 3: PRIVATE WEALTH EDITORIAL (Barron's / Economist / Advisory) --- */
html[data-mp-preset="editorial"] {
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-head: 'Instrument Serif', Georgia, serif;
  --font-mono: 'IBM Plex Mono', monospace;
  --font-num: var(--font-mono);
  --font-ticker: var(--font-mono);
  --font-label: var(--font-body);
  --head-w: 400;
  --radius: 6px;
  --radius-sm: 4px;

  --bg: #F6F4EE;
  --panel: #FDFCF9;
  --panel-2: #EDEAE1;
  --hover: #E3DFD3;
  --text: #181815;
  --text-soft: #46453F;
  --muted: #6E6C64;
  --rule: #DFDBD0;
  --rule-strong: #C5C0B2;

  --accent: #9E3B18;
  --accent-soft: #E8C1B0;
  --accent-tint: #F8EFEA;
  --accent2: #1B4332;
  --accent2-soft: #406E58;
  --on-accent: #FFFFFF;

  --good: #1B5E3A;
  --good-tint: #E5F0E9;
  --bad: #A8241C;
  --bad-tint: #F7E6E4;
  --shadow: 0 1px 3px rgba(24, 24, 21, 0.05);
}

html[data-mp-preset="editorial"][data-theme="dark"] {
  --bg: #121311;
  --panel: #191B18;
  --panel-2: #222520;
  --hover: #2C302A;
  --text: #F2F0EA;
  --text-soft: #BEBBB0;
  --muted: #8A877C;
  --rule: #2A2D28;
  --rule-strong: #3D413A;

  --accent: #E07A5F;
  --accent-soft: #6E3627;
  --accent-tint: #261B17;
  --accent2: #74C69D;
  --accent2-soft: #52B788;
  --on-accent: #101814;

  --good: #68C994;
  --good-tint: #172B20;
  --bad: #E8867E;
  --bad-tint: #301B19;
}

html[data-mp-preset="editorial"] .hero h1,
html[data-mp-preset="editorial"] .page-head h1,
html[data-mp-preset="editorial"] .page-head h2,
html[data-mp-preset="editorial"] .provhero h1 {
  font-family: var(--font-head) !important;
  font-weight: 400 !important;
  font-size: clamp(34px, 4.2vw, 50px) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.04 !important;
  max-width: 26ch;
}
html[data-mp-preset="editorial"] .section-head h2,
html[data-mp-preset="editorial"] .leaderboard-section > .section-head h2,
html[data-mp-preset="editorial"] .intent-hub__title {
  font-family: var(--font-head) !important;
  font-weight: 400 !important;
  font-size: calc(var(--fs-2xl) * var(--fs, 1)) !important;
  letter-spacing: 0 !important;
}
html[data-mp-preset="editorial"] .hero__stats,
html[data-mp-preset="editorial"] .intent-hub,
html[data-mp-preset="editorial"] .leaderboard-rankings-section {
  border-top: 3px double var(--rule-strong);
}

/* --- PRESET 4: NEO-BROKERAGE CLEAN (Wealthsimple / Stripe / Modern App) --- */
html[data-mp-preset="neobroker"] {
  --font-body: 'DM Sans', system-ui, sans-serif;
  --font-head: 'DM Sans', system-ui, sans-serif;
  --font-mono: 'Space Mono', monospace;
  --font-num: var(--font-mono);
  --font-ticker: var(--font-mono);
  --font-label: var(--font-body);
  --head-w: 700;
  --radius: 16px;
  --radius-sm: 10px;

  --bg: #F2F4F7;
  --panel: #FFFFFF;
  --panel-2: #F2F4F7;
  --hover: #E5E8EC;
  --text: #111113;
  --text-soft: #4A4D55;
  --muted: #767A85;
  --rule: #E6E8EC;
  --rule-strong: #D1D5DB;

  --accent: #E14817;
  --accent-soft: #FBD0C0;
  --accent-tint: #FFF3EE;
  --accent2: #111113;
  --accent2-soft: #3F424A;
  --on-accent: #FFFFFF;

  --good: #0D8A52;
  --good-tint: #E6F6EE;
  --bad: #D92D20;
  --bad-tint: #FEECEB;
  --shadow: 0 2px 6px rgba(17, 17, 19, 0.03), 0 12px 28px -8px rgba(17, 17, 19, 0.07);
}

html[data-mp-preset="neobroker"][data-theme="dark"] {
  --bg: #090A0F;
  --panel: #13151C;
  --panel-2: #1C1F2A;
  --hover: #262A38;
  --text: #F9FAFB;
  --text-soft: #B8BCC8;
  --muted: #7D8292;
  --rule: #212532;
  --rule-strong: #32384A;

  --accent: #FF6B3D;
  --accent-soft: #7C2D12;
  --accent-tint: #27150F;
  --accent2: #FFFFFF;
  --accent2-soft: #D1D5DB;
  --on-accent: #090A0F;

  --good: #32D583;
  --good-tint: #0E291E;
  --bad: #F97066;
  --bad-tint: #2E1514;
  --shadow: 0 4px 20px rgba(0, 0, 0, 0.45);
}

html[data-mp-preset="neobroker"] .card,
html[data-mp-preset="neobroker"] .controls,
html[data-mp-preset="neobroker"] .intent-card,
html[data-mp-preset="neobroker"] .rail-card {
  border-radius: 16px;
  border-color: transparent;
  box-shadow: var(--shadow);
}
html[data-mp-preset="neobroker"] .chip {
  border-radius: 999px !important;
  background: var(--panel-2);
  border-color: transparent;
}
html[data-mp-preset="neobroker"] .chip[aria-pressed="true"] {
  background: var(--accent2);
  color: var(--on-accent);
}
html[data-mp-preset="neobroker"] .card__yield {
  border-left: 0;
  border-radius: 12px;
  padding: 10px 14px;
}

/* ============================================================
   COMPACT DATA-FIRST DENSITY MODE (html[data-mp-density="compact"])
   Brings ETF cards/tables ~300px higher above the fold
   ============================================================ */
html[data-mp-density="compact"] .ad--leader { display: none !important; }
html[data-mp-density="compact"] .hero {
  grid-template-columns: 1fr auto;
  grid-template-areas: "lead stats" "sub stats";
  row-gap: 4px;
  column-gap: 24px;
  padding: 14px 0 10px;
  align-items: center;
}
html[data-mp-density="compact"] .hero h1 {
  font-size: clamp(22px, 2.4vw, 28px) !important;
  max-width: none;
  margin-bottom: 2px;
}
html[data-mp-density="compact"] .hero__sub {
  font-size: calc(var(--fs-sm) * var(--fs, 1));
  max-width: 72ch;
}
html[data-mp-density="compact"] .hero__stats {
  border-top: 0;
  padding-top: 0;
  margin-top: 0;
  gap: 22px;
}
html[data-mp-density="compact"] .intent-hub {
  margin-top: 10px;
  padding-top: 10px;
}
html[data-mp-density="compact"] .intent-hub__head {
  display: none;
}
html[data-mp-density="compact"] .intent-hub__grid {
  gap: 10px;
}
html[data-mp-density="compact"] .intent-card {
  flex-direction: row;
  align-items: center;
  padding: 10px 14px;
  gap: 12px;
}
html[data-mp-density="compact"] .intent-card__top {
  margin-bottom: 0;
  order: -1;
}
html[data-mp-density="compact"] .intent-card__badge,
html[data-mp-density="compact"] .intent-card__desc,
html[data-mp-density="compact"] .intent-card__action span {
  display: none;
}
html[data-mp-density="compact"] .intent-card__icon {
  width: 30px;
  height: 30px;
  border-radius: 7px;
}
html[data-mp-density="compact"] .intent-card__title {
  margin: 0;
  font-size: calc(var(--fs-sm) * var(--fs, 1));
}
html[data-mp-density="compact"] .intent-card__action {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
html[data-mp-density="compact"] .controls {
  padding: 10px 14px;
}
html[data-mp-density="compact"] .fgroup + .fgroup {
  margin-top: 8px;
  padding-top: 8px;
}
html[data-mp-density="compact"] .fgroup__head {
  margin-bottom: 5px;
}
html[data-mp-density="compact"] .card {
  padding: 12px 14px;
  gap: 8px;
}
html[data-mp-density="compact"] table.dt td,
html[data-mp-density="compact"] table.dt th {
  padding-top: 7px;
  padding-bottom: 7px;
}

/* ============================================================
   FLOATING THEME STUDIO UI (#mpThemeStudio)
   ============================================================ */
.mp-studio {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 160;
  font-family: var(--font-body);
  color: var(--text);
}
.mp-studio__fab {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  height: 42px;
  padding: 0 15px;
  border-radius: 999px;
  border: 1.5px solid var(--rule-strong);
  background: var(--panel);
  color: var(--text);
  box-shadow: 0 8px 28px -6px rgba(0, 0, 0, 0.25);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: transform 0.16s ease, border-color 0.16s ease;
}
.mp-studio__fab:hover {
  transform: translateY(-2px);
  border-color: var(--accent);
}
.mp-studio__fab-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 3px var(--accent-tint);
}
.mp-studio__fab-kbd {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  color: var(--muted);
  padding: 2px 5px;
  border-radius: 4px;
  background: var(--panel-2);
  border: 1px solid var(--rule);
}

.mp-studio__panel {
  position: absolute;
  left: 0;
  bottom: calc(100% + 10px);
  width: min(360px, calc(100vw - 36px));
  background: var(--panel);
  border: 1px solid var(--rule-strong);
  border-radius: 14px;
  box-shadow: 0 20px 50px -12px rgba(0, 0, 0, 0.38);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.mp-studio__panel[hidden] {
  display: none !important;
}
.mp-studio__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--rule);
}
.mp-studio__title {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: 7px;
}
.mp-studio__close {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  border: 1px solid var(--rule);
  background: var(--panel-2);
  color: var(--muted);
  display: grid;
  place-items: center;
  font-size: 14px;
  cursor: pointer;
}
.mp-studio__close:hover {
  color: var(--text);
  background: var(--hover);
}
.mp-studio__presets {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}
.mp-studio__preset {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  text-align: left;
  padding: 10px 12px;
  border-radius: 9px;
  border: 1.5px solid var(--rule);
  background: var(--panel-2);
  color: var(--text);
  cursor: pointer;
  transition: border-color 0.14s ease, background 0.14s ease;
}
.mp-studio__preset:hover {
  border-color: var(--rule-strong);
  background: var(--hover);
}
.mp-studio__preset[aria-pressed="true"] {
  border-color: var(--accent);
  background: var(--accent-tint);
}
.mp-studio__p-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mp-studio__p-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: 6px;
}
.mp-studio__p-sub {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.3;
}
.mp-studio__swatches {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.mp-studio__sw {
  width: 14px;
  height: 14px;
  border-radius: 4px;
  border: 1px solid rgba(128, 128, 128, 0.35);
}
.mp-studio__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--rule);
}
.mp-studio__lbl {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
}
.mp-studio__seg {
  display: inline-flex;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  border-radius: 7px;
  padding: 2px;
  gap: 2px;
}
.mp-studio__seg button {
  border: 0;
  background: transparent;
  color: var(--text-soft);
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 9px;
  border-radius: 5px;
  cursor: pointer;
}
.mp-studio__seg button[aria-pressed="true"] {
  background: var(--accent2);
  color: var(--on-accent);
}

/* ==========================================================================
   HYBRID A + C ARCHITECTURE (2026 FINTECH WORKBENCH)
   1. Centered Floating Segmented Dock (.topnav--dock)
   2. 2-Box Bento Hero + Market Pulse Strip (.bento-hero)
   3. 1-Line Collapsible Smart Filter Bar (#controls) + Inline Active Pills
   4. Full-Width 4-Column ETF Grid (.layout--full / #cardGrid)
   5. Find My ETF (#/find) & Backtesting (#/backtest) Workbench Polish
   6. Fund Page (#/fund/...) & Drawer Tear-Sheet + Connected Workflow Bridges
   ========================================================================== */

/* --- 1. Centered Floating Segmented Dock (.topnav--dock) --- */
.topbar__in {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 14px;
}
.topnav.topnav--dock {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 4px;
  border-radius: 999px;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.04), 0 2px 8px -2px rgba(0, 0, 0, 0.05);
}
.topnav.topnav--dock .topnav__link {
  border-radius: 999px !important;
  padding: 6px 13px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em;
  color: var(--text-soft);
  transition: background 0.14s ease, color 0.14s ease, box-shadow 0.14s ease;
  white-space: nowrap;
}
.topnav.topnav--dock .topnav__link:hover {
  color: var(--text);
  background: var(--hover);
}
.topnav.topnav--dock .topnav__link[aria-current="page"] {
  background: var(--accent2) !important;
  color: var(--on-accent) !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.16);
}
.topnav.topnav--dock .nav-dd__btn--dots {
  border-radius: 999px !important;
  padding: 5px 11px !important;
  min-width: 34px;
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  color: var(--text-soft);
  background: transparent;
  border: 0;
  cursor: pointer;
}
.topnav.topnav--dock .nav-dd__btn--dots:hover,
.topnav.topnav--dock .nav-dd[data-open="true"] .nav-dd__btn--dots {
  background: var(--hover);
  color: var(--text);
}
.brand__sub {
  letter-spacing: 0.09em !important;
  font-size: 10px !important;
  text-transform: uppercase;
}
.brand__sub strong {
  color: var(--accent);
  font-weight: 800;
}

@media (max-width: 1120px) {
  .topbar__in {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

/* --- 2. 2-Box Bento Hero + Market Pulse Strip (.bento-hero) --- */
html #homeView .hero.bento-hero {
  display: block !important;
  grid-template-columns: none !important;
  grid-template-areas: none !important;
  padding: 18px 0 14px !important;
  border-bottom: 0 !important;
}
.bento-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.48fr) minmax(340px, 0.92fr);
  gap: 14px;
  align-items: stretch;
}
.bento-card {
  background: var(--panel);
  border: 1px solid var(--rule-strong);
  border-radius: var(--radius-lg, 12px);
  box-shadow: var(--card-shadow);
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}
.bento-card--lead {
  border-top: 2.5px solid var(--accent2);
}
.bento-card--pulse {
  border-top: 2.5px solid var(--accent);
  padding: 16px 18px;
}
.bento-lead__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}
.bento-card--lead .hero__lead {
  flex: 1;
  min-width: 0;
  max-width: none !important;
}
html #homeView .bento-card--lead #heroTitle {
  margin: 4px 0 0 !important;
  font-size: clamp(24px, 2.5vw, 34px) !important;
  line-height: 1.08 !important;
}
html #homeView .bento-card--lead .hero__sub-wrap {
  margin-top: 8px !important;
}
html #homeView .bento-card--lead .hero__sub {
  font-size: 13.5px !important;
  line-height: 1.48 !important;
  color: var(--text-soft);
  max-width: 68ch;
  margin: 0 !important;
}
html #homeView .bento-card--lead .hero__stats {
  display: inline-grid !important;
  grid-auto-flow: column;
  align-items: start !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 10px 16px !important;
  background: var(--panel-2) !important;
  border: 1px solid var(--rule-strong) !important;
  border-top: 1px solid var(--rule-strong) !important;
  border-radius: 10px !important;
  flex-shrink: 0;
}
html #homeView .bento-card--lead .hstat {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  text-align: left !important;
  padding: 0 14px !important;
  border: 0 !important;
  min-width: 84px;
}
html #homeView .bento-card--lead .hstat:first-child {
  padding-left: 0 !important;
}
html #homeView .bento-card--lead .hstat:nth-child(2) {
  padding-right: 0 !important;
  border-left: 1px solid var(--rule-strong) !important;
}
html #homeView .bento-card--lead .hstat[hidden] {
  display: none !important;
}
html #homeView .bento-card--lead .hstat__n {
  font-family: var(--font-mono) !important;
  font-variant-numeric: tabular-nums !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  color: var(--text) !important;
  margin: 0 !important;
}
html #homeView .bento-card--lead .hstat__l {
  font-family: var(--font-sans) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  color: var(--muted) !important;
  margin: 4px 0 0 !important;
}
html #homeView .bento-card--lead .intent-hub {
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--rule) !important;
}
html #homeView .bento-card--lead .intent-hub__head {
  display: none !important;
}
html #homeView .bento-card--lead .intent-hub__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px !important;
}
html #homeView .bento-card--lead .intent-card {
  padding: 11px 13px !important;
  border-radius: 9px !important;
  background: var(--panel-2);
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  gap: 6px !important;
}
html #homeView .bento-card--lead .intent-card__top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  order: 0 !important;
  margin-bottom: 2px !important;
}
html #homeView .bento-card--lead .intent-card__badge {
  display: inline-flex !important;
}
html #homeView .bento-card--lead .intent-card__desc {
  font-size: 11.5px !important;
  line-height: 1.38 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
html #homeView .bento-card--lead .intent-card__action {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: 4px !important;
  padding-top: 6px !important;
  border-top: 1px solid var(--rule) !important;
}
html #homeView .bento-card--lead .intent-card__action span {
  display: inline !important;
}

/* Right Bento Card: Market Pulse */
.bento-pulse__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--rule);
}
.bento-pulse__title-wrap {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.bento-pulse__dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--good);
  box-shadow: 0 0 0 3px var(--good-bg);
}
.bento-pulse__eyebrow {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--text);
}
.bento-pulse__tabs {
  display: inline-flex;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  border-radius: 999px;
  padding: 2px;
  gap: 2px;
}
.bento-pulse__tab {
  border: 0;
  background: transparent;
  color: var(--muted);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 999px;
  cursor: pointer;
  transition: background 0.14s ease, color 0.14s ease;
}
.bento-pulse__tab:hover {
  color: var(--text);
}
.bento-pulse__tab[aria-selected="true"] {
  background: var(--accent2);
  color: var(--on-accent);
}
.bento-pulse__body {
  flex: 1;
  padding: 6px 0;
  max-height: 225px;
  overflow-y: auto;
}
.bento-pulse__body .movers {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.bento-pulse__body .movers[hidden] {
  display: none !important;
}
.bento-pulse__body .movers li {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 6px 8px !important;
  border-radius: 7px;
  border-bottom: 1px solid var(--rule);
  transition: background 0.12s ease;
}
.bento-pulse__body .movers li::before {
  display: none !important;
}
.bento-pulse__body .movers li:last-child {
  border-bottom: 0;
}
.bento-pulse__body .movers li:hover {
  background: var(--hover);
}
.bento-pulse__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 8px;
  border-top: 1px solid var(--rule);
  font-size: 11.5px;
  font-weight: 700;
}
.bento-pulse__link {
  color: var(--accent2);
  text-decoration: none;
}
.bento-pulse__link:hover {
  text-decoration: underline;
}

@media (max-width: 980px) {
  .bento-hero__grid {
    grid-template-columns: 1fr;
  }
  .bento-card--lead .intent-hub__grid {
    grid-template-columns: 1fr;
  }
}

/* --- 3. 1-Line Collapsible Smart Filter Bar (#controls) --- */
@media (min-width: 681px) {
  #controls.controls {
    padding: 10px 14px !important;
    border-radius: 10px !important;
    background: var(--panel);
    border: 1px solid var(--rule-strong);
    box-shadow: var(--card-shadow);
    margin-bottom: 14px;
  }
  #controls .controls__head,
  #controls .controls__apply {
    display: none !important;
  }
  #controls .controls__foot {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 0 !important;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 12px;
  }
  #controls .controls__foot .field {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0;
  }
  #controls .controls__foot .field label {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--muted);
    margin: 0;
    white-space: nowrap;
  }
  #controls .controls__foot .sel {
    height: 32px;
    padding: 0 26px 0 9px;
    font-size: 12px;
    border-radius: 7px;
  }
  #controls .controls__foot .range-wrap {
    min-width: 115px;
  }
  #controls .controls__tray {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--rule);
  }
  #controls[data-tray-open="false"] .controls__tray {
    display: none !important;
  }
}

.btn-filter-tray {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--rule-strong);
  background: var(--panel-2);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.14s ease, border-color 0.14s ease, color 0.14s ease;
  margin-left: auto;
}
.btn-filter-tray:hover {
  background: var(--hover);
  border-color: var(--accent2);
}
.btn-filter-tray[aria-expanded="true"],
.btn-filter-tray.has-active {
  background: var(--accent2-tint);
  border-color: var(--accent2);
  color: var(--accent2);
}
.btn-filter-tray__ico {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.btn-filter-tray__chev {
  width: 13px;
  height: 13px;
  transition: transform 0.16s ease;
}
.btn-filter-tray[aria-expanded="true"] .btn-filter-tray__chev {
  transform: rotate(180deg);
}
.btn-filter-tray__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--accent2);
  color: var(--on-accent);
  font-family: var(--font-mono);
  font-size: 10.5px;
  font-weight: 700;
}
.btn-filter-tray__badge[hidden] {
  display: none !important;
}

@media (max-width: 680px) {
  .btn-filter-tray {
    display: none !important;
  }
}

/* Inline Active Filter Pills Bar */
.controls__active-pills {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px dashed var(--rule);
}
.controls__active-pills[hidden] {
  display: none !important;
}
.active-pills__lbl {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--muted);
  margin-right: 2px;
}
.active-filter-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid var(--accent2);
  background: var(--accent2-tint);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.12s ease;
}
.active-filter-pill:hover {
  background: var(--accent2);
  color: var(--on-accent);
}
.active-filter-pill__x {
  font-weight: 800;
  font-size: 13px;
  line-height: 1;
  opacity: 0.75;
}

/* Score status line tucked cleanly below controls */
.score-data-status {
  font-size: 11.5px;
  color: var(--muted);
  margin: 4px 0 8px;
}

/* --- 4. Full-Width 4-Column ETF Grid (.layout--full / #cardGrid) --- */
.layout.layout--full {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}
.layout.layout--full > .rail {
  display: none !important;
}
#cardGrid.grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
}
@media (max-width: 1200px) {
  #cardGrid.grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 880px) {
  #cardGrid.grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 560px) {
  #cardGrid.grid {
    grid-template-columns: 1fr !important;
  }
}

/* --- 5. Find My ETF (#/find) & Backtesting (#/backtest) Workbench Polish --- */
/* Find My ETF: Floating Elevated Command Card + Research Report Shortlist */
.find-layout {
  align-items: flex-start;
  gap: 20px !important;
}
.find-form {
  background: var(--panel) !important;
  border: 1px solid var(--rule-strong) !important;
  border-top: 3px solid var(--accent2) !important;
  border-radius: 12px !important;
  box-shadow: var(--card-shadow-hover) !important;
  padding: 20px !important;
  position: sticky;
  top: 78px;
}
.find-q {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--rule);
}
.find-q:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
}
.find-seg__btn {
  border-radius: 8px !important;
  border: 1px solid var(--rule-strong) !important;
  background: var(--panel-2) !important;
  color: var(--text) !important;
  transition: all 0.14s ease !important;
}
.find-seg__btn:hover {
  border-color: var(--accent2) !important;
  background: var(--hover) !important;
}
.find-seg__btn[aria-pressed="true"] {
  background: var(--accent2) !important;
  border-color: var(--accent2) !important;
  color: var(--on-accent) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}
.find-seg__btn[aria-pressed="true"] .find-seg__sub,
.find-seg__btn[aria-pressed="true"] small {
  color: var(--on-accent) !important;
  opacity: 0.86;
}
.find-results .find-panel,
.find-results .find-card,
.find-results .find-portfolio {
  border-radius: 12px !important;
  border: 1px solid var(--rule-strong) !important;
  box-shadow: var(--card-shadow) !important;
}

/* Backtesting: Unified Executive Tear-Sheet & Sticky Run Command Bar */
.backtest-config-section {
  border: 1px solid var(--rule-strong) !important;
  border-top: 3px solid var(--accent2) !important;
  border-radius: 12px !important;
  background: var(--panel) !important;
  box-shadow: var(--card-shadow) !important;
}
.backtest-submit-row {
  position: sticky;
  bottom: 12px;
  z-index: 15;
  background: color-mix(in srgb, var(--panel) 92%, transparent);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 12px 16px !important;
  border-radius: 10px;
  border: 1px solid var(--rule-strong);
  box-shadow: 0 8px 24px -6px rgba(0, 0, 0, 0.18);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 16px;
}
.btn-run-backtest {
  background: var(--accent2) !important;
  border-color: var(--accent2) !important;
  color: var(--on-accent) !important;
  font-weight: 700 !important;
  padding: 10px 20px !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.16);
}
.btn-run-backtest:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
}
.backtest-kpi-grid > *,
.backtest-summary-card,
.backtest-metric-card {
  border-top: 2px solid var(--text) !important;
  border-radius: 10px !important;
  background: var(--panel) !important;
  box-shadow: var(--card-shadow) !important;
}
.backtest-kpi-val,
.backtest-kpi-card .v,
.backtest-kpi-card strong {
  font-family: var(--font-mono) !important;
  font-variant-numeric: tabular-nums !important;
  letter-spacing: -0.03em !important;
}

/* --- 6. Fund Page (#/fund/...) & Drawer Tear-Sheet + Connected Workflow Bridges --- */
.fund-tearsheet {
  background: var(--panel);
  border: 1px solid var(--rule-strong);
  border-top: 3px solid var(--accent2);
  border-radius: 12px;
  padding: 16px 20px;
  margin-bottom: 18px;
  box-shadow: var(--card-shadow);
}
.fund-tearsheet__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
}
.fund-tearsheet__kpis {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 26px;
}
.fund-ts-kpi {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding-right: 22px;
  border-right: 1px solid var(--rule);
}
.fund-ts-kpi:last-child {
  border-right: 0;
  padding-right: 0;
}
.fund-ts-kpi__lbl {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.07em;
  color: var(--muted);
}
.fund-ts-kpi__row {
  display: inline-flex;
  align-items: baseline;
  gap: 7px;
}
.fund-ts-kpi__val {
  font-family: var(--font-mono);
  font-size: 21px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--text);
  font-variant-numeric: tabular-nums;
}
.fund-ts-kpi--ticker .fund-ts-kpi__val {
  font-size: 22px;
  letter-spacing: -0.02em;
}
.fund-ts-kpi--yield .fund-ts-kpi__val {
  color: var(--accent);
  font-size: 23px;
}
.fund-ts-kpi__val.pos {
  color: var(--good);
}
.fund-ts-kpi__val.neg {
  color: var(--bad);
}
.fund-ts-kpi--score .fund-ts-kpi__val[data-tier="high"] {
  color: var(--good);
}
.fund-ts-kpi__rank {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 999px;
  background: var(--panel-2);
  border: 1px solid var(--rule-strong);
  color: var(--text-soft);
}
.fund-tearsheet__actions,
.drawer-workflow-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.fund-bridge-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--rule-strong);
  background: var(--panel-2);
  color: var(--text);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.14s ease, border-color 0.14s ease, transform 0.12s ease;
  white-space: nowrap;
}
.fund-bridge-btn:hover {
  background: var(--hover);
  border-color: var(--accent2);
  transform: translateY(-1px);
}
.fund-bridge-btn--primary {
  background: var(--accent2);
  border-color: var(--accent2);
  color: var(--on-accent);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.14);
}
.fund-bridge-btn--primary:hover {
  background: var(--accent2);
  filter: brightness(1.08);
  color: var(--on-accent);
}
.fund-bridge-btn--ghost {
  background: transparent;
  border-color: var(--rule);
  color: var(--text-soft);
}
.fund-bridge-btn--ghost:hover {
  color: var(--text);
  background: var(--panel-2);
}

@media (max-width: 780px) {
  .fund-ts-kpi {
    padding-right: 14px;
  }
  .fund-ts-kpi__val {
    font-size: 18px;
  }
}

/* Research hierarchy: shared shell, progressive detail and explicit next steps. */
html[data-mp-preset] .page-head h1,
html[data-mp-preset] .provhero h1,
html #homeView .bento-card--lead #heroTitle {
  font-family: var(--font-head) !important;
  font-size: calc(var(--fs-4xl) * var(--fs, 1)) !important;
  font-weight: var(--head-w) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}
.page-head { padding-top: 34px; padding-bottom: 24px; }
.page-sub { max-width: 80ch; line-height: 1.6; }
.topbar__in { gap: 16px; }
.topnav.topnav--dock {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: var(--radius-sm) !important;
}
.topnav.topnav--dock .topnav__link {
  font-family: var(--font-body);
  font-size: calc(var(--fs-base) * var(--fs, 1)) !important;
  border-radius: var(--radius-sm) !important;
  min-height: 42px;
}
.topnav.topnav--dock .topnav__link[aria-current="page"] {
  background: var(--accent-tint) !important;
  color: var(--accent) !important;
  box-shadow: none;
}
.topbar .search { flex: 1 1 180px; min-width: 160px; max-width: 300px; }
.topbar .search input { min-width: 0; width: 100%; }
.nav-dd__menu > button {
  display: block; width: 100%; padding: 10px 14px; border: 0;
  text-align: left; background: transparent; color: var(--text);
  font: inherit; cursor: pointer;
}
.nav-dd__menu > button:hover { background: var(--hover); }
.brand__sub { letter-spacing: 0 !important; font-size: calc(var(--fs-micro) * var(--fs, 1)) !important; }
.bento-hero__grid { display: block; }
.bento-card--lead {
  padding: 16px 0 24px; border: 0; border-radius: 0;
  background: transparent; box-shadow: none; overflow: visible;
}
.bento-lead__top { flex-wrap: wrap; align-items: center; gap: 24px; }
.bento-card--lead .hero__lead { flex: 1 1 400px; }
html #homeView .bento-card--lead #heroTitle { max-width: 26ch; }
html #homeView .bento-card--lead .hero__sub {
  font-size: calc(var(--fs-md) * var(--fs, 1)) !important;
  line-height: 1.6 !important;
}
html #homeView .bento-card--lead .hero__stats {
  padding: 0 !important; background: transparent !important; border: 0 !important;
}
html #homeView .bento-card--lead .hstat__n { font-size: calc(var(--fs-xl) * var(--fs, 1)) !important; letter-spacing: 0 !important; }
html #homeView .bento-card--lead .hstat__l { font-family: var(--font-label) !important; font-size: calc(var(--fs-xs) * var(--fs, 1)) !important; letter-spacing: 0 !important; }
.research-start { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; align-items: center; }
.research-start p { flex-basis: 100%; margin: 0; font-size: calc(var(--fs-base) * var(--fs, 1)); line-height: 1.6; color: var(--text-soft); }
.research-start p span { padding: 0 8px; }
.btn-ext.research-primary { background: var(--accent); color: var(--on-accent); border-color: var(--accent); }
.research-start .research-disclosure { color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.market-context { padding: 12px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.market-context summary { cursor: pointer; font-size: calc(var(--fs-base) * var(--fs, 1)); color: var(--text); }
.market-context summary span { color: var(--muted); margin-left: 12px; }
.market-context .bento-card--pulse { border: 0; border-radius: 0; background: transparent; padding: 16px 0 0; box-shadow: none; }
.market-context .bento-pulse__body { max-height: none; }
#controls {
  position: relative !important; inset: auto !important; width: auto !important;
  height: auto !important; max-height: none !important; transform: none !important;
  padding: 16px !important; margin: 18px 0 12px; border: 1px solid var(--rule);
  border-radius: var(--radius-sm); box-shadow: none !important; overflow: visible;
  animation: none !important; transition: none !important; z-index: 3;
}
#controls::after, #controls .controls__head, #controls .controls__apply { display: none !important; }
#controls .controls__foot { display: flex !important; flex-wrap: wrap; gap: 12px; padding: 0; margin: 0; border: 0; }
#controls .controls__foot .field { flex: 1 1 220px; }
#controls .controls__foot .sel { width: 100%; }
#controls .btn-filter-tray { display: inline-flex !important; min-height: 42px; margin: 0; border-radius: var(--radius-sm); font-family: var(--font-body); font-size: calc(var(--fs-base) * var(--fs, 1)); }
#controls[data-tray-open="false"] #controlsTray { display: none !important; }
#controls[data-tray-open="true"] #controlsTray { display: flex !important; flex-wrap: wrap; gap: 24px; padding-top: 18px; margin-top: 18px; border-top: 1px solid var(--rule); }
#controlsTray > .field { flex: 1 1 220px; min-width: 0; }
#controlsTray > .fgroup { flex: 1 1 100%; min-width: 0; pointer-events: auto !important; }
#controlsTray .chips { flex-wrap: wrap; }
#controls .category-strip { flex-basis: 100%; margin: 0; }
.category-strip__title-group { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.score-data-status { margin-top: 12px; font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.research-evidence { margin: 0; color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.5; }
.research-evidence span { display: block; }
#researchOrderNote { margin-bottom: 18px; }
#cardGrid.grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 18px !important; }
.card, .provider-card { border-color: var(--rule); box-shadow: none; }
.card .card__bar, .provider-card__accent { display: none; }
.card .card__content { pointer-events: auto; gap: 16px; }
.card .card__name { display: block; height: auto; min-height: 0; overflow: visible; -webkit-line-clamp: unset; white-space: normal; font-size: calc(var(--fs-base) * var(--fs, 1)); line-height: 1.5; color: var(--text); }
.card .card-score-secondary { order: 6; }
.card .card-score-badge { background: transparent; border: 0; padding: 0; color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); }
.research-metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 16px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.research-metrics dt { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); line-height: 1.4; min-height: 3em; }
.research-metrics dt small { font-size: inherit; }
.research-metrics dd { margin: 8px 0 0; font-family: var(--font-num); font-size: calc(var(--fs-lg) * var(--fs, 1)); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.card .research-metrics .card-return-value { font-size: inherit; }
.card-research-details summary, .find-match summary, .investor-identity-details summary { padding: 8px 0; color: var(--text-soft); font-size: calc(var(--fs-base) * var(--fs, 1)); cursor: pointer; }
.card-research-details .metrics { margin: 12px 0; }
.card-research-link { margin-top: auto; align-self: flex-start; }
.card .tags { gap: 8px; }
.card .tag { font-size: calc(var(--fs-xs) * var(--fs, 1)); }
.pc-name { font-family: var(--font-body); font-size: calc(var(--fs-base) * var(--fs, 1)); font-weight: 600; }
.pc-tag, .pc-top3 .n { font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.5; }
.pc-top3 .n { white-space: normal; overflow: visible; }
.find-layout { display: flex; flex-direction: column; gap: 34px !important; }
.find-form {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 34px; width: 100%;
  position: static; padding: 0 0 24px !important; border: 0 !important;
  border-bottom: 1px solid var(--rule) !important; border-radius: 0 !important;
  background: transparent !important; box-shadow: none !important;
}
.find-actions { grid-column: 1 / -1; }
.find-results { width: 100%; min-width: 0; }
.find-prompt { padding: 18px 0; border: 0; text-align: left; align-items: flex-start; }
.find-q__label, .find-toggle__txt strong { font-size: calc(var(--fs-base) * var(--fs, 1)); }
.find-q__help, .find-toggle__txt small, .find-card__reason, .find-rank-note { font-size: calc(var(--fs-base) * var(--fs, 1)); line-height: 1.6; }
.find-seg__btn { border-radius: var(--radius-sm) !important; }
.find-seg__btn[aria-pressed="true"] { box-shadow: none !important; }
.find-results .find-card { border-radius: var(--radius-sm) !important; box-shadow: none !important; }
.find-card__score { background: transparent; border: 0; }
.find-card__score-n { color: var(--text-soft); font-size: calc(var(--fs-lg) * var(--fs, 1)); }
.find-card__foot { flex-wrap: wrap; gap: 12px; }
.find-selection { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 16px 0; border-block: 1px solid var(--rule); }
.find-selection p, .find-selection small { flex-basis: 100%; margin: 0; overflow-wrap: anywhere; font-size: calc(var(--fs-base) * var(--fs, 1)); line-height: 1.5; }
.find-selection small { color: var(--muted); }
.find-select[aria-pressed="true"] { color: var(--accent); border-color: var(--accent); background: var(--accent-tint); }
.research-compare-empty { min-height: 240px; display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 34px 24px; }
.research-compare-empty h2 { font-family: var(--font-head); font-size: calc(var(--fs-xl) * var(--fs, 1)); margin: 0; }
.research-compare-empty p { max-width: 60ch; margin: 0; line-height: 1.6; font-size: calc(var(--fs-base) * var(--fs, 1)); }
.compare-is-empty .cmp__hint { display: none; }
.research-compare-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 16px 0; }
.research-compare-actions [aria-disabled="true"] { color: var(--muted); cursor: default; }
.fund-ts-kpi--score .fund-ts-kpi__val[data-tier="high"] { color: var(--text); }
.investor-overview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; padding: 24px 0; border-block: 1px solid var(--rule); margin: 18px 0; }
.investor-overview dt { font-size: calc(var(--fs-sm) * var(--fs, 1)); color: var(--text-soft); }
.investor-overview dd { margin: 8px 0; font-family: var(--font-num); font-size: calc(var(--fs-lg) * var(--fs, 1)); }
.investor-overview small { color: var(--muted); font-size: calc(var(--fs-sm) * var(--fs, 1)); line-height: 1.5; }
.research-section-links { display: flex; flex-wrap: wrap; gap: 16px; margin: 18px 0; font-size: calc(var(--fs-base) * var(--fs, 1)); }
.investor-section h2, #controls, .find-results { scroll-margin-top: 180px; }
.backtest-config-section, .fund-tearsheet { border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }
.backtest-submit-row { border-radius: var(--radius-sm); box-shadow: none; }
.mp-studio:has(.mp-studio__panel[hidden]) { display: none; }
.mp-studio__panel { max-height: calc(100dvh - 48px); overflow-y: auto; }
@media (max-width: 1120px) {
  #cardGrid.grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .topbar__in { display: grid; grid-template-columns: 1fr auto; gap: 12px; }
  .topbar .brand { grid-column: 1; grid-row: 1; }
  .topbar__actions { grid-column: 2; grid-row: 1; }
  .topbar .search { grid-column: 1 / -1; grid-row: 2; max-width: none; width: 100%; }
  .topnav.topnav--dock { grid-column: 1 / -1; grid-row: 3; margin: 0; justify-content: flex-start; width: 100%; }
  .investor-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .topbar__in { padding: 12px 16px; gap: 8px; }
  .topbar .brand { min-width: 0; gap: 8px; }
  .topbar .brand__txt, .topbar .brand__name { display: block !important; }
  .topbar .brand__name { white-space: normal; font-size: calc(var(--fs-sm) * var(--fs, 1)); letter-spacing: 0; }
  .topbar .brand__sub, .topbar .brand__mark, .topbar__actions #adminTopBtn { display: none !important; }
  .topbar__actions { gap: 8px; }
  .market-toggle--text button { padding: 8px; min-height: 36px; }
  .topnav.topnav--dock .topnav__link { padding: 8px !important; font-size: calc(var(--fs-sm) * var(--fs, 1)) !important; }
  .topnav.topnav--dock [data-nav="backtest"], .topnav.topnav--dock [data-nav="investor"] { display: none !important; }
  .topnav.topnav--dock .nav-dd { margin-left: auto; }
  .topbar .search { min-width: 0; }
  .bento-lead__top { flex-direction: column; align-items: flex-start; gap: 18px; }
  .bento-card--lead .hero__lead { flex: none; width: 100%; }
  html[data-mp-preset] .page-head h1,
  html[data-mp-preset] .provhero h1,
  html #homeView .bento-card--lead #heroTitle { max-width: none; font-size: calc(var(--fs-3xl) * var(--fs, 1)) !important; }
  html #homeView .bento-card--lead .hero__stats { width: auto; }
  .research-start > .btn-ext { width: 100%; justify-content: center; }
  .research-start p span { padding: 0 4px; }
  .market-context summary span { display: block; margin: 8px 0 0; }
  #controls .controls__foot .field { flex-basis: 100%; }
  #controls .btn-reset { margin-left: auto; }
  #controls .view-toggle { margin-left: 0; }
  #controls .controls__tray .chip { min-height: 36px; }
  #cardGrid.grid { grid-template-columns: minmax(0, 1fr) !important; }
  .research-metrics { gap: 8px; }
  .research-metrics dd { font-size: calc(var(--fs-md) * var(--fs, 1)); }
  .find-form { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .find-grid { grid-template-columns: minmax(0, 1fr); }
  .investor-overview { gap: 18px 12px; }
  .research-compare-empty { padding: 24px 16px; }
  .mp-studio { left: 16px; right: 16px; bottom: 16px; }
  .mp-studio__panel { width: 100%; }
}
