/* AI Picks — Finviz-style screener: dense, data-first, full width. Built on the layout.css tokens. */
/* Light --muted (4.0:1) and --amber (4.5:1) are just under AA on white; darker values keep every new text ≥ 4.5:1.
   Dark mode inherits the root tokens unchanged. */
.page-picks main{--muted:#5b6674;--amber:#8a5a2c;--pk-pass-bg:#e9f5ef;--pk-fail-bg:#fbf1e6;--pk-open:#f3f7fb}
:root[data-theme=dark] .page-picks main{--muted:inherit;--amber:inherit;--pk-pass-bg:#15291f;--pk-fail-bg:#2a2016;--pk-open:#1a2230}
.page-picks [hidden]{display:none!important}
/* Scroll boxes must contain the absolutely positioned .pk-sr words, or off-screen cells widen the page on phones. */
.page-picks .table-scroll,.pk-screener{position:relative}
.pk-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pk-num,.pk-table,.pk-bench,.pk-checks,.pk-sources{font-variant-numeric:tabular-nums}
.page-picks main :is(button,select,input,summary,a,[tabindex]):focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.page-picks main button:disabled{cursor:not-allowed}
.page-picks main select{color:var(--ink)}
.page-picks .title-row{margin-bottom:14px}
.page-picks .title-row h1{margin:4px 0}
.page-picks .title-row p{margin:4px 0 0}

/* Sample banner, status bar and stat strip */
.pk-sample{display:flex;flex-wrap:wrap;gap:4px 10px;margin-bottom:12px}
.pk-status{margin-top:0;flex-wrap:wrap;padding:10px 16px}
.pk-status p{margin:0;font-size:15px;color:var(--muted)}
.pk-status b{color:var(--ink);font-weight:600}
.pk-status .outline{min-height:34px;padding:6px 12px;font-size:15px}
.pk-status .outline[aria-disabled=true]{cursor:progress;color:var(--muted)}
.pk-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.pk-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:5px;color:var(--ink);text-align:left;cursor:pointer;font:inherit}
.pk-stat span{font-size:14px;color:var(--muted)}
.pk-stat strong{font-size:24px;font-weight:600;font-variant-numeric:tabular-nums}
.page-picks .pk-stat:hover{background:var(--tint)}
.pk-stat[aria-pressed=true]{border-color:var(--blue);box-shadow:inset 0 -3px 0 var(--blue);background:var(--tint)}

/* Control bar */
.pk-screener{overflow:hidden}
.pk-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 16px;border-bottom:1px solid var(--line)}
.pk-field{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%}
.page-picks .pk-field>label{display:inline;font-size:14px;color:var(--muted);white-space:nowrap}
.pk-inline{display:flex;gap:4px;min-width:0;max-width:100%}
.page-picks :is(.pk-controls,.pk-pager,.pk-grid,.pk-bench) :is(select,input:not([type=checkbox])){min-height:32px;padding:3px 8px;font-size:15px;max-width:100%;min-width:0}
.pk-controls select{max-width:20em}
.pk-tickers input{width:13em}
.pk-buttons{display:flex;flex-wrap:wrap;gap:6px}
.page-picks :is(.pk-controls,.pk-buttons,.pk-pager,.pk-empty) .outline{min-height:32px;padding:4px 12px;font-size:15px}
.pk-dir{white-space:nowrap}
.pk-save-form{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.page-picks .pk-save-form label{display:inline;font-size:14px;color:var(--muted)}
.pk-save-form input{width:16em;max-width:100%}
.page-picks .pk-save-form .primary{min-height:32px;padding:4px 14px;font-size:15px}

/* Tabs (filter groups and result views) */
.pk-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:thin}
.pk-tabs [role=tab]{flex:0 0 auto;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:9px 14px;font-size:15px;color:var(--muted);cursor:pointer;white-space:nowrap}
.pk-tabs [role=tab][aria-selected=true]{color:var(--ink);border-bottom-color:var(--blue);font-weight:600}
.pk-tabs [role=tab]:disabled{opacity:1;color:var(--muted);font-style:italic}
.pk-filter-panel{background:var(--raised);border-bottom:1px solid var(--line)}
.pk-filter-panel>.pk-tabs{padding:0 12px;border-bottom:1px solid var(--line)}
.pk-tabpanel{padding:12px 16px 16px}
.pk-hint{margin:0 0 10px;font-size:14px}

/* Finviz-style filter grid: right-aligned label, control to its right */
.pk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-auto-flow:row dense;gap:6px 20px;font-size:14px}
.pk-cell{display:grid;grid-template-columns:minmax(0,10em) minmax(0,1fr);align-items:center;gap:8px;min-height:36px}
.pk-wide{grid-column:span 2}
.page-picks .pk-label{display:block;font-size:14px;color:var(--muted);text-align:right;line-height:1.3}
.pk-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:14px;color:var(--muted);min-width:0}
.pk-ctl input[type=number]{width:5.2em}
.page-picks input[type=checkbox]{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--blue)}
.pk-op,.pk-unit{color:var(--muted)}
.page-picks .pk-check{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:14px;color:var(--ink);cursor:pointer}
.pk-cell.is-off input[type=number]{border-style:dashed;color:var(--muted)}
.pk-cell.is-set select{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}

/* ETF universe chips */
.pk-universe{border:0;margin:0 0 12px;padding:0;min-width:0}
.pk-universe legend{font-size:15px;font-weight:600;color:var(--ink);padding:0;margin-bottom:6px}
.pk-universe-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;margin-bottom:6px}
.pk-universe-head p{margin:0;font-size:14px}
.pk-universe-head b{color:var(--ink)}
.pk-family{display:grid;grid-template-columns:11em minmax(0,1fr);gap:4px 12px;align-items:start;padding:7px 0;border-top:1px dashed var(--line)}
.pk-family-name{font-size:14px;color:var(--muted);padding-top:4px}
.pk-chips{display:flex;flex-wrap:wrap;gap:6px}
.page-picks .pk-chip{display:inline-flex;flex-direction:row;align-items:center;gap:5px;padding:3px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:14px;color:var(--ink);cursor:pointer}
.pk-chip:has(input:checked){border-color:var(--blue);background:var(--tint)}
.pk-chip:focus-within{outline:2px solid var(--blue);outline-offset:1px}
.pk-chip input:focus-visible{outline:0}
.pk-chip.is-failed{cursor:not-allowed;border-style:dashed}
.pk-count{color:var(--muted)}
.pk-flagword{font-size:12.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--amber)}

/* Sector benchmarks */
.pk-bench-scroll{border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.pk-bench{width:100%;min-width:720px;border-collapse:collapse;font-size:15px}
.pk-bench th,.pk-bench td{padding:5px 10px;border-bottom:1px solid var(--line)}
.pk-bench .pk-ctl{display:inline-flex;justify-content:flex-end}
.pk-bench td.pk-note{white-space:normal;min-width:16em}
.pk-industry{margin:12px 0}
.pk-industry .pk-note{flex-basis:100%}

/* Active filters, result header and pager */
.pk-active{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:9px 16px;border-bottom:1px solid var(--line);font-size:14px}
.pk-active-label{color:var(--muted)}
.pk-token{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border:1px solid var(--blue);border-radius:999px;background:var(--tint);color:var(--ink);font-size:14px;cursor:pointer}
.pk-token b{font-weight:600}
.pk-results-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:4px 12px;padding:6px 16px 0;border-bottom:1px solid var(--line)}
.pk-views{max-width:100%}
.pk-pager{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:6px 0;font-size:14px;color:var(--muted)}
.pk-pager b{color:var(--ink)}
.pk-pager-bottom{justify-content:flex-end;padding:8px 16px;border-top:1px solid var(--line)}
.page-picks .pk-inline-label{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:14px;color:var(--muted)}
.page-picks .pk-step{min-width:34px;padding:2px 8px;font-size:17px;line-height:1}

/* Results table: dense rows, sticky header, right-aligned numbers */
.pk-results{container-type:inline-size}
.pk-table{width:100%;border-collapse:separate;border-spacing:0;font-size:15px}
.pk-table>thead>tr>th,.pk-table>tbody>tr>td,.pk-table>tbody>tr>th{padding:4px 9px;height:30px;border-bottom:1px solid var(--line);white-space:nowrap}
.pk-table>thead>tr>th{position:sticky;top:0;z-index:2;background:var(--raised);color:var(--muted);font-size:13.5px;font-weight:600;vertical-align:bottom}
.page-picks .txt{text-align:left}.page-picks .num{text-align:right}.page-picks .mid{text-align:center}
.pk-sort{display:inline-flex;align-items:center;gap:3px;background:none;border:0;padding:2px 0;font:inherit;color:inherit;cursor:pointer;white-space:nowrap}
.page-picks .pk-sort:hover{background:none;color:var(--ink);text-decoration:underline}
.pk-arrow{font-size:11.5px;min-width:8px;color:var(--blue)}
.pk-table>tbody>tr.pk-row:hover>*{background:var(--tint)}
.pk-table>tbody>tr.is-open>*{background:var(--pk-open)}
.pk-no{color:var(--muted)}
/* Ticker stays in view while a wide table scrolls sideways (phones). */
.pk-table>tbody>tr>th.pk-tick{position:sticky;left:0;z-index:1;background:var(--surface);box-shadow:inset -1px 0 0 var(--line)}
.pk-table>thead>tr>th.pk-tick{left:0;z-index:3}
.pk-table>tbody>tr.is-open>th.pk-tick{background:var(--pk-open)}
:root .pk-table>tbody>tr.pk-row:hover>th.pk-tick,:root[data-theme=dark] .pk-table>tbody>tr.pk-row:hover>th.pk-tick{background:var(--tint)}
.pk-ticker{background:none;border:0;padding:2px 2px;font:inherit;font-weight:700;color:var(--blue);cursor:pointer;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}
.page-picks .pk-ticker:hover{background:none;text-decoration-color:currentColor}
.pk-ticker[aria-expanded=true]{text-decoration-color:currentColor}
.pk-live{margin-left:3px;font-size:10.5px;vertical-align:super;color:var(--green)}
.pk-name{max-width:15em;overflow:hidden;text-overflow:ellipsis}
/* Rule status on values: colour + dotted underline (fail) / italics (waived) + title + screen-reader word. */
.pk-table>tbody>tr>td.is-pass{color:var(--green)}
.pk-table>tbody>tr>td.is-fail{color:var(--amber);text-decoration:underline dotted;text-underline-offset:3px}
.pk-table>tbody>tr>td.is-waived{color:var(--muted);font-style:italic}
.pk-table>tbody>tr>td:is(.is-missing,.is-na){color:var(--muted)}
.pk-table>tbody>tr>td.pk-rule{font-weight:700;text-decoration:none}
.pk-table>tbody>tr>td.pk-rule.is-off{font-weight:400;color:var(--muted)}
.pk-pill{display:inline-block;padding:0 8px;border:1px solid currentColor;border-radius:999px;font-size:13px;line-height:1.6;font-style:normal}
.pk-pill.is-pick{color:var(--green);background:var(--pk-pass-bg)}
.pk-pill.is-watch,.pk-pill.is-path{color:var(--blue);background:var(--tint)}
.pk-pill.is-fail{color:var(--muted)}
.pk-score{display:inline-flex;align-items:center;gap:6px}
.pk-bar{display:inline-block;width:46px;height:6px;border-radius:3px;background:var(--line);overflow:hidden}
.pk-bar i{display:block;height:100%;background:var(--blue)}
.pk-grade{display:inline-block;min-width:2.2em;padding:0 4px;border-radius:3px;font-weight:700;font-size:13.5px;text-align:center;color:var(--ink);background:var(--raised)}
.pk-grade.g-a{color:var(--green);background:var(--pk-pass-bg)}
.pk-grade.g-b{color:var(--blue);background:var(--tint)}
.pk-grade:is(.g-d,.g-f){color:var(--amber);background:var(--pk-fail-bg)}

/* Inline detail row: pinned to the visible width of the scrolling table */
.pk-table>tbody>tr.pk-detail>td{padding:0;height:auto;white-space:normal;text-align:left;background:var(--pk-open)}
.pk-detail-grid{position:sticky;left:0;box-sizing:border-box;width:100cqw;max-width:100%;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:16px 24px;padding:14px 16px 16px;font-size:14px}
.pk-detail-grid h3{font-size:15px;margin:0 0 8px;color:var(--ink)}
.pk-detail-grid h4{font-size:14px;margin:12px 0 4px;color:var(--ink)}
.pk-detail-grid p{margin:4px 0;font-size:14px}
.pk-detail-grid p b{color:var(--ink)}
.pk-checks{width:100%;border-collapse:collapse;font-size:14px;background:var(--surface)}
.pk-checks th,.pk-checks td{padding:4px 8px;border-bottom:1px solid var(--line);white-space:normal;vertical-align:top}
.pk-checks thead th{font-size:13px}
.pk-checks tbody th{font-weight:600;color:var(--ink);white-space:nowrap}
.pk-checks td.num{white-space:nowrap}
.pk-flag{font-weight:600;white-space:nowrap}
.pk-flag.is-pass{color:var(--green)}.pk-flag.is-fail{color:var(--amber)}.pk-flag:is(.is-missing,.is-off){color:var(--muted)}.pk-flag.is-waived{color:var(--muted);font-style:italic}
.pk-note{color:var(--muted);font-size:13.5px}
.pk-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}
.pk-bigscore{display:flex;align-items:center;gap:8px}
.page-picks .pk-bigscore b{font-size:26px;font-weight:600}
/* auto-fit: two columns only when each fits "Financial strength A− 100"; in the narrow 3-column detail it drops to one, so labels never overlap the grades */
.pk-factor-list{list-style:none;margin:6px 0 10px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(11.5em,1fr));gap:4px 12px}
.pk-factor-list li{display:flex;align-items:center;gap:6px;color:var(--muted)}
.pk-factor-list li>span:first-child{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
.page-picks .pk-co{font-size:15px;font-weight:600;color:var(--ink)}
.pk-chiplets{display:flex;flex-wrap:wrap;gap:4px}
.pk-chiplet{display:inline-block;padding:0 7px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font-size:13px;line-height:1.7}
.pk-hist,.pk-notes{margin:2px 0;padding-left:18px;color:var(--muted)}
.pk-hist b{color:var(--ink);margin-left:6px}
.pk-analyze-box{margin-top:12px}
.page-picks .pk-analyze-box .primary{min-height:36px;padding:6px 14px;font-size:15px}
.pk-analyze[aria-disabled=true]{opacity:.75;cursor:progress}
.pk-error{margin-top:8px;padding:8px 12px;border:1px solid var(--amber);border-left-width:4px;border-radius:4px;background:var(--surface)}
.page-picks .pk-error p{color:var(--ink)}

/* Empty state, methodology, disclaimer */
.page-picks .pk-empty{padding:28px 20px}
.pk-empty p{margin:6px auto;max-width:46em;font-size:15px}
.page-picks .pk-empty-title{font-size:17px;font-weight:600;color:var(--ink)}
.pk-empty b{color:var(--ink)}
.pk-center{justify-content:center;margin-top:12px}
.pk-method{margin-top:18px}
.pk-method>summary{padding:14px 20px}
.pk-method>summary h2{display:inline;font-size:18px;margin:0;color:var(--ink)}
.pk-method-body{padding:0 20px 18px;font-size:15px}
.pk-method-body h3{font-size:16px;margin:16px 0 6px;color:var(--ink)}
.pk-method-body :is(li,p){color:var(--muted);line-height:1.55;font-size:15px}
.pk-method-body li b{color:var(--ink)}
.pk-method-body ul{margin:4px 0;padding-left:20px}
.pk-sources{width:100%;min-width:760px;border-collapse:collapse;font-size:14px}
.pk-sources th,.pk-sources td{padding:4px 8px;border-bottom:1px solid var(--line)}
.pk-sources a{color:var(--blue)}
.pk-muted{color:var(--muted)}
.page-picks .pk-disclaimer{margin:14px 0 0;font-size:14px;color:var(--muted)}

@media(min-width:701px){.pk-results{max-height:75vh}}
@media(max-width:1100px){.pk-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.pk-detail-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pk-detail-grid>section:first-child{grid-column:1/-1}}
@media(max-width:700px){.pk-wide{grid-column:1/-1}
.pk-grid{grid-template-columns:minmax(0,1fr)}
.pk-cell{grid-template-columns:minmax(0,8.5em) minmax(0,1fr)}
.pk-family{grid-template-columns:minmax(0,1fr)}
.pk-controls{padding:10px 12px;gap:8px 12px}
.pk-tickers,.pk-tickers input{width:100%}
.pk-tickers{display:grid;grid-template-columns:auto minmax(0,1fr)}
.pk-detail-grid{grid-template-columns:minmax(0,1fr)}
.pk-tabpanel{padding:10px 12px 14px}
.pk-results-head{padding:4px 12px 0}
.pk-pager-bottom{justify-content:flex-start;padding:8px 12px}
.pk-stat strong{font-size:22px}}

/* Technical layer: SuperTrend states (arrow + word), hard-rule checklist, MA table. */
.pk-st{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-weight:600;font-size:13px;padding:1px 7px;border-radius:10px;border:1px solid transparent}
.pk-st.is-fresh{color:var(--green);background:color-mix(in srgb,var(--green) 14%,transparent);border-color:color-mix(in srgb,var(--green) 45%,transparent)}
.pk-st.is-above{color:var(--green)}
.pk-st.is-below{color:var(--amber)}
.pk-rules-list{display:flex;flex-wrap:wrap;gap:8px 18px}
.pk-ma-details{margin-top:10px}.pk-ma-details summary{cursor:pointer;font-size:14px}
.pk-checks td.is-pass{color:var(--green)}.pk-checks td.is-fail{color:var(--amber)}
.pk-stale-data{display:inline-block;margin-left:6px;color:var(--amber);font-weight:600}
