/* Research boards: legible context and tables on small screens. */
.board-freshness{display:flex;flex-wrap:wrap;gap:5px 16px;margin:14px 0 22px;font-size:.78rem;color:var(--mute);line-height:1.5}
.scan-label{font-weight:600;color:var(--ink2)}
.research-lanes .now-big{font-size:1.6rem}.research-lanes p:not(.kicker){font-size:.9rem}.research-lanes small{font-size:.8rem;color:var(--blue);margin-top:12px}
.research-next{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;border:1px solid var(--rule);border-left:3px solid var(--blue);background:var(--paper2);padding:16px 20px;margin:20px 0 30px}
.research-next p{margin:0;max-width:66ch;font-size:.9rem;color:var(--ink2)}.research-next a{font-size:.9rem;font-weight:500}
.mini-board .research-rows>.research-row{gap:7px 9px;padding:13px 0;align-items:baseline}
.row-identity{display:flex;align-items:baseline;gap:8px;flex:1;min-width:0}.mini-board .row-identity b{min-width:0;font-size:.87rem}
.mini-board .row-identity .nm{max-width:none;min-width:0;white-space:normal;line-height:1.3}
.row-change{font-size:.8rem;white-space:nowrap;margin-left:auto}
.mini-board .research-row>.fit-chip{max-width:100%;white-space:normal;line-height:1.4;font-size:.65rem}
.research-rows .row-why{margin:0;font-size:.85rem;line-height:1.45}
.mini-board .how{border-top:1px solid var(--rule2);padding-top:10px}.mini-board .how ol>li{display:list-item;border:0;font-family:var(--sans);font-size:.85rem;margin:7px 0;padding:0;line-height:1.5}
.board-access{border-top:1px solid var(--rule2);padding-top:12px;margin-top:5px}
.board-empty{font-size:.9rem;line-height:1.6;color:var(--mute);background:var(--paper2);padding:15px;margin:12px 0;border-radius:5px}
.table-hint{font-size:.78rem;color:var(--mute);margin:10px 0 0}.table-hint span{display:none}
.board-scroll{max-width:100%;border:1px solid var(--rule2);border-radius:5px;background:#FFFDF7}
.board-scroll:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
table.research-table{margin:0;font-size:.86rem}table.research-table thead{background:var(--paper2)}
table.research-table th{vertical-align:middle;line-height:1.5;letter-spacing:.06em;font-size:.62rem;padding:10px}
table.research-table td{padding:12px 10px}table.research-table td.n{font-size:.8rem;white-space:nowrap}
table.research-table tbody th{font-family:var(--mono);font-size:.82rem;color:var(--ink);font-weight:600;letter-spacing:0;border-bottom:1px solid var(--rule2);text-transform:none}
table.research-table .name{min-width:105px;max-width:145px;font-size:.83rem;line-height:1.4;color:var(--mute)}
table.research-table .fit-chip{white-space:normal;min-width:96px;line-height:1.4}
.table-reason{min-width:190px;max-width:350px;line-height:1.5;color:var(--ink2)}.table-reason small{display:block;color:var(--mute);margin-top:4px}
table.screen-table{min-width:780px}table.reference-table{min-width:690px}table.dd{min-width:1030px}
.band-key{line-height:2.2}.dd-wrap .fine{max-width:110ch}.board-glossary{margin:20px 0 28px!important;padding:14px 18px;border:1px solid var(--rule);border-radius:5px}
.board-sec{margin-top:30px}.board-sec>.sec-head{margin-bottom:12px}.board-sec>.verdict{display:inline-block;max-width:100%}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.table-hint span{display:inline}.board-freshness{display:grid;gap:4px;margin-top:12px}.mood-box{align-items:flex-start}.setups-head h1{max-width:18ch}.research-lanes{gap:10px}.research-lanes .now-tile{padding:16px 18px}.research-next{padding:15px 16px;gap:10px}.research-next a{display:inline-block;padding:5px 0}.board-scroll table.research-table th:first-child{position:sticky;left:0;z-index:1;background:#FFFDF7;box-shadow:1px 0 var(--rule)}.board-scroll table.research-table thead th:first-child{background:var(--paper2);z-index:2}.board-scroll table.research-table tbody th:first-child{min-width:72px}.mini-board{padding:14px 15px}.mini-board .row-identity .nm{max-width:20ch}.mini-board .row-why{font-size:.86rem}.board-sec{margin-top:26px}table.screen-table{min-width:660px}table.dd{min-width:940px}.band-key .band{display:inline-block}.sector-strip{display:grid;grid-template-columns:1fr 1fr}.sec-tile{min-width:0}}

.lane-reference{margin-top:24px}
/* A single action color system. Price history and checklist scores stay blue. */
:root{--signal-buy:#B8FF3C;--signal-wait:#FFF35B;--signal-skip:#FFAAA7;--chart-blue:#365DB4}
.decision-guide{padding:22px 24px;background:#1E2A44;color:#FFFDF7;border-radius:12px;margin:0 0 28px;box-shadow:0 8px 25px #1E2A440C}
.decision-guide-head{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:17px}.decision-guide-head .kicker{color:#C5D2ED;margin-bottom:5px;font-size:.63rem}.decision-guide-head h3{font-size:1.6rem;margin:0}.decision-guide-head>p{font-size:.84rem;max-width:40ch;color:#E1E7F1;margin:0}.decision-guide-head strong{color:var(--signal-buy);font-weight:600}
.decision-key{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.decision-key>div{border:1px solid #FFFFFF2B;background:#FFFFFF08;border-radius:8px;padding:14px}.decision-key p{margin:10px 0 0;line-height:1.45;font-size:.85rem;color:#F1F3F7}.decision-key .key-buy{border-top:3px solid var(--signal-buy)}.decision-key .key-wait{border-top:3px solid var(--signal-wait)}.decision-key .key-skip{border-top:3px solid var(--signal-skip)}
.decision-badge{display:inline-flex;align-items:center;gap:6px;border-radius:6px;padding:5px 10px;font-family:var(--sans);font-size:.79rem;font-weight:600;line-height:1.3;color:#202414;white-space:nowrap;letter-spacing:0}.decision-badge>span{font-family:var(--mono);font-size:1rem;font-weight:600;line-height:1}.decision-badge.buy{background:var(--signal-buy);color:#23320F}.decision-badge.wait{background:var(--signal-wait);color:#403A08}.decision-badge.skip{background:var(--signal-skip);color:#592521}
.decision-scope{font-size:.75rem;color:#CCD7EB;margin:15px 0 0}.number-key{margin-top:12px;padding-top:10px;border-top:1px solid #FFFFFF26}.number-key summary{cursor:pointer;font-size:.79rem;color:#F3F5FC}.number-key>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px}.number-key p{font-size:.8rem;color:#D8E2F2;line-height:1.55}.number-key b{display:block;color:#FFFFFF}
.mini-board.board-watch{border-top:4px solid var(--signal-wait)}.mini-board.board-skip{border-top:4px solid var(--signal-skip)}.mini-board>.kicker{font-size:.69rem;letter-spacing:.1em;color:var(--ink2)}
.mini-board .verdict,.board-sec>.verdict,.dd-wrap>.verdict{background:#E8EDF6;color:#344C72;border:1px solid #D4DDEB;font-weight:500}.mini-board.board-skip .verdict{background:#FFF0ED;color:#743B32;border-color:#F1CFC8}
.mini-board .research-rows>.decision-row{display:flex;align-items:stretch;gap:10px;padding:18px 0 16px;border-top:1px solid var(--rule2);font-family:var(--sans)}
.decision-row .row-identity{flex-basis:100%;align-items:baseline;gap:8px}.mini-board .decision-row .row-identity b{font-size:1.02rem;font-family:var(--mono);font-weight:600}.mini-board .decision-row .row-identity .nm{font-size:.82rem;max-width:none;line-height:1.35;overflow:visible;text-overflow:clip;white-space:normal}
.row-action{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.row-action .row-change{font-size:.84rem;font-weight:500;color:#344C72;font-family:var(--mono);margin-left:0}.row-change small{font-size:.65rem;color:var(--mute);font-family:var(--sans);font-weight:400}
.row-guidance{width:100%;font-family:var(--sans)}.decision-why,.decision-next{font-size:.83rem;line-height:1.5;color:var(--ink2);margin:0}.decision-next{margin-top:7px;color:#3E4962}.decision-why b,.decision-next b{font-size:.69rem;text-transform:uppercase;letter-spacing:.07em;display:block;min-width:0!important;margin-bottom:2px;color:#6C6458}.decision-next b{color:#46608A}
.row-chart{display:flex;align-items:center;gap:12px;width:100%;margin:2px 0 0;padding:9px 11px;border-radius:6px;background:#F1F4FA;border:1px solid #E0E6EF}.row-chart svg{display:block;width:58%;height:46px;overflow:visible}.row-chart figcaption{flex:1;font-size:.64rem;color:#536883;line-height:1.5;max-width:14ch}.chart-line{fill:none;stroke:var(--chart-blue);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.chart-baseline{fill:none;stroke:#D6DFEC;stroke-width:1}
.row-numbers{width:100%;font-family:var(--sans);font-size:.78rem;color:var(--mute);margin:0}.row-numbers summary{font-size:.72rem;cursor:pointer;color:#54637C;padding:3px 0}.row-numbers p{font-size:.79rem;line-height:1.5;margin:7px 0}.row-numbers .score-note{font-size:.7rem}.row-numbers .cap-chip{font-size:.6rem;margin-left:4px}.fit-chip.neutral,table.research-table .fit-chip{background:#EAF0F8;border-color:#CFDAEB;color:#40567A}.row-numbers .fit-chip{font-size:.6rem;white-space:normal}
.table-decision{min-width:160px;max-width:260px;vertical-align:top!important}.table-decision>details{font-family:var(--sans);margin-top:5px}.table-decision summary{cursor:pointer;font-size:.71rem;color:#526586}.table-decision .decision-why,.table-decision .decision-next{font-size:.78rem;min-width:200px;white-space:normal;text-align:left;padding-top:5px}.table-decision .decision-next{margin-top:2px}table.research-table .decision-badge{font-size:.74rem}table.screen-table{min-width:960px}table.reference-table{min-width:850px}table.dd{min-width:1200px}
table.dd td.band.deep,.band-key .band.deep{background:#BBD0F1;color:#233D69}table.dd td.band.mid,.band-key .band.mid{background:#D8E4F7;color:#304D78}table.dd td.band.shallow,.band-key .band.shallow{background:#EFF3FA;color:#4C6080}table.dd td.band.near,.band-key .band.near{background:#D1DFF3;color:#304D78}.band-key .band{margin-left:0;display:inline-block}.dd-wrap .beta.normal,table.dd td.beta.normal{color:#496084}
summary:focus-visible{outline:2px solid #547ACE;outline-offset:4px;border-radius:2px}
@media(max-width:760px){.decision-guide{padding:18px 16px;border-radius:9px;margin-bottom:22px}.decision-guide-head{display:block}.decision-guide-head h3{font-size:1.5rem}.decision-guide-head>p{margin-top:9px;max-width:none}.decision-key{grid-template-columns:1fr;gap:8px}.decision-key>div{display:grid;grid-template-columns:124px 1fr;align-items:center;gap:10px;padding:11px 12px}.decision-key .decision-badge{justify-self:start;font-size:.75rem}.decision-key p{margin:0;font-size:.79rem}.number-key>div{grid-template-columns:1fr;gap:2px}.number-key b{display:inline}.number-key p{margin:5px 0}.mini-board .research-rows>.decision-row{padding:17px 0}.row-chart svg{max-width:210px}.row-chart figcaption{max-width:none}.decision-why,.decision-next{font-size:.86rem}.table-decision{min-width:150px}table.screen-table{min-width:900px}table.dd{min-width:1180px}}
@media(prefers-reduced-motion:reduce){.row-chart *{animation:none;transition:none}}

.more-candidates{margin:12px 0}.more-candidates>summary{cursor:pointer;padding:10px 12px;background:#E8EDF6;border-radius:6px;color:#344C72;font-size:.8rem;font-weight:500}.more-candidates[open]>summary{margin-bottom:10px}
/* Automatic readiness and a searchable whole-universe view. */
.row-setup{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 10px;background:#EEF2F9;border-radius:5px;color:#344C72;font-size:.75rem;line-height:1.4}.row-setup>span{max-width:24ch}.rule-score{font-family:var(--mono);font-size:.8rem;white-space:nowrap;min-width:0!important;text-align:right}.rule-score small{display:block;font:400 .6rem var(--sans);color:#62718A}.readiness-note{margin:10px 0 0;font-size:.72rem;line-height:1.5;color:#6D6659;border-left:2px solid #CEC4AF;padding-left:9px}.decision-row.buy .readiness-note{border-color:#87C81C}.row-checks{width:100%;margin:0;font-family:var(--sans)}.row-checks>summary{padding:9px 10px;border-radius:5px;background:#E8EDF6;color:#344C72;font-size:.73rem;cursor:pointer}.setup-checks{display:grid;gap:8px;margin:12px 0}.setup-check{display:flex;align-items:flex-start;gap:8px;padding-bottom:8px;border-bottom:1px solid #E3E7EF}.setup-check>span{width:19px;flex:none;border-radius:50%;text-align:center;background:#E4EBF6;color:#355C99;font-size:.78rem;font-weight:600}.setup-check.unknown>span{background:#EDEBE7;color:#786F62}.setup-check p{margin:0;font-size:.75rem;line-height:1.5;color:#666053}.setup-check b{display:block;min-width:0!important;font-size:.75rem;color:#344C72;margin-bottom:2px}.detail-heading{font-size:.77rem!important;color:#344C72!important;font-weight:600;margin:15px 0 8px!important}.score-parts>div{display:grid;grid-template-columns:1fr auto;gap:3px 10px;margin:10px 0;font-size:.72rem;color:#405879}.score-parts b{min-width:0!important;font-family:var(--mono);font-size:.68rem}.score-parts meter{grid-column:1/-1;width:100%;height:8px;accent-color:#4465A9}.score-parts meter::-webkit-meter-optimum-value{background:#4465A9}.score-parts meter::-moz-meter-bar{background:#4465A9}.score-parts small{grid-column:1/-1;color:#716B61;font-size:.68rem;line-height:1.5}.pattern-evidence p{padding:9px;background:#F0F3F9;border-radius:5px;font-size:.72rem;line-height:1.5;color:#586782}.pattern-evidence b{display:block;min-width:0!important;font-size:.72rem;color:#344C72;margin-bottom:4px}.pattern-evidence small{display:block;font-size:.68rem;margin-top:4px}.strategy-catalog{margin-top:14px;border-top:1px solid #D8DFEB;padding-top:10px}.strategy-catalog summary{font-size:.74rem;color:#344C72;cursor:pointer}.strategy-check{padding:8px 0;border-top:1px solid #E5E8EE}.strategy-check p{display:flex;gap:8px;align-items:flex-start;justify-content:space-between;margin:0 0 4px;font-size:.71rem}.strategy-check b{min-width:0!important;font-size:.72rem}.strategy-check span{white-space:nowrap;color:#536786}.strategy-check small{font-size:.7rem;line-height:1.5;color:#706A60}.model-version{font-size:.65rem;color:#B2C2DF;margin-top:12px}.table-setup{font-size:.73rem;color:#344C72;font-weight:600;margin:9px 0 4px}.table-decision .row-checks{min-width:235px;margin-top:10px}.table-decision .row-checks p{white-space:normal}
.stockfinder-head{align-items:center}.stockfinder-head .lede{max-width:64ch}.stock-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.stock-lanes a{border:1px solid var(--rule);background:#FFFDF7;padding:13px 16px;border-radius:6px;color:#3A4660;font-weight:500}.stock-lanes a small{display:block;font-size:.72rem;font-weight:400;color:var(--mute);margin-top:4px}.stock-lanes a.on{background:#1E2A44;color:#FFFDF7;border-color:#1E2A44}.stock-lanes a.on small{color:#C5D2ED}.stock-lanes a:hover{text-decoration:none;border-color:#5271A3}.finder-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;flex-wrap:wrap;margin:25px 0 15px}.finder-heading h2{margin-bottom:0}.finder-heading .kicker{margin-bottom:6px}.finder-heading>p{max-width:40ch;font-size:.84rem;color:var(--mute)}.stock-states{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.stock-states a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;border:2px solid transparent;border-radius:7px;background:#E2E8F1;color:#263C5D;font-size:.9rem}.stock-states b{font:600 1.3rem var(--mono)}.stock-states a.buy{background:var(--signal-buy);color:#23320F}.stock-states a.wait{background:var(--signal-wait);color:#403A08}.stock-states a.skip{background:var(--signal-skip);color:#592521}.stock-states a.on{border-color:#243754;box-shadow:0 3px 0 #243754}.stock-states a:hover{text-decoration:none;transform:translateY(-1px)}.stock-search{display:flex;gap:12px;align-items:flex-end;padding:18px 0 15px;flex-wrap:wrap}.stock-search>div{flex:1;min-width:200px}.stock-search label{display:block;font-size:.79rem;color:#536078;margin-bottom:6px}.stock-search input[type=search]{width:100%;border:1px solid var(--rule);background:#FFFDF7;border-radius:5px;padding:12px 14px;font:1rem var(--sans);color:var(--ink);min-height:47px}.stock-search input:focus{outline:2px solid #547ACE;outline-offset:2px}.stock-search>a{font-size:.84rem;padding:13px 2px}.finder-result-line{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:.79rem;color:var(--mute);margin-bottom:15px}.stock-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.stock-card.status-buy{border-top:4px solid var(--signal-buy)}.stock-card.status-wait{border-top:4px solid var(--signal-wait)}.stock-card.status-skip{border-top:4px solid var(--signal-skip)}.stock-card .research-rows>.decision-row{border-top:0;padding-top:3px;padding-bottom:1px}.stock-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.82rem;color:#54637C;margin:24px 0 35px}.stock-pagination>span:first-child{flex:1}.mast .brand{flex-shrink:0}nav.menu{min-width:0;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}nav.menu a{flex-shrink:0}
@media(max-width:1120px){.mast .mkt{display:none}nav.menu{gap:16px}}
@media(max-width:900px){.stock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-states a{padding:11px;font-size:.79rem}.stock-states b{font-size:1.05rem}}
@media(max-width:600px){.stock-grid{grid-template-columns:1fr}.stock-lanes{gap:7px}.stock-lanes a{padding:11px 9px;font-size:.81rem}.stock-lanes a small{font-size:.65rem}.stock-states{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stock-states a{padding:12px;font-size:.85rem}.stock-states b{font-size:1.2rem}.stock-search>div{min-width:100%;}.stock-search .btn{flex:1}.stock-pagination .btn{font-size:.65rem;padding:9px 12px}.finder-heading{margin-top:20px}.stockfinder-head>.btn{font-size:.7rem;padding:11px 15px}.row-setup{font-size:.78rem}}
.mini-board.board-mixed{border-top:4px solid #8095BB}.list-decisions{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.list-decisions span{padding:3px 7px;border-radius:4px;font-size:.67rem;font-weight:500;line-height:1.5}.list-decisions .buy{background:var(--signal-buy);color:#23320F}.list-decisions .wait{background:var(--signal-wait);color:#403A08}.list-decisions .skip{background:var(--signal-skip);color:#592521}
/* Keep the observed price and its timestamp next to the action label. */
.row-action{flex-wrap:wrap;row-gap:8px}.row-quote{margin-left:auto;text-align:right;max-width:100%;min-width:112px}.row-quote>b{display:block;min-width:0!important;font-family:var(--mono);font-size:1.15rem;line-height:1.3;font-weight:600;color:#273A58;overflow-wrap:anywhere}.row-quote .row-change{display:block;margin-top:3px;font-size:.75rem;line-height:1.3}.row-quote .price-unavailable{font-family:var(--sans);font-size:.78rem;font-weight:500;color:#756D60}.row-asof{width:100%;margin:-3px 0 0;font-family:var(--sans);font-size:.66rem;line-height:1.5;color:#756D60;overflow-wrap:anywhere}.row-asof time{color:#63718A}.catalog-session{padding:7px 9px;background:#EBF0F8;border-radius:4px;color:#405879;font-size:.7rem!important;line-height:1.5}
@media(max-width:400px){.row-quote>b{font-size:1.05rem}.row-quote{min-width:104px}.row-action{gap:8px}.row-asof{font-size:.64rem}}
/* Distinct confirmation types, without turning the strategy catalog into votes. */
.confirmation-strip{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;width:100%;margin:-2px 0 0;font-size:.71rem;line-height:1.4;color:#4B6288}.confirmation-strip>span{font-family:var(--mono);font-weight:600}.confirmation-strip small{margin-left:auto;color:#48643A;font-size:.63rem}.confirmation-strip.featured{color:#365F28}.confirmation-explainer{padding:10px;background:#EDF2FA;border-radius:5px;font-size:.73rem;line-height:1.5;color:#52637D;margin:11px 0 7px}.confirmation-explainer b{display:block;min-width:0!important;margin-bottom:4px;color:#344C72}.confirmation-explainer small{display:block;font-size:.69rem;margin-top:5px}.context-scope{font-size:.7rem;line-height:1.5;color:#736C60;margin:9px 0 12px}.table-decision .confirmation-explainer,.table-decision .context-scope{white-space:normal}
/* Surface the breadth gate above empty shortlists, with its coverage limits. */
.breadth-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;margin:-6px 0 22px}.breadth-summary.single{grid-template-columns:1fr}.breadth-card{border:1px solid #D8CB75;border-left:5px solid var(--signal-wait);border-radius:7px;padding:13px 15px;background:#FFFBDE;color:#51491C}.breadth-title{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.breadth-title>b{font-size:.77rem;font-weight:600}.breadth-state{padding:4px 8px;border-radius:4px;background:var(--signal-wait);color:#403A08;font-size:.7rem;font-weight:600;line-height:1.35}.breadth-card p{font-size:.82rem;line-height:1.55;margin:9px 0 6px}.breadth-card p strong{font-weight:600}.breadth-card small{display:block;font-size:.67rem;line-height:1.5;color:#7B713D}.breadth-card.passed{background:#EFF4FC;border-color:#CBD7EA;border-left-color:#7294C4;color:#3C5071}.breadth-card.passed .breadth-state{background:#D5E3F7;color:#2C4B76}.breadth-card.passed small{color:#61738E}.breadth-scope{grid-column:1/-1;margin:0;font-size:.69rem;line-height:1.5;color:#756D60}
@media(max-width:660px){.breadth-summary{grid-template-columns:1fr;margin-bottom:18px}.breadth-card{padding:12px}.breadth-card p{font-size:.8rem}.breadth-title{align-items:flex-start}.breadth-state{font-size:.66rem}.breadth-scope{font-size:.67rem}}

/* Observed ranges and price areas. Blue describes location, never a buy signal. */
.price-map{width:100%;min-width:0;padding:12px;border:1px solid #D8E2F0;border-radius:9px;background:linear-gradient(145deg,#F5F8FD,#EDF2FA);font-family:var(--sans);color:#344C72}
.price-map-head{display:flex;align-items:baseline;justify-content:space-between;gap:6px 10px;flex-wrap:wrap;margin-bottom:11px}
.price-map-head>b{min-width:0!important;font-size:.76rem;color:#293F60}.price-map-head>span{font-size:.65rem;color:#617491}.price-map-head strong{font:600 .72rem var(--mono);color:#293F60}
.price-ranges{display:grid;gap:13px}.price-range{min-width:0}.price-range-title{display:flex;align-items:baseline;justify-content:space-between;gap:4px 10px;flex-wrap:wrap}.price-range-title b{min-width:0!important;font-size:.7rem;color:#344C72}.price-range-title small{font-size:.59rem;color:#677891;text-align:right}
.price-range-values{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);align-items:end;gap:5px;margin-top:5px;font:500 .65rem var(--mono);color:#3E577B}.price-range-values>span{min-width:0;overflow-wrap:anywhere}.price-range-values>span:last-child{text-align:right}.price-range-values small{font:400 .55rem var(--sans);color:#74839A}.price-range-values>b{min-width:0!important;font:500 .59rem var(--sans);text-align:center;line-height:1.4;color:#3E5E95}.price-range.above .price-range-values>b,.price-range.below .price-range-values>b{font-weight:600;color:#4C568A}
.price-range-track{height:5px;position:relative;margin:8px 5px 0;border-radius:5px;background:linear-gradient(90deg,#C4D4EB,#819FD0)}.price-range-track:before,.price-range-track:after{content:"";position:absolute;top:-2px;width:1px;height:9px;background:#7C94B6}.price-range-track:before{left:0}.price-range-track:after{right:0}.price-range-marker{display:block;position:absolute;left:var(--spot);top:50%;width:10px;height:14px;border:2px solid #FFF;border-radius:5px;background:#2D5193;box-shadow:0 0 0 1px #6D8CB9;transform:translate(-50%,-50%)}.price-range.unavailable .price-range-track,.price-range.flat .price-range-track{background:repeating-linear-gradient(90deg,#BCC7D6 0 4px,transparent 4px 8px)}
.price-range-key{font-size:.59rem!important;line-height:1.4;margin:11px 0 12px!important;color:#68788E}.price-map-notice,.price-scenario-note{font-size:.65rem!important;line-height:1.45;color:#755D24;background:#FFF8D7;border-radius:4px;padding:7px 8px;margin:0 0 10px!important}.price-scenario-note{margin:9px 0 0!important}.price-at-level{font-size:.67rem!important;line-height:1.45;margin:0 0 8px!important;color:#445B86}.price-at-level b{min-width:0!important}.price-at-level>span{font-size:.85rem;color:#567AB4}
.price-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.price-levels>div{padding:8px;border:1px solid #D5DFED;border-radius:6px;background:#FFFFFFA8;min-width:0}.level-label{display:block;font-size:.63rem;font-weight:600;color:#405A80}.level-label small{display:block;font-size:.56rem;font-weight:400;color:#7A899C;margin-top:2px}.price-levels b{display:block;min-width:0!important;font:600 .71rem var(--mono);color:#2F4B75;line-height:1.5;margin-top:5px;overflow-wrap:anywhere}
.price-scenarios{display:grid;gap:7px;margin-top:10px}.price-scenarios>div{display:flex;gap:7px;align-items:flex-start}.price-scenarios>div>span{flex:none;font:600 .87rem var(--mono);line-height:1.6;color:#6382AE}.price-scenarios p{margin:0!important;font-size:.64rem!important;line-height:1.45;color:#64748B}.price-scenarios b{display:block;min-width:0!important;font-size:.63rem;color:#405A80;font-weight:600}
.setup-floor{border-left:2px solid #C9A461;background:#FFF9EB;padding:7px 8px;margin:11px 0 0!important;color:#796538;font-size:.62rem!important;line-height:1.5}.setup-floor b{display:block;min-width:0!important;color:#655124;font-size:.64rem;margin-bottom:2px}.price-map-source{border-top:1px solid #D5DFED;margin-top:10px;padding-top:8px}.price-map-source summary{font-size:.64rem;cursor:pointer;color:#546B8E}.price-map-source p{font-size:.63rem!important;line-height:1.5;color:#6A788D;margin:8px 0 0!important;overflow-wrap:anywhere}.price-map-source b{min-width:0!important}.price-map-missing{width:100%;margin:0;font-size:.67rem;color:#756D60}
@media(max-width:400px){.price-map{padding:10px}.price-range-title small{font-size:.57rem}.price-range-values{font-size:.61rem;gap:4px}.price-range-values>b{font-size:.56rem}.price-levels b{font-size:.68rem}.price-map-head{align-items:flex-start}}

.setup-floor>span{display:block;margin:2px 0 4px;font-weight:500}.beta-context{display:flex;gap:7px;align-items:flex-start;margin:10px 0 0!important;font-size:.61rem!important;line-height:1.5;color:#64748B}.beta-context>b{flex:none;min-width:0!important;max-width:45%;padding:2px 5px;border:1px solid #CBD7E9;border-radius:4px;background:#E4ECF8;color:#3D577D;font:500 .59rem var(--mono);line-height:1.5}.beta-context>span{min-width:0;padding-top:2px}

.watch-candidate{width:100%;margin:-2px 0 0;padding:5px 8px;background:#FFF8BB;border-left:3px solid var(--signal-wait);border-radius:3px;font-size:.68rem;line-height:1.4;font-weight:500;color:#736124}.breadth-card .breadth-context-note{font-size:.71rem;line-height:1.5;margin:7px 0 9px;padding-top:7px;border-top:1px solid #D8CB7566}.breadth-card.passed .breadth-context-note{border-color:#CBD7EA}
@media(min-width:661px) and (max-width:950px){.breadth-summary:not(.single){grid-template-columns:1fr}.breadth-card p{max-width:85ch}}

/* Beginner lists: scan a short row, open one stock only when more detail helps. */
.board-start{margin:10px 0 22px;padding:15px 18px 0;border:1px solid #D2DBEA;border-radius:9px;background:#F6F8FC;color:#314768}.board-start-head{display:flex;justify-content:space-between;align-items:baseline;gap:6px 14px;flex-wrap:wrap}.board-start-head>b{font-size:.84rem;font-weight:600}.board-start-head>span{font-size:.68rem;color:#61718C}.quick-color-key{display:flex;gap:10px 25px;flex-wrap:wrap;margin:11px 0 8px}.quick-color-key>span{display:flex;align-items:center;gap:7px}.quick-color-key .decision-badge{font-size:.7rem;padding:4px 8px}.quick-color-key small{font-size:.69rem;color:#5E708B}.compact-reading-note{font-size:.66rem;line-height:1.5;color:#718097;margin:0 0 11px}.board-explainer{border-top:1px solid #D9E0ED}.board-explainer>summary{padding:10px 0;font-size:.7rem;color:#4E6487;cursor:pointer}.board-explainer-body{padding-top:6px}.board-explainer-body .board-freshness{margin-top:3px}.board-explainer-body .breadth-summary{margin:12px 0}.board-explainer-body .decision-guide{margin-bottom:16px}.board-start .board-explainer-body .decision-guide-head{align-items:flex-start}.board-utility{margin:8px 0 15px;font-size:.82rem;color:#6D695F}.board-utility a{font-weight:500}.compact-lane-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:18px 0}.compact-lane-nav a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 16px;border:1px solid #CDD7E7;border-radius:7px;background:#EDF2FA;color:#344C72;text-decoration:none}.compact-lane-nav b{font-size:.85rem;font-weight:600}.compact-lane-nav small{font-size:.69rem;color:#687B98}.compact-lane-nav a:hover{background:#E3EBF8;border-color:#859DBF}.lane-instrument-guide{border:1px solid var(--rule2);border-radius:6px;margin:16px 0 25px;background:#FFFCF5}.lane-instrument-guide>summary{padding:12px 15px;font-size:.8rem;color:#5E6E87;cursor:pointer}.lane-instrument-guide .lane-inst{margin:0;padding:0 15px 14px}
.compact-board{padding:18px!important}.compact-board-title{font-family:var(--serif);font-size:1.35rem;font-weight:500;line-height:1.2;letter-spacing:-.025em;color:#283B59;margin:0 0 10px}.compact-board>.list-decisions{margin:0 0 11px}.compact-list-note{display:flex;align-items:baseline;justify-content:space-between;gap:6px 9px;margin:10px 0!important;font-family:var(--sans);font-size:.65rem;line-height:1.5;color:#7A7569}.compact-list-note b{font-size:.68rem;color:#4E6385;font-weight:500}.compact-list-note>span{font-size:.61rem;text-align:right}.compact-stock-list{list-style:none!important;margin:0!important;padding:0!important;min-width:0}.compact-stock{list-style:none!important;margin:0;padding:0;border-top:1px solid #E2E4E7;font-family:var(--sans);min-width:0}.compact-stock:last-child{border-bottom:1px solid #E2E4E7}.stock-disclosure{margin:0;min-width:0}.compact-summary{display:grid;grid-template-columns:23px minmax(0,1fr) auto 13px;grid-template-areas:"rank identity status toggle" "rank reason price toggle";align-items:center;gap:6px 8px;list-style:none;cursor:pointer;padding:13px 2px;min-width:0;border-radius:4px;transition:background .12s ease}.compact-summary::-webkit-details-marker{display:none}.compact-summary::marker{content:""}.compact-summary:hover{background:#F1F4FA}.compact-summary:focus-visible{outline:2px solid #466CAF;outline-offset:2px}.compact-rank{grid-area:rank;align-self:start;margin-top:2px;font:500 .69rem var(--mono);color:#7A899E;text-align:center}.compact-identity{grid-area:identity;display:flex;align-items:baseline;gap:5px 7px;flex-wrap:wrap;min-width:0;line-height:1.25}.compact-identity>b{min-width:0!important;font:600 .84rem var(--mono);color:#283D5E}.compact-identity>span{font-size:.67rem;color:#7A756B;min-width:0;overflow-wrap:anywhere}.compact-status{grid-area:status;justify-self:end}.compact-status .decision-badge{font-size:.65rem;padding:4px 6px;gap:4px;border-radius:4px}.compact-status .decision-badge>span{font-size:.79rem}.compact-reason{grid-area:reason;font-size:.7rem;color:#596A84;line-height:1.42;min-width:0;overflow-wrap:anywhere}.compact-price{grid-area:price;display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;align-self:start;padding-top:1px}.compact-price>b{font:500 .72rem var(--mono);min-width:0!important;color:#314A70;white-space:nowrap}.compact-price>b>span{font:400 .63rem var(--sans);color:#8B7965;white-space:normal;max-width:65px;display:block;text-align:right}.compact-spark{display:block;width:35px;height:19px;flex:none}.compact-spark .chart-line{stroke-width:1.3;stroke:#8B9FBF}.compact-toggle{grid-area:toggle;justify-self:center;align-self:center;font:400 1rem var(--sans);color:#60779D;transition:transform .15s ease}.stock-disclosure[open]>.compact-summary{background:#ECF1F9}.stock-disclosure[open]>.compact-summary .compact-toggle{transform:rotate(45deg)}.stock-disclosure[open]>.compact-summary .compact-rank{color:#3E619B}.stock-expanded{padding:14px 12px 18px;background:#FCFDFF;border:1px solid #DCE4F0;border-top:0;border-radius:0 0 7px 7px;margin-bottom:10px}.stock-expanded .embedded-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:0!important;border:0!important;max-width:740px;margin:0 auto;font-family:var(--sans);min-width:0}.expanded-session{margin:0!important;font-size:.69rem;line-height:1.5;color:#768195}.expanded-session b{min-width:0!important;font:500 .75rem var(--mono);color:#42608B;margin-left:5px}.stock-expanded .row-asof{margin-top:-4px}.stock-expanded .row-chart{box-sizing:border-box}.compact-board>.how{margin-top:13px;padding-top:0}.compact-board>.how>summary{font-size:.67rem;color:#788397;letter-spacing:.02em;text-transform:none}.compact-board>.how .list-blurb{font-size:.77rem;margin-top:10px}.reference-numbers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:12px 0}.reference-numbers>div{border-bottom:1px solid #E0E5ED;padding-bottom:7px;min-width:0}.reference-numbers dt{font-size:.65rem;color:#7D8797;line-height:1.45}.reference-numbers dd{margin:3px 0 0;font:500 .75rem var(--mono);color:#425D83;overflow-wrap:anywhere}.drawdown-shortlist{margin-top:12px}.stock-results,.market-results{border:1px solid #DADFE8;border-radius:8px;background:#FFFEF9;padding:0 16px!important;overflow:hidden}.stock-results>.compact-stock:first-child,.market-results>.compact-stock:first-child{border-top:0}.stock-results>.compact-stock:last-child,.market-results>.compact-stock:last-child{border-bottom:0}
@media(min-width:1001px){.stock-results .compact-summary,.market-results .compact-summary{grid-template-columns:32px minmax(170px,1fr) minmax(190px,2fr) 104px 125px 18px;grid-template-areas:"rank identity reason status price toggle";gap:12px;padding:15px 3px}.stock-results .compact-identity,.market-results .compact-identity{display:block}.stock-results .compact-identity>b,.market-results .compact-identity>b{display:block;font-size:.87rem}.stock-results .compact-identity>span,.market-results .compact-identity>span{display:block;margin-top:4px;font-size:.7rem}.stock-results .compact-status .decision-badge,.market-results .compact-status .decision-badge{font-size:.7rem;padding:5px 8px}.stock-results .compact-reason,.market-results .compact-reason{font-size:.8rem}.stock-results .compact-price,.market-results .compact-price{align-self:center}.stock-results .compact-price>b,.market-results .compact-price>b{font-size:.84rem}.stock-results .compact-spark,.market-results .compact-spark{width:42px;height:24px}.stock-results .stock-expanded,.market-results .stock-expanded{padding:22px}}
@media(max-width:760px){.board-start{padding:13px 13px 0;margin-bottom:18px}.board-start-head>b{font-size:.8rem}.board-start-head>span{font-size:.65rem}.quick-color-key{gap:8px 12px}.quick-color-key>span{gap:5px}.quick-color-key small{font-size:.61rem}.quick-color-key .decision-badge{font-size:.65rem;padding:4px 6px}.compact-reading-note{font-size:.63rem}.board-explainer>summary{font-size:.67rem}.compact-lane-nav a{display:block;padding:11px}.compact-lane-nav small{display:block;margin-top:4px;font-size:.62rem}.compact-lane-nav b{font-size:.76rem}.compact-board{padding:16px!important}.compact-board-title{font-size:1.3rem}.stock-results,.market-results{padding:0 10px!important}.compact-summary{padding:13px 0;column-gap:7px}.compact-reason{font-size:.71rem}.compact-status .decision-badge{font-size:.66rem}.compact-identity>b{font-size:.84rem}.stock-expanded{padding:12px 10px 16px}.stock-results .compact-summary,.market-results .compact-summary{padding-left:2px;padding-right:2px}}
@media(max-width:390px){.compact-summary{grid-template-columns:18px minmax(0,1fr) auto 11px;column-gap:6px}.compact-price{gap:3px}.compact-price>b{font-size:.68rem}.compact-spark{width:27px}.compact-status .decision-badge{font-size:.62rem;padding:4px 5px}.compact-identity>span{font-size:.65rem}.compact-reason{font-size:.67rem}.quick-color-key{gap:8px}.quick-color-key small{font-size:.6rem}.compact-list-note>span{font-size:.58rem}}
@media(prefers-reduced-motion:reduce){.compact-summary,.compact-toggle{transition:none}}

/* The heatmap is a table first. Keep the collapsed row to one slim line; the
   existing disclosure still holds the chart and explanation underneath. */
.heatmap-header,.compact-stock .heatmap-summary{grid-template-areas:"rank identity price ranges analyst status volume toggle";grid-template-columns:24px minmax(150px,1.25fr) 78px minmax(360px,2.6fr) 100px 105px 116px 13px;gap:7px 9px;min-width:1120px}
.heatmap-header.no-analyst,.compact-stock.no-analyst .heatmap-summary{grid-template-areas:"rank identity price ranges status volume toggle";grid-template-columns:24px minmax(150px,1.25fr) 78px minmax(360px,2.6fr) 105px 116px 13px}
.heatmap-header{height:38px;box-sizing:border-box}.heatmap-header>span{white-space:nowrap}.heatmap-header small{font-size:.58rem;font-weight:400;color:#8291A8}.compact-stock .heatmap-summary{height:62px;box-sizing:border-box;padding:8px 2px!important;align-items:center}.compact-stock .compact-reason{display:none}.compact-stock .compact-status{align-self:center}.compact-stock .compact-volume{align-self:center}.compact-stock .compact-toggle{align-self:center}.compact-stock .compact-analyst:empty{display:none}
.range-heatmap-cell{background:#FFFDF8!important;border:0!important;border-top:3px solid #AAB6C7!important;border-radius:2px;padding:5px 5px 4px!important}.range-heatmap-cell.tone-red{border-top-color:#D86B5D!important;color:#854D46}.range-heatmap-cell.tone-yellow{border-top-color:#D6B441!important;color:#7A662F}.range-heatmap-cell.tone-green{border-top-color:#5A9B62!important;color:#406D49}.range-heatmap-track{height:2px;margin-top:5px!important;background:currentColor!important;opacity:.45}.range-heatmap-value{font-size:.69rem!important;letter-spacing:-.045em!important}.range-status{display:block;font-size:.54rem;line-height:1;color:#8995A5}.range-heatmap-label{display:block!important;font-size:.58rem!important;line-height:1.1;margin-bottom:2px;color:#7E8CA0}.range-coverage-flag{top:0}
.decision-badge{font-weight:700}.compact-status .decision-badge{box-shadow:0 0 0 1px #00000012}
.stock-results,.market-results{overflow-x:auto}.compact-stock-list{min-width:1120px}
@media(max-width:1000px){.mini-board{overflow-x:auto}.mini-board .compact-stock-list{min-width:1120px}.heatmap-header,.compact-stock .heatmap-summary{grid-template-areas:"rank identity price ranges analyst status volume toggle";grid-template-columns:24px 150px 78px 360px 100px 105px 116px 13px;min-width:1120px}.heatmap-header.no-analyst,.compact-stock.no-analyst .heatmap-summary{grid-template-areas:"rank identity price ranges status volume toggle";grid-template-columns:24px 150px 78px 360px 105px 116px 13px}.compact-stock .heatmap-summary{height:62px!important}.compact-stock .heatmap-summary .compact-identity{display:block!important}.compact-stock .heatmap-summary .compact-identity>b{display:block}.compact-stock .heatmap-summary .compact-identity>span{display:block;margin-top:2px}.compact-stock .heatmap-summary .compact-price{flex-direction:column!important;align-items:flex-start!important;gap:1px!important}.compact-stock .heatmap-summary .compact-price .compact-spark{display:none}.heatmap-mobile-label{display:none!important}}

/* Long-term fund directory: dense, readable rows with the same three action
   colors used by the setup boards. */
.funds-head{align-items:flex-end}.funds-count{display:grid;gap:2px;min-width:145px;padding:13px 16px;border-left:3px solid #365DB4;background:#F1F4F9}.funds-count>b{font:600 1.7rem var(--mono);color:#2E4F86}.funds-count span{font-size:.78rem;color:#536782}.funds-count small{font-size:.67rem;color:#7D899B}.funds-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;padding:15px 18px;border:1px solid #D7E0EC;background:#F6F8FB;border-radius:7px;margin:20px 0}.funds-intro p{margin:0;font-size:.82rem;line-height:1.55;color:#52647F}.fund-directory{margin-top:20px}.fund-search{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-bottom:15px}.fund-search label{display:block;flex-basis:100%;font-size:.72rem;font-weight:600;color:#536782}.fund-search input{width:min(440px,100%);box-sizing:border-box;border:1px solid #BFCBDB;border-radius:5px;padding:10px 12px;background:#FFFDF8;font:400 .85rem var(--sans);color:#2D405F}.fund-search>a{font-size:.76rem;padding:10px 0}.fund-categories{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.fund-categories a{display:inline-flex;gap:5px;align-items:center;padding:7px 9px;border:1px solid #D4DDE9;border-radius:5px;background:#F8FAFC;color:#4A6286;text-decoration:none;font-size:.7rem;white-space:nowrap}.fund-categories a:hover,.fund-categories a.on{background:#E6EDF8;border-color:#8098BC;color:#2E4F86}.fund-categories b{font:500 .65rem var(--mono);color:#71819A}.fund-result-line{margin:7px 0 10px;font-size:.76rem;color:#71809A}.fund-table-wrap{width:100%;overflow-x:auto;border:1px solid #D6DFEB;border-radius:7px;background:#FFFDF8}.fund-table{width:100%;min-width:1080px;border-collapse:collapse;font-size:.74rem}.fund-table th,.fund-table td{padding:9px 10px;border-bottom:1px solid #E4E9F0;text-align:left;vertical-align:middle;white-space:nowrap}.fund-table thead th{position:sticky;top:0;background:#EEF2F7;color:#657895;font-size:.63rem;letter-spacing:.06em;text-transform:uppercase}.fund-table tbody tr:hover{background:#F7F9FC}.fund-table tbody tr:last-child th,.fund-table tbody tr:last-child td{border-bottom:0}.fund-symbol{display:block;font:600 .78rem var(--mono);color:#2F4C78}.fund-table tbody th small{display:block;margin-top:3px;font:400 .61rem var(--sans);color:#8A96A5}.fund-name{width:250px;white-space:normal!important;line-height:1.3}.fund-name b{display:block;color:#3A4D6C;font-weight:600}.fund-name span{display:block;margin-top:2px;color:#657590}.fund-name small{display:block;margin-top:3px;color:#8A96A5;font-size:.61rem}.fund-now{font:500 .74rem var(--mono);color:#385A8D}.fund-range{min-width:104px;text-align:center!important;border-top:3px solid #AAB6C7}.fund-range b{font:500 .68rem var(--mono);color:#536A8B}.fund-range small{display:block;margin-top:3px;font-size:.59rem;color:#8A96A5}.fund-range.tone-red{border-top-color:#D86B5D}.fund-range.tone-yellow{border-top-color:#D6B441}.fund-range.tone-green{border-top-color:#5A9B62}.fund-range.tone-red b{color:#8A5149}.fund-range.tone-yellow b{color:#7B672E}.fund-range.tone-green b{color:#47714E}.fund-pending{display:inline-block;padding:4px 7px;border:1px solid #CBD5E3;border-radius:4px;font-size:.66rem;color:#73829A;background:#F1F4F8}.fund-setup .decision-badge{font-size:.64rem;padding:4px 6px}.fund-empty{padding:24px!important;color:#71809A;text-align:center!important}.fund-footnote{margin:12px 2px 28px;color:#73829A;font-size:.72rem;line-height:1.5}.fund-footnote b{color:#536782}.muted{color:#96A0AD}
@media(max-width:760px){.funds-head{display:block}.funds-count{margin-top:15px;display:inline-grid}.funds-intro{grid-template-columns:1fr;padding:13px 14px;gap:9px}.fund-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.fund-categories a{flex:none}.fund-table{min-width:1080px}}

/* Fund directory: make the role-and-trend score visible beside the separate chart checklist. */
.fund-table{min-width:1220px}.fund-range{min-width:112px}.fund-fit{min-width:90px;text-align:center!important}.fund-fit b,.fund-fit span{display:block}.fund-fit b{font:600 .85rem var(--mono);color:#3E5F8B}.fund-fit span{margin-top:3px;font-size:.61rem;color:#64738A}.fund-fit.fit-strong{border-top:3px solid #4AA565;background:#F1FAF2}.fund-fit.fit-strong b{color:#176B3A}.fund-fit.fit-mixed{border-top:3px solid #D9B83D;background:#FFFBE5}.fund-fit.fit-mixed b{color:#765A00}.fund-fit.fit-caution{border-top:3px solid #D86B5D;background:#FFF1EE}.fund-fit.fit-caution b{color:#9B2F25}.fund-fit.fit-unknown{border-top:3px solid #AAB6C7}

/* The compact row keeps company size visible without adding another table column. */
.compact-identity>.market-cap{display:block;margin-top:3px;font:500 .62rem/1.2 var(--mono);letter-spacing:.01em;color:#5A7194;white-space:nowrap}.market-cap.cap-mega,.market-cap.cap-large{color:#315E9B}.market-cap.cap-mid{color:#5A6F86}.market-cap.cap-small{color:#A15A28}.market-cap.cap-micro,.market-cap.cap-unknown{color:#9B5148}

/* Analyst consensus is intentionally omitted from the beginner heat map. */
.heatmap-header.no-analyst,.compact-stock.no-analyst .heatmap-summary{grid-template-areas:"rank identity price ranges status volume toggle";grid-template-columns:24px minmax(135px,1.3fr) 72px minmax(360px,2.6fr) 105px 116px 13px;min-width:1120px}.compact-stock.no-analyst .compact-analyst{display:none}
@media(max-width:1000px){.compact-stock.no-analyst .heatmap-summary{grid-template-columns:23px minmax(0,1.4fr) minmax(90px,1fr) 14px;grid-template-areas:"rank identity status toggle" "rank price status toggle" "ranges ranges ranges ranges" "volume volume volume volume" "reason reason reason reason";min-width:0}.compact-stock.no-analyst .compact-analyst{display:none}}

/* Override the older generic flex/mono list rule only for compact stock rows. */
.mini-board .compact-stock-list>.compact-stock{display:block;padding:0;gap:0;font-family:var(--sans);font-size:inherit;align-items:normal;flex-wrap:nowrap}
.compact-stock>.stock-disclosure{display:block;width:100%;min-width:0;box-sizing:border-box}
.compact-stock .compact-summary{width:100%;box-sizing:border-box;font-family:var(--sans)}
.compact-stock .compact-identity>span{font-family:var(--sans);font-size:.75rem;line-height:1.35}
.compact-stock .compact-reason{font-family:var(--sans);font-size:.8125rem;line-height:1.42}
.compact-stock .compact-identity>b{font-size:.875rem}
.compact-stock .compact-price>b{font-size:.75rem}
.compact-stock .compact-status .decision-badge{font-size:.6875rem}

/* Four observed ranges share a row; only Our setup uses the action colors. */
.mini-boards,.mini-boards.two{grid-template-columns:minmax(0,1fr)}
.heatmap-key{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;margin:10px 0 13px;font:400 .75rem/1.5 var(--sans);color:#536782}.heatmap-key>b{font-weight:600}.heatmap-action{display:inline-block;padding:1px 5px;border-radius:4px;font-weight:700;white-space:nowrap}.heatmap-action.green{background:#D9F7D8;color:#176B3A}.heatmap-action.yellow{background:#FFF3A8;color:#765A00}.heatmap-action.red{background:#FFD9D3;color:#9B2F25}.range-key{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6875rem;white-space:nowrap}.range-key.low{background:#F7DCD8;color:#85433D}.range-key.middle{background:#F7EBC3;color:#7B641E}.range-key.high{background:#D7ECD9;color:#376441}.heatmap-key>span:last-child{flex-basis:100%;font-size:.75rem;color:#62738D}
.heatmap-header,.compact-stock .heatmap-summary{display:grid;grid-template-columns:24px minmax(135px,1.3fr) 72px minmax(360px,2.6fr) 92px 100px 110px 13px;gap:6px 8px;align-items:center}
.heatmap-header{padding:10px 2px 9px;border-top:1px solid #D9E1EC;background:#F1F4F9;color:#617491;font:500 .6875rem/1.4 var(--sans);border-radius:5px 5px 0 0}.heatmap-header>span:first-child{font-size:.6rem}.heatmap-range-head{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;text-align:center}
.compact-stock .heatmap-summary{grid-template-areas:"rank identity price ranges analyst status volume toggle" "rank reason reason reason reason reason reason toggle";padding:12px 2px;font-family:var(--sans)}
.compact-stock .heatmap-summary .compact-rank{align-self:center;margin:0;font-size:.6875rem}.compact-stock .heatmap-summary .compact-identity{display:block;line-height:1.35}.compact-stock .heatmap-summary .compact-identity>b{display:block;font-size:.875rem}.compact-stock .heatmap-summary .compact-identity>span{display:block;margin-top:3px;font-size:.75rem;line-height:1.35}.compact-stock .heatmap-summary .compact-price{flex-direction:column;align-items:flex-start;justify-content:center;align-self:center;gap:1px;padding:0}.compact-stock .heatmap-summary .compact-price>b{font-size:.75rem}.compact-stock .heatmap-summary .compact-price>b>span{text-align:left;font-size:.6875rem;line-height:1.35;max-width:none}.compact-stock .heatmap-summary .compact-spark{width:45px;height:20px}.compact-stock .heatmap-summary .compact-status{justify-self:start}.compact-stock .heatmap-summary .compact-status .decision-badge{font-size:.6875rem;padding:5px 7px;white-space:nowrap}.compact-stock .heatmap-summary .compact-reason{padding-top:3px;font-size:.8125rem;line-height:1.4;color:#64748C}.heatmap-mobile-label{display:none}
.range-heatmap{grid-area:ranges;display:grid;grid-template-columns:repeat(4,minmax(82px,1fr));gap:7px;min-width:0}.range-heatmap-cell{position:relative;display:block;min-width:0;padding:7px 7px 8px;border:1px solid #D8E1EA;border-radius:5px;background:#ECF0F6;color:#687C98;text-align:center;font-family:var(--sans);line-height:1.3}.range-heatmap-cell.tone-red{background:#F8E1DC;border-color:#EBCCC6;color:#854D46}.range-heatmap-cell.tone-yellow{background:#FAEFCB;border-color:#E5D8AB;color:#7A662F}.range-heatmap-cell.tone-green{background:#DBEDDC;border-color:#C3DCC6;color:#406D49}.range-heatmap-label{display:none;font-size:.6875rem}.range-coverage-flag{position:absolute;right:4px;top:1px;font-size:.6875rem;line-height:1.2}.compact-stock .range-heatmap-value{display:block;min-width:0!important;font:600 .72rem/1.3 var(--mono);white-space:nowrap;letter-spacing:-.02em;color:inherit;overflow:visible}.range-heatmap-track{display:block;position:relative;height:3px;margin:7px 3px 0;border-radius:2px;background:currentColor;opacity:.65}.range-heatmap-marker{display:block;position:absolute;left:var(--position);top:50%;width:5px;height:8px;border:1px solid #FFF;border-radius:2px;transform:translate(-50%,-50%);background:currentColor;box-shadow:0 0 0 1px currentColor}.range-heatmap-cell.tone-neutral .range-heatmap-track{background:repeating-linear-gradient(90deg,#8FA1B9 0 3px,transparent 3px 6px);opacity:.45}
.compact-analyst{grid-area:analyst;min-width:0}.analyst-brief{display:block;font-family:var(--sans);line-height:1.4;color:#526A8A}.compact-stock .analyst-brief>b{display:block;min-width:0!important;font:500 .75rem/1.4 var(--sans);color:#526A8A}.analyst-brief>span{display:block;margin-top:3px;font-size:.6875rem;color:#7B8797}.compact-volume{grid-area:volume;min-width:0;color:#65778D}.compact-stock .compact-volume>b{display:block;min-width:0!important;font:500 .75rem/1.45 var(--sans);color:inherit}.compact-volume.volume-green{color:#4A7154}.compact-volume.volume-red{color:#905E53}.compact-volume.volume-yellow{color:#887239}
.market-evidence{padding:13px;border:1px solid #D8E1EC;border-radius:7px;background:#F5F7FB;width:100%;box-sizing:border-box;font-family:var(--sans)}.market-evidence h4{margin:0 0 10px;font:600 .8125rem/1.4 var(--sans);color:#354D71}.market-evidence p{margin:8px 0 0;font-size:.75rem;line-height:1.55;color:#697891;overflow-wrap:anywhere}.market-evidence p b{min-width:0!important;font-size:.75rem;color:#476083}.market-evidence .analyst-brief>b{font:600 .8125rem/1.4 var(--sans);color:#476083}.market-evidence .analyst-brief>span{font-size:.75rem}.market-evidence .heatmap-mobile-label{display:none}.market-evidence a{color:#385D97;text-decoration:underline}
@media(min-width:1001px){.finder-result-line+.heatmap-header,.board-sec>.heatmap-header{padding-left:19px;padding-right:19px}.heatmap-summary .heatmap-mobile-label,.heatmap-summary .range-heatmap-label{display:block;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}
@media(max-width:1000px){.heatmap-header{display:none}.compact-stock .heatmap-summary{grid-template-columns:23px minmax(0,1.4fr) minmax(90px,1fr) 14px;grid-template-areas:"rank identity status toggle" "rank price status toggle" "ranges ranges ranges ranges" "analyst analyst volume volume" "reason reason reason reason";gap:9px 9px;padding:14px 1px}.compact-stock .heatmap-summary .compact-rank{align-self:start;padding-top:1px}.compact-stock .heatmap-summary .compact-identity{display:flex;gap:4px 8px;align-items:baseline;flex-wrap:wrap}.compact-stock .heatmap-summary .compact-identity>span{margin-top:0}.compact-stock .heatmap-summary .compact-price{flex-direction:row;align-items:center;justify-content:flex-start;gap:8px}.compact-stock .heatmap-summary .compact-price .compact-spark{order:2;width:40px;height:18px}.compact-stock .heatmap-summary .compact-status{justify-self:end}.compact-stock .heatmap-summary .compact-status .decision-badge{font-size:.75rem;padding:5px 8px}.heatmap-mobile-label{display:block;font:500 .6875rem/1.4 var(--sans);color:#7A879A;margin-bottom:4px}.compact-status .heatmap-mobile-label{text-align:right}.range-heatmap{gap:7px;margin:1px 0 2px}.range-heatmap-label{display:block;margin-bottom:4px;font-size:.6875rem}.range-heatmap-cell{padding:7px 7px 9px}.compact-stock .range-heatmap-value{font-size:.875rem}.compact-analyst,.compact-volume{padding-top:2px}.compact-stock .analyst-brief>b,.compact-stock .compact-volume>b{font-size:.75rem}.analyst-brief>span{display:inline;margin-left:5px;font-size:.75rem}.compact-stock .compact-analyst .analyst-brief>b{display:inline}.compact-stock .compact-reason{border-top:1px solid #DDE4EE;padding-top:9px}.stock-expanded .embedded-row{max-width:640px}}
@media(max-width:420px){.compact-board{padding:14px!important}.compact-stock .heatmap-summary{grid-template-columns:18px minmax(0,1fr) 104px 11px;column-gap:6px}.compact-stock .heatmap-summary .compact-status .decision-badge{font-size:.6875rem;padding:5px 7px}.range-heatmap{gap:5px}.range-heatmap-cell{padding:7px 5px 9px}.range-heatmap-label{font-size:.6875rem}.compact-stock .range-heatmap-value{font-size:.8125rem}.compact-stock .heatmap-summary .compact-identity>span{font-size:.75rem}.compact-stock .heatmap-summary .compact-reason{font-size:.8125rem}.heatmap-key{gap:4px 6px}.heatmap-key>span:last-child{font-size:.75rem}}

/* Past YTD performance is a small text annotation, separate from action badges.
   Preserve a single compact row and reserve space for large ticker prices. */
.ytd-return{display:block;white-space:nowrap;font:500 .62rem/1.3 var(--sans);color:#60728C}
.ytd-return.positive{color:#237441}.ytd-return.negative{color:#B34843}.ytd-return.missing{color:#8994A6}
.compact-stock .heatmap-summary .compact-price .compact-spark{height:15px}
.compact-stock .heatmap-summary .compact-price{gap:1px}.fund-now>b{display:block}.fund-now .ytd-return{margin-top:4px}
.expanded-session .ytd-return{display:inline;margin-left:10px}.row-quote .ytd-return{font-size:.68rem}
.fund-table .fund-group th{background:#E9EFF9!important;border-top:2px solid #CDD8EA;padding:12px 10px;white-space:normal!important}
.fund-group th>b{display:inline-block;margin-right:12px;color:#294C80;font:650 .82rem/1.4 var(--sans)}
.fund-group th>span{font:400 .7rem/1.4 var(--sans);color:#63758E}.fund-table .fund-now{min-width:90px}

/* A single horizontal table at every viewport width. The scroll region owns
   overflow; old card breakpoints must not compress five grid rows into 62px. */
.compact-table-scroll{display:block;max-width:100%;width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border-radius:6px}
.compact-table-scroll:focus-visible{outline:2px solid #466CAF;outline-offset:3px}
.mini-board,.board-sec,.stockfinder{min-width:0;max-width:100%}
.compact-table-scroll>.compact-stock-list{width:100%;min-width:1120px;padding:0!important;overflow:visible;border-left:0;border-right:0;border-radius:0}
.compact-table-scroll>.heatmap-header.no-analyst,.compact-table-scroll .compact-stock.no-analyst .heatmap-summary{display:grid;grid-template-columns:24px minmax(170px,1fr) 88px minmax(504px,2.6fr) 108px 132px 16px;grid-template-areas:"rank identity price ranges status volume toggle";column-gap:10px;row-gap:0;min-width:1120px;width:100%;padding-left:8px!important;padding-right:8px!important;align-items:center}
.compact-table-scroll>.heatmap-header.no-analyst{height:38px;font-size:.66rem}
.compact-table-scroll .compact-stock.no-analyst .heatmap-summary{height:62px!important;min-height:62px;padding-top:7px!important;padding-bottom:7px!important}
.compact-table-scroll .compact-stock .heatmap-summary .compact-identity{display:block!important;min-width:0;line-height:1.25}
.compact-table-scroll .compact-stock .heatmap-summary .compact-identity>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.72rem}
.compact-table-scroll .compact-stock .heatmap-summary .compact-identity>.market-cap{overflow:hidden;text-overflow:ellipsis;margin-top:2px;font-size:.6rem}
.compact-table-scroll .compact-stock .heatmap-summary .compact-price{display:flex;flex-direction:column!important;align-items:flex-start!important;justify-content:center;gap:0!important;line-height:1.2}
.compact-table-scroll .compact-stock .heatmap-summary .compact-price>b{font-size:.75rem;line-height:1.3}
.compact-table-scroll .compact-stock .heatmap-summary .compact-price .compact-spark{display:block;width:45px;height:14px;order:0}
.compact-table-scroll .compact-stock .heatmap-summary .compact-price .ytd-return{font-size:.6rem;line-height:1.3}
.compact-table-scroll .range-heatmap{grid-template-columns:repeat(4,minmax(116px,1fr));gap:8px;margin:0}
.compact-table-scroll .range-heatmap-cell{padding:5px 5px 4px!important}
.compact-table-scroll .range-heatmap-value{font-size:.72rem!important;letter-spacing:-.02em!important}
.compact-table-scroll .heatmap-range-head{grid-template-columns:repeat(4,minmax(116px,1fr));gap:8px}
.compact-table-scroll .heatmap-summary .range-heatmap-label,.compact-table-scroll .heatmap-summary .heatmap-mobile-label{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.compact-table-scroll .compact-stock .heatmap-summary .compact-status{justify-self:start}.compact-table-scroll .compact-stock .heatmap-summary .compact-status .decision-badge{font-size:.6875rem;padding:5px 7px}
.compact-table-scroll .compact-stock .heatmap-summary .compact-volume{padding:0}.compact-table-scroll .compact-stock .heatmap-summary .compact-volume>b{font-size:.7rem;line-height:1.35}
.compact-table-scroll .compact-stock .heatmap-summary .compact-reason{display:none}.compact-table-scroll .compact-stock .heatmap-summary .compact-rank{align-self:center;padding:0;margin:0}

/* Longer-horizon review: compact mixed-status ideas stay ahead of reference lists. */
.horizon-review{padding:16px 18px;border:1px solid #D6DFE9;border-top:4px solid #8099C5;border-radius:10px;background:#FFFDF7;margin:14px 0 20px}
.horizon-review-head{display:flex;justify-content:space-between;gap:16px;align-items:center}.horizon-review-head h3{margin:4px 0 0;font-size:1.35rem}.horizon-review-head>a{font-size:.76rem;white-space:nowrap}.horizon-review-head .kicker{margin:0}
.horizon-color-key{display:flex;flex-wrap:wrap;gap:6px 16px;color:#57667C;font-size:.75rem;line-height:1.5;margin:14px 0 7px}.horizon-color-key>span{display:inline-flex;gap:5px;align-items:center}
.horizon-list-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.horizon-list-meta .list-decisions,.horizon-list-meta .compact-list-note{margin:5px 0 9px}.horizon-list-meta .compact-list-note{gap:12px;font-size:.71rem}
.horizon-history{font-size:.75rem}.horizon-reference{margin:20px 0}.horizon-reference>summary{font-size:.82rem}.horizon-reference[open]{padding-bottom:10px}
.compact-stock .compact-identity>b>.compact-history-date{display:inline-block;margin-left:7px;font:400 .56rem/1.2 var(--sans);color:#7B6A2C;vertical-align:middle;white-space:nowrap}
@media(max-width:760px){.horizon-review{padding:14px 10px}.horizon-review-head{display:block}.horizon-review-head>a{display:inline-block;margin-top:8px}.horizon-review-head h3{font-size:1.14rem}.horizon-color-key{display:block}.horizon-color-key>span{margin:3px 8px 3px 0}.horizon-list-meta{gap:0}.horizon-list-meta .compact-list-note{width:100%;font-size:.66rem}}
