/* FoldScout v5 strict specification. Overrides legacy rules; no decorative artwork. */
:root {
 --brand:#0f3d2e;--brand-hover:#0b2e23;--bg:#f7f7f5;--surface:#ffffff;--paper:var(--surface);--border:#e5e5e2;--line:var(--border);
 --text:#1a1f1c;--ink:var(--text);--text-muted:#5a6660;--muted:var(--text-muted);--link:var(--text);--accent:var(--brand);--dark:var(--brand);
 --ok-fg:#15803d;--ok-bg:#dcfce7;--restricted-fg:#c2410c;--restricted-bg:#ffedd5;--noncomm-fg:#be123c;--noncomm-bg:#ffe4e6;--unverified-fg:#57534e;--unverified-bg:#f5f5f4;
 --radius:8px;--shadow:none;
}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body{background:var(--bg);color:var(--text);font:400 16px/1.5 "DM Sans",sans-serif}
h1,h2,h3{color:inherit}
p{font-size:16px;line-height:1.55}
small,.small{font-size:14px}
a{color:var(--link)}
a:hover{text-decoration:underline;text-underline-offset:3px}
input,select,button{font:inherit;color:inherit}
input:focus-visible,select:focus-visible,button:focus-visible,[tabindex]:focus-visible,a:focus-visible{outline:3px solid var(--text)!important;outline-offset:2px}
button,a{touch-action:manipulation}
.top-strip{background:var(--brand);color:#fff}
.top-strip .strip-in{min-height:37px;height:auto;padding:6px 0}
.top-strip .strip-in span,.top-strip a{font-size:12px;color:#fff}
.header{background:var(--surface)}
.header .header-in{height:70px}
.header .main-nav a{font-size:14px;color:var(--text)}
.header .nav-end>a,.header .open-index{display:none!important}
.theme-button,.mobile-nav-btn{min-width:44px;min-height:44px;display:grid;place-items:center;font-size:22px}
.brand,.footer-brand{color:var(--brand)!important}
.brand-icon{background:var(--brand)}
.hero{grid-template-columns:minmax(0,1fr) minmax(0,0.84fr);gap:48px;padding:40px 0 46px!important;min-height:0}
.hero-copy{padding:0}
.hero h1{font:800 56px/1.15 "Manrope",sans-serif;letter-spacing:-.055em;margin:15px 0 14px!important}
.hero h1 em{font:italic 400 1em/1.15 Georgia,serif;letter-spacing:-.04em}
.hero-sub{font-size:16px;line-height:1.5;color:var(--text-muted);max-width:570px}
.hero .hero-search{margin-top:18px;box-shadow:none;border:1px solid var(--border)}
.hero-search input{font-size:16px}
.hero-search button,.button-primary,.finder-submit{background:var(--brand);color:white}
.hero-search button:hover,.button-primary:hover,.finder-submit:hover{background:var(--brand-hover)}
.hero-quick{margin:10px 0 8px;gap:8px}
.hero-quick>span{display:none}
.hero-quick button{font-size:12px;border:1px solid var(--border);color:var(--text);background:var(--surface);padding:11px 13px;min-height:44px}
.hero-quick button:hover{border-color:var(--brand);background:var(--surface);color:var(--text)}
.hero-actions{margin:14px 0 0!important;gap:10px}
.hero-actions a{min-height:44px;font-size:14px!important;display:inline-flex;align-items:center;padding:12px 18px}
.hero-trust{display:none}
.hero-visual{height:auto;min-height:290px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:0;box-shadow:none;overflow:visible}
.product-preview{width:100%;max-width:415px;position:relative;display:block;padding:0 0 39px 0}
.product-preview .preview-model{width:86%;background:var(--surface);border:1px solid var(--border);padding:23px;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.07);text-decoration:none}
.product-preview .preview-model small{display:block;color:var(--text-muted);font-size:14px}
.product-preview .preview-model h3{font-size:20px;margin:11px 0 5px;line-height:1.2}
.product-preview .preview-model p{font-size:14px;color:var(--text-muted);line-height:1.5;margin:7px 0 13px}
.product-preview .preview-compare{position:relative;margin:-10px 0 0 auto;width:90%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;box-shadow:0 10px 20px rgba(0,0,0,.04)}
.product-preview .preview-compare table{width:100%;border-collapse:collapse;font-size:14px}
.product-preview .preview-compare th,.product-preview .preview-compare td{padding:7px 8px;text-align:left;border-bottom:1px solid var(--border)}
.product-preview .preview-compare tr:last-child td{border-bottom:0}
.product-preview .preview-compare th{font-size:12px;color:var(--text-muted)}
.stat-band{background:var(--surface);border:1px solid var(--border);border-left:0;border-right:0}
.stats-in{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));min-height:102px}
.stat-item{padding:16px 16px!important;border-right:1px solid var(--border);text-align:center}
.stat-item:first-child{padding-left:16px!important}
.stat-item:last-of-type{border-right:0}
.stat-num{font-size:28px;line-height:1.1;color:var(--text)}
.stat-label{font-size:12px;color:var(--text-muted)}
.stat-mini{font-size:13px}
.stat-mini.green{color:var(--ok-fg)}.stat-mini.amber{color:var(--restricted-fg)}.stat-mini.rose{color:var(--noncomm-fg)}.stat-mini.grey{color:var(--unverified-fg)}
.stat-verification{grid-column:1/-1;text-align:center;padding:4px 10px 11px;font-size:12px;color:var(--text-muted)}
.stat-verification strong{color:var(--text)}
.workflows{padding:33px 0!important}
.section-top{margin-bottom:15px}
.section-top h2,.method h2,.s2s-layout h2,.compare-head h2,.index-watch h2{font-size:36px;line-height:1.18;letter-spacing:-.045em}
.section-top h2{margin:0 0 7px}
.section-top p{font-size:14px;color:var(--text-muted);margin:0}
.section-kicker,.hero-eyebrow,.finder-note,.s2s-kicker,.watch-kicker,.watch-top,.wf-n,.wf-link{display:none!important}
.workflow-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.workflow-card{min-height:146px;padding:20px;text-align:left;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:none}
.workflow-card .wf-top,.workflow-card .wf-link{display:none!important}
.workflow-card .wf-symbol{display:block;font-size:22px;line-height:1.3;color:var(--text)}
.workflow-card strong{font-size:16px;line-height:1.3;margin:11px 0 5px}
.workflow-card>span:not(.wf-symbol):not(.wf-top):not(.wf-link){font-size:14px;color:var(--text-muted);line-height:1.35}
.workflow-card:hover,.workflow-card.active{border-color:var(--brand);background:var(--surface)}
.finder-section{padding:33px 0!important;background:var(--bg);border-color:var(--border)}
.finder-grid{display:grid;grid-template-columns:.7fr 1fr;gap:30px}
.finder-intro h2{font-size:32px;margin:6px 0 8px;line-height:1.15}
.finder-intro p{font-size:14px;line-height:1.5;color:var(--text-muted)}
.finder-panel{background:var(--surface);border:1px solid var(--border);padding:15px 20px;box-shadow:none}
.finder-panel-top{padding:0 0 8px}
.finder-panel-top>*{font:600 12px "DM Sans",sans-serif;color:var(--text-muted)}
.finder-panel-top span:nth-child(2){display:none}
.finder-panel form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.finder-field{margin:0;min-width:0}
.finder-field label{font:600 12px/1.35 "DM Sans",sans-serif;letter-spacing:0;margin-bottom:6px;color:var(--text)}
.finder-field select{font-size:14px;min-height:44px;padding:7px 9px;border:1px solid var(--border);border-radius:6px;width:100%}
.finder-submit{font-size:14px;min-height:44px;grid-column:1/-1;margin:2px 0 0}
.finder-results{margin-top:12px}
.finder-results p{font-size:14px}
.finder-item a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
.directory-section{background:var(--bg);padding:32px 0 65px!important;border-color:var(--border)}
.directory-intro{margin:0 0 12px}
.directory-intro .plain-link{display:none}
.directory-intro h2{font-size:36px}
.directory-intro p{font-size:14px}
.explorer-top{gap:12px}
.search-wrap{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-height:52px}
.search-wrap input{font-size:16px}
.clear-btn{font-size:14px;min-height:44px}
.filter-row{margin:10px 0 0}
.filter-label{display:none}
.filter-group{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:8px 10px}
.filter-group label{font-size:12px;color:var(--text-muted)}
.filter-group select{font-size:14px;color:var(--text);max-width:190px}
.filter-group:focus-within{border-color:var(--text);box-shadow:none}
.licensing-details{margin:8px 0 8px;font-size:14px}
.licensing-details summary{cursor:pointer;font-size:14px;color:var(--text);width:max-content;min-height:44px;display:flex;align-items:center}
.licensing-details summary:hover{text-decoration:underline}
.licensing-details p{font-size:14px;line-height:1.5;color:var(--text-muted);max-width:980px}
.licensing-details a{font-size:14px;text-decoration:underline}
.category-wrap{padding:7px 0 10px;gap:8px}
.cat-chip{background:var(--surface);color:var(--text);border:1px solid var(--border);font-size:12px;min-height:44px;padding:8px 12px}
.cat-chip.active{background:var(--brand);color:white;border-color:var(--brand)}
.cat-chip.active span{color:#fff}
.cat-chip:hover{border-color:var(--text)}
.results-bar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:9px 0;display:flex;align-items:center;gap:12px}
.results-bar>div:first-child{flex:1;min-width:0}
#results-count{font-size:16px}
#active-filter-text,.results-label{font-size:12px;color:var(--text-muted)}
.results-actions{gap:10px;align-items:center}
.results-actions button,.results-sort select{min-height:44px;padding:8px 12px;font-size:13px}
.results-label{display:none}
.results-sort{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}
.results-sort select{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text)}
.view-switch{display:inline-flex;gap:0;border:1px solid var(--border);border-radius:7px;overflow:hidden}
.view-switch button{background:var(--surface);border:0;border-right:1px solid var(--border);color:var(--text);font-size:14px;min-height:44px;padding:10px 12px}
.view-switch button:last-child{border-right:0}
.view-switch button[aria-pressed=true]{background:var(--brand);color:#fff}
.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.tool-card{cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:8px;box-shadow:none;min-height:263px;padding:15px 17px;display:flex;flex-direction:column;align-items:stretch;overflow-wrap:anywhere}
.tool-card:hover{border-color:#abb9af;box-shadow:none;transform:none}
.tool-card .tc-head{display:flex;gap:8px;align-items:center;justify-content:space-between}
.tc-cat{margin:0;font:600 12px/1.35 "DM Sans",sans-serif;letter-spacing:.025em;text-transform:uppercase;color:var(--text-muted);white-space:normal;overflow:visible}
.tc-compare{min-height:44px;min-width:93px;border:1px solid var(--border);background:var(--surface);border-radius:6px;font-size:12px;color:var(--text);padding:7px 10px;white-space:nowrap}
.tc-compare:hover{border-color:var(--text)}
.tool-card h3{font:800 20px/1.25 "Manrope",sans-serif;letter-spacing:-.04em;margin:8px 0 2px}
.tc-maker{font-size:14px;line-height:1.35;margin:0 0 9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tc-desc{font-size:14px;line-height:1.4;color:var(--text-muted);margin:0 0 10px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;max-height:40px;min-height:0;flex:none}
.tc-info{display:grid;gap:6px;margin:auto 0 0}
.tc-primary-badges,.tc-secondary-badges{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.badge,.fee-badge{display:inline-flex;align-items:center;border-radius:5px;padding:7px 10px!important;font:700 12px/1.2 "DM Sans",sans-serif!important;letter-spacing:0;white-space:nowrap;border:1px solid transparent}
.badge-yes,.fee-free{color:var(--ok-fg)!important;background:var(--ok-bg)!important;border-color:var(--ok-bg)!important}
.badge-restricted,.fee-paid{color:var(--restricted-fg)!important;background:var(--restricted-bg)!important;border-color:var(--restricted-bg)!important}
.badge-no,.fee-none{color:var(--noncomm-fg)!important;background:var(--noncomm-bg)!important;border-color:var(--noncomm-bg)!important}
.badge-unverified,.fee-unknown{color:var(--unverified-fg)!important;background:var(--unverified-bg)!important;border-color:var(--border)!important}
.fee-badge .fee-symbol{display:none}
.other-pill{background:var(--surface)!important;border:1px solid var(--border)!important;border-radius:5px;color:var(--text-muted)!important;font-size:12px!important;padding:6px 9px!important;white-space:nowrap}
.review-due{font-size:12px;color:var(--text-muted);align-self:flex-end;margin:5px 0 0}
.directory-sponsor{grid-column:1/-1;min-height:44px;border:1px dashed var(--border);border-radius:8px;background:var(--surface);padding:9px 14px;display:flex;gap:13px;align-items:center;justify-content:center;font-size:12px;color:var(--text-muted)}
.directory-sponsor a{font-size:14px;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}
.directory-sponsor span{font-size:12px}
#table-view[hidden],#tool-grid[hidden]{display:none!important}
.table-scroll{width:100%;overflow-x:auto}
.directory-table{width:100%;border-spacing:0;border-collapse:separate;font-size:14px;background:var(--surface)}
.directory-table th{position:sticky;top:68px;z-index:5;background:var(--bg);border-bottom:1px solid var(--border);text-align:left;padding:9px 12px}
.directory-table th button{padding:9px 5px;min-height:44px;min-width:44px;font-size:12px;font-weight:750;color:var(--text);background:transparent;border:0;text-align:left;cursor:pointer}
.directory-table td{padding:12px;border-bottom:1px solid var(--border);vertical-align:middle;font-size:14px;color:var(--text-muted)}
.directory-table tbody tr:hover{background:#f1f2f0}
.directory-table .td-name strong{display:block;color:var(--text);font-size:16px}
.directory-table .td-name small{display:block;color:var(--text-muted);font-size:12px;white-space:nowrap;max-width:240px;text-overflow:ellipsis;overflow:hidden}
.directory-table .table-check{display:grid;place-items:center;min-width:44px;min-height:44px;cursor:pointer}
.directory-table input[type=checkbox]{height:20px;width:20px;accent-color:var(--brand)}
.directory-table tr[data-card-link]{cursor:pointer}
.table-sort-marker{font-size:12px;margin-left:3px}
.table-sponsor td{text-align:center;font-size:14px}
.index-watch{padding:45px 0 52px}
.watch-grid{gap:12px}
.watch-update{background:var(--brand);color:#fff}
.watch-update h3{color:#fff;font-size:20px}
.watch-update p,.watch-date{color:#fff!important;font-size:14px}
.watch-entry .icon{display:none}
.watch-entry{grid-template-columns:minmax(0,1fr) auto}
.watch-entry p,.watch-entry span.note{font-size:14px;color:var(--text-muted)}
.watch-entry a{font-size:14px;color:var(--text)}
.watch-top strong,.watch-top span{font:600 12px "DM Sans",sans-serif;color:var(--text-muted)}
.method{padding:48px 0;gap:32px}
.method-card h3{font-size:16px}
.method-card p{font-size:14px;color:var(--text-muted)}
.s2s-section{background:var(--brand)}
.s2s-layout{min-height:260px;padding:32px 0;gap:30px}
.s2s-layout h2{font-size:32px}
.s2s-layout p{font-size:14px;color:#fff}
.footer{background:var(--brand);color:#fff}
.footer-grid{padding:25px 0;gap:18px}
.footer-grid p,.footer-small,.footer-base,.footer-grid a,.footer-links a,.footer-links strong{color:#fff!important;font-size:14px}
.footer-brand{color:#fff!important}
.footer-base{padding:8px 0}
.footer-links{gap:20px}
.footer-links a{min-height:44px;display:flex;align-items:center}
.footer-links strong{font-size:14px}
.details,.compare-modal{background:var(--surface);color:var(--text)}
.detail-section p,.detail-section a{font-size:14px}
.compare-table{font-size:14px}
.compare-table th,.compare-table td{font-size:14px}
.mobile-filter-toggle{display:none}
html[data-theme=dark]{
 --brand:#0f3d2e;--brand-hover:#092c20;--bg:#171a18;--surface:#222824;--paper:var(--surface);--border:#525a54;--text:#f3f5f2;--ink:var(--text);--text-muted:#d0d9d1;--muted:var(--text-muted);--link:var(--text);
 --ok-fg:#bbf7d0;--ok-bg:#14532d;--restricted-fg:#fed7aa;--restricted-bg:#9a3412;--noncomm-fg:#fecdd3;--noncomm-bg:#9f1239;--unverified-fg:#e7e5e4;--unverified-bg:#44403c
}
html[data-theme=dark] .header,html[data-theme=dark] .stat-band,html[data-theme=dark] .finder-section,html[data-theme=dark] .directory-section,html[data-theme=dark] .watch-models,html[data-theme=dark] .tool-card,html[data-theme=dark] .workflow-card,html[data-theme=dark] .finder-panel,html[data-theme=dark] .filter-group,html[data-theme=dark] .results-sort select,html[data-theme=dark] .view-switch button,html[data-theme=dark] .product-preview .preview-model,html[data-theme=dark] .product-preview .preview-compare{background:var(--surface)!important;border-color:var(--border)}
html[data-theme=dark] .header a,html[data-theme=dark] .main-nav a{color:var(--text)!important}
html[data-theme=dark] .stat-label,html[data-theme=dark] .tc-desc,html[data-theme=dark] .tc-maker{color:var(--text-muted)!important}
html[data-theme=dark] .cat-chip{background:var(--surface);border-color:var(--border);color:var(--text)}
html[data-theme=dark] .cat-chip.active{background:var(--brand);color:#fff}
html[data-theme=dark] .fee-badge,html[data-theme=dark] .badge{color:inherit}
html[data-theme=dark] .tool-card:hover{background:var(--surface);border-color:#c9d2cb}
@media(max-width:1000px){.hero{gap:20px}.hero h1{font-size:45px}.finder-grid{gap:15px}.directory-table .td-name small{max-width:170px}}
@media(max-width:760px){
 .header .header-in{height:60px}.main-nav{background:var(--surface);top:60px}.header .mobile-nav-btn{min-height:44px;min-width:44px}
 .hero{display:block;padding:20px 0 21px!important}
 .hero h1{font-size:36px;line-height:1.14}
 .hero-sub{font-size:14px;max-width:550px}
 .hero-visual{display:none!important}
 .hero-search{min-height:48px}
 .hero-search input{font-size:14px}
 .hero-search button{min-height:44px;font-size:14px}
 .hero-actions{display:grid;grid-template-columns:1fr;gap:8px}
 .hero-actions a{width:100%;justify-content:center;min-height:44px}
 .hero-quick button{font-size:12px}
 .stats-in{grid-template-columns:repeat(3,minmax(0,1fr));min-height:0}
 .stat-item{border-right:0;border-bottom:1px solid var(--border);padding:10px 4px!important}
 .stat-item:first-child{padding-left:4px!important}
 .stat-num{font-size:23px}
 .stat-label{font-size:11px;line-height:1.3}
 .stat-verification{display:flex;align-items:center;justify-content:center;min-height:45px;font-size:12px}
 .workflows{padding:19px 0!important}
 .section-top h2,.method h2,.index-watch h2{font-size:26px}
 .workflows .section-top p,.workflows .section-top>.plain-link{display:none}
 .workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .workflow-card{min-height:82px;padding:9px 11px;display:flex;gap:5px;flex-direction:column;justify-content:center}
 .workflow-card strong{font-size:14px;line-height:1.2;margin:0}
 .workflow-card .wf-symbol{font-size:18px;line-height:1}
 .workflow-card>span:not(.wf-symbol):not(.wf-top){display:none!important}
 .finder-section{padding:15px 0!important}
 .finder-grid{grid-template-columns:minmax(0,1fr);gap:8px}
 .finder-intro h2{font-size:22px;margin:0}
 .finder-intro p{display:none}
 .finder-panel{padding:10px}
 .finder-panel-top{padding:0;margin:0 0 5px}
 .finder-panel form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .finder-field{min-width:0}
 .finder-field:first-child{grid-column:1/-1}
 .finder-field label{font-size:11px}
 .finder-field select{font-size:12px;min-height:44px;padding:6px}
 .finder-submit{min-height:44px;font-size:13px}
 .finder-results .finder-item{padding:6px 0}
 .finder-results .finder-result-title{font-size:12px}
 .directory-section{padding:18px 0 40px!important}
 .directory-intro{margin:0 0 7px}
 .directory-intro h2{font-size:26px}
 .directory-intro p{display:none}
 .explorer-top{gap:6px}
 .search-wrap{min-height:48px}
 .search-wrap input{font-size:14px}
 .clear-btn{min-height:44px;padding:6px 8px;font-size:12px}
 .mobile-filter-toggle{display:flex;align-items:center;justify-content:space-between;min-height:44px;width:100%;margin:8px 0 0;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:7px 12px;color:var(--text);font-size:14px;font-weight:750}
 .mobile-filter-toggle .mobile-filter-chevron{font-size:18px}
 #filter-options{display:none!important}
 #filter-options.is-open{display:none!important}
 .mobile-filter-overlay[hidden],.mobile-filter-sheet[hidden]{display:none!important}
 .mobile-filter-overlay{position:fixed;inset:0;background:#0009;z-index:190}
 .mobile-filter-sheet{position:fixed;inset:auto 0 0;z-index:191;width:100%;max-height:84dvh;background:var(--surface);border-radius:14px 14px 0 0;padding:14px 16px 24px;overflow-y:auto;box-shadow:0 -7px 28px #0002}
 .mobile-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:8px;position:sticky;top:-14px;padding:10px 0;background:var(--surface)}
 .mobile-sheet-head strong{font-size:20px}
 .mobile-sheet-head button{min-width:44px;min-height:44px;background:var(--surface);border:1px solid var(--border);border-radius:7px}
 .mobile-filter-sheet #filter-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .mobile-filter-sheet .filter-group{min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:3px;padding:8px}
 .mobile-filter-sheet .filter-group label{font-size:12px}
 .mobile-filter-sheet .filter-group select{width:100%;max-width:none;min-height:44px}
 .sheet-actions{display:flex;gap:10px;padding-top:10px}
 .sheet-actions button{flex:1;min-height:44px;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:14px}
 .sheet-actions .sheet-apply{background:var(--brand);color:#fff;border-color:var(--brand)}
 .category-wrap{display:flex!important;flex-wrap:nowrap!important;max-width:100%;overflow-x:auto;gap:6px;padding:5px 0;-webkit-overflow-scrolling:touch}
 .category-wrap .cat-chip{flex:0 0 auto;min-height:44px;font-size:11px;padding:7px 10px}
 .licensing-details{margin:4px 0}
 .licensing-details summary{min-height:44px;font-size:14px}
 .results-bar{align-items:flex-start;flex-wrap:wrap;gap:5px;padding:7px 0}
 .results-bar>div:first-child{flex:1 1 100%}
 .results-actions{display:flex;width:100%;gap:6px;justify-content:space-between;flex-wrap:nowrap}
 .results-actions button{font-size:12px;min-height:44px;padding:6px 9px}
 .results-sort{display:none}
 .view-switch button{font-size:12px;min-height:44px;padding:7px 11px}
 .tool-grid{grid-template-columns:minmax(0,1fr)!important;gap:5px;min-width:0;width:100%}
 .tool-card{min-height:0;max-height:none;padding:9px 12px;border-radius:5px}
 .tool-card .tc-head{align-items:center}
 .tc-cat{font-size:11px;line-height:1.2}
 .tc-compare{font-size:12px;min-height:44px;padding:6px 11px}
 .tool-card h3{font-size:20px;line-height:1.16;margin:0}
 .tc-maker{font-size:14px;line-height:1.25;margin:1px 0 2px}
 .tc-desc{font-size:14px;line-height:1.28;max-height:36px;min-height:0;margin:0 0 5px}
 .tc-primary-badges{gap:5px}
 .tc-primary-badges .badge,.tc-primary-badges .fee-badge{font-size:12px!important;padding:5px 8px!important}
 .tc-secondary-badges{display:none!important}
 .review-due{font-size:11px;margin:0}
 .directory-sponsor{min-height:44px;padding:0 7px;gap:9px}
 .directory-sponsor a{min-height:44px}
 #table-view .directory-table thead{display:none}
 #table-view .table-scroll{overflow:hidden}
 #table-view .directory-table,#table-view tbody{display:block;width:100%}
 #table-view tr[data-card-link]{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name status" "meta meta";padding:6px 10px;border-bottom:1px solid var(--border);background:var(--surface)}
 #table-view td{display:block;border:0;padding:1px;min-width:0}
 #table-view .td-name{grid-area:name}
 #table-view .td-name a strong{font-size:16px;line-height:1.35}
 #table-view .td-name small{display:none}
 #table-view .td-status{grid-area:status;text-align:right}
 #table-view .td-fee{grid-area:meta;display:inline;margin:0 0 0 0}
 #table-view .td-category,#table-view .td-weights,#table-view .td-check{display:none}
 #table-view .td-compute{grid-area:meta;margin-left:auto;align-self:end;font-size:12px}
 #table-view .td-name::after{content:attr(data-maker);display:block;font-size:12px;color:var(--text-muted);max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #table-view .td-fee .fee-badge{font-size:11px!important;padding:3px!important;background:transparent!important;border:0!important;color:var(--text-muted)!important}
 #table-view .td-status .badge{font-size:11px!important;padding:4px 6px!important}
 #table-view tr.table-sponsor{display:block;padding:0 5px;text-align:center}
 .index-watch{padding:24px 0}
 .index-watch .section-top{margin:0 0 10px}
 .watch-grid{display:grid;grid-template-columns:1fr;gap:8px}
 .watch-update{min-height:0;padding:12px 15px}
 .watch-update h3{font-size:16px;margin:3px 0}
 .watch-update p,.watch-date,.watch-update a{font-size:14px}
 .watch-models{padding:12px 14px}
 .watch-entry{padding:9px 0}
 .watch-entry p,.watch-entry span.note{font-size:12px}
 .method{display:block;padding:24px 0}
 .method-content{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .method-card{padding:9px 3px}
 .method-card h3{font-size:14px;line-height:1.3}
 .method-card p{font-size:12px;line-height:1.35}
 .s2s-layout{display:block;min-height:0;padding:22px 0}
 .s2s-layout h2{font-size:26px}
 .s2s-layout p{font-size:14px}
 .footer-grid{flex-direction:column;padding:20px 0}
 .footer-links{gap:6px}
 .footer-links a{min-height:44px;font-size:14px}
 .footer-base{font-size:12px}
}
@media(max-width:640px){.hero-visual{display:none!important}}
@media(max-width:390px){.hero h1{font-size:36px}.hero-search button{padding:10px 13px}.finder-panel form{gap:6px}.directory-section .shell,.explorer,.tool-grid{min-width:0;max-width:100%}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* V5 acceptance fixes: actual 390px Chrome measurements, not guessed dimensions. */
.top-strip,.top-strip .strip-in,.top-strip .strip-in span{font-size:12px!important}
.finder-panel-top,.finder-panel-top>span{font-size:12px!important}
.plain-link{font-size:14px!important;min-height:44px;display:inline-flex;align-items:center}
.compare-tray[hidden]{display:none!important}
.hero-search input,.search-wrap input{min-height:44px!important;line-height:1.4}
.top-strip a,.header .brand,.footer .brand{min-height:44px;display:inline-flex;align-items:center}
.licensing-details a{display:inline-flex;min-height:44px;align-items:center;margin:0 3px}
.watch-update a,.watch-entry a,.footer a,.method a{min-height:44px;min-width:44px;display:inline-flex;align-items:center}
.watch-entry p,.method-card p{font-size:14px!important;line-height:1.35}
.watch-entry span.note{font-size:12px}
.watch-update a{font-size:14px}
.tool-page .tp-sec p,.tool-page .tp-sec li,.tool-page .tp-sec dd{font-size:14px!important;line-height:1.5}
.tool-page .tp-sec a{font-size:14px}
.tool-page .flabel,.tool-page .rp-top h3,.tool-page .tp-dev,.tool-page .tp-badges,.tool-page .toc a,.tool-page .facts dt,.tool-page .s2s-k,.tool-page .sp-k,.fs-profile-head .fs-quickfacts span{font-size:11px!important}
.tool-page .fs-quickfacts strong,.tool-page .rp-sources a{font-size:14px!important}
.strict-evidence li{font-size:14px;line-height:1.6;color:var(--text)}
.strict-evidence-note{font-size:14px!important;color:var(--text-muted)!important}
@media(max-width:760px){
 .top-strip a,.top-strip .strip-in{min-height:44px}
 .hero{padding-top:12px!important;padding-bottom:12px!important}
 .hero .hero-sub{font-size:14px!important;line-height:1.4}
 .workflows{padding-top:12px!important;padding-bottom:12px!important}
 .finder-section{padding-top:9px!important;padding-bottom:9px!important}
 .directory-section{padding-top:12px!important}
 .watch-models .watch-entry p{font-size:14px!important}
 .hero-search input,.search-wrap input{min-height:44px!important}
 .s2s-layout p,.method-card p{font-size:14px!important}
 .footer .footer-contact a{min-height:44px;padding:10px 0}
 .sheet-actions button{min-height:44px!important}
 #table-view tr[data-card-link]{grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto auto;grid-template-areas:none;gap:2px 8px}
 #table-view .td-name{grid-area:auto;grid-column:1;grid-row:1/3}
 #table-view .td-status{grid-area:auto;grid-column:2/4;grid-row:1}
 #table-view .td-fee{grid-area:auto;grid-column:2;grid-row:2;align-self:center;white-space:nowrap}
 #table-view .td-compute{grid-area:auto;grid-column:3;grid-row:2;align-self:center;white-space:nowrap}
 #table-view .td-name::after{font-size:12px}
 .watch-models a,.method a{padding:5px 0}
 .footer .footer-links a{font-size:14px;min-height:44px}
}
/* Final tap-target audit: keyboard-only skip link and floating compare tray. */
a.skip.sr-only{min-width:44px!important;min-height:44px!important;width:44px!important;height:44px!important;position:absolute;left:-100vw;top:0;clip-path:inset(50%);overflow:hidden}
a.skip.sr-only:focus{left:15px;top:8px;clip-path:none;width:auto!important;height:44px!important;padding:10px 15px;background:var(--surface);z-index:999}
.compare-tray button,.compare-tray a{min-height:44px!important;min-width:44px!important;display:inline-flex;align-items:center;justify-content:center}
@media(max-width:760px){.directory-section{padding-top:5px!important}}
/* Secondary pages: readable 14px prose, 44px interactive targets, neutral attributes. */
.fs-profile-head{background:var(--brand)!important;border-radius:8px}
.tool-page .tp-head .lede,.tool-page .tp-dev,.tool-page .tp-sec p,.tool-page .tp-sec li,.tool-page .tp-sec dd{font-size:14px!important;line-height:1.5!important}
.tool-page .tp-sec a,.tool-page .tp-sec button,.tool-page .toc a,.fs-nav a,.fs-header a,.fs-header button{min-height:44px;min-width:44px;display:inline-flex;align-items:center;font-size:14px!important}
.tool-page .tp-sec .tp-badges .badge,.tool-page .tp-sec .rp-lic{font-size:12px!important}
.tool-page .tp-sec .badge,.tool-page .tp-sec .fee-badge{font-size:12px!important}
.tool-page .facts dt,.tool-page .rp-top h3{font-size:12px!important}
.tool-page .tp-sec a,.tool-page .toc a,.tool-page .related a{color:var(--text);overflow-wrap:anywhere}
.tool-page .s2s-mod{background:var(--brand)!important}
.fs-nav a:hover,.tool-page a:hover{text-decoration:underline}
.fs-header{background:var(--surface)!important}
.fs-brand{color:var(--brand)!important}
.fs-nav a,.fs-header button{color:var(--text)!important}
body:not(:has(.hero)) .footer{background:var(--brand);color:#fff}
body:not(:has(.hero)) .footer a,body:not(:has(.hero)) .footer p,body:not(:has(.hero)) .footer strong{color:#fff!important;font-size:14px!important}
@media(max-width:760px){
 body:not(:has(.hero)) p,body:not(:has(.hero)) li,body:not(:has(.hero)) dd,body:not(:has(.hero)) .tp-dev{font-size:14px!important;line-height:1.55}
 body:not(:has(.hero)) h1{font-size:36px!important}
 body:not(:has(.hero)) h2{font-size:26px!important}
 body:not(:has(.hero)) a,body:not(:has(.hero)) button,body:not(:has(.hero)) select,body:not(:has(.hero)) input{min-height:44px!important;min-width:44px!important}
 body:not(:has(.hero)) a,body:not(:has(.hero)) button{display:inline-flex;align-items:center;justify-content:center}
 body:not(:has(.hero)) .tool-page .toc a{padding:6px 10px}
 body:not(:has(.hero)) a{overflow-wrap:anywhere}
 body:not(:has(.hero)) .tp-sec{scroll-margin-top:75px}
 body:not(:has(.hero)) .fs-header .fs-nav-inner{min-height:60px}
 body:not(:has(.hero)) .footer .footer-in{padding:16px 0}
}
/* Meaningful model license names are prose, not microtype. */
.tool-page .rp-lic,.tool-page .s2s-k,.tool-page p.rp-lic,.tool-page p.s2s-k{font-size:14px!important;line-height:1.5!important}
/* Actual product preview and usable two-line desktop hero. */
@media(min-width:1200px){.hero{grid-template-columns:minmax(0,2.25fr) minmax(0,.75fr)!important;gap:30px}.hero h1{font-size:56px!important}}
/* Hamburger only on narrow screens. */
.mobile-nav-btn{display:none!important}
@media(max-width:900px){.mobile-nav-btn{display:grid!important}}
/* A source license name is substantive text and must meet body-size minimum. */
.tool-page .tp-sec .rp-lic{font-size:14px!important;line-height:1.5!important}
/* Brand green remains reserved for brand, selected controls and OK status. */
.plain-link,.method-card a,.watch-entry a,.index-watch .plain-link,.hero-search-symbol,.search-glass{color:var(--text)!important}
.finder-intro h2 em,.section-top h2 em,.index-watch h2 em,.method h2 em{color:var(--text)!important}
#finder-results a,.finder-item a{color:var(--text)!important}

/* RFantibody patent disclosure: neutral informational styling (not an infringement verdict). */
.patent-card-note{display:block;color:var(--text-muted);font-size:12px;line-height:1.35;margin:5px 0 0;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px}
.patent-fto-section{border:1px solid var(--border)!important;background:var(--surface)!important}
.patent-fto-lede,.patent-fto-bottom,.patent-disclaimer{font-size:14px!important;color:var(--text)!important;line-height:1.65!important}
.patent-fto-facts div{align-items:start}
.patent-fto-facts dt,.patent-fto-facts dd{font-size:14px!important;line-height:1.6!important}
.patent-fto-facts dd strong{font-weight:750}
.patent-fto-section h3{font-size:18px}
.patent-fto-sources{padding-left:20px;list-style:disc}
.patent-fto-sources li{padding:5px 0;font-size:14px}
.patent-fto-sources a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;color:var(--text);overflow-wrap:anywhere}
.patent-disclaimer{padding-top:10px;border-top:1px solid var(--border);color:var(--text-muted)!important}
@media(max-width:640px){.patent-card-note{font-size:11px}.patent-fto-facts dt{font-weight:750}}

.patent-table-note{display:block;margin-top:5px;font-size:12px;color:var(--text-muted);text-decoration:underline;text-decoration-style:dotted}
@media(max-width:640px){#table-view .patent-table-note{display:none}}
