/* /models2 and /models3 (WP-0088, Art 2026-10-04): trial pages comparing filter layouts against
   /models - loaded only there, since site.css is at its own 30 KB budget (WP-0041). */
form.filters-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--s2);margin-bottom:var(--s3);}
form.filters-bar input[type=hidden]{display:none;}
details.fdrop{position:relative;}
details.fdrop>summary{display:inline-flex;align-items:center;gap:var(--s1);min-height:var(--touch);padding:0 var(--s3);border:1px solid var(--bs);border-radius:var(--r-pill);cursor:pointer;list-style:none;font-size:var(--sm);}
details.fdrop>summary::-webkit-details-marker{display:none;}
details.fdrop.active>summary{border-color:var(--accent);}
details.fdrop .fdrop-body{position:absolute;top:100%;left:0;z-index:5;margin-top:var(--s1);padding:var(--s2);min-width:12rem;max-width:20rem;max-height:60vh;overflow:auto;background:var(--su);border:1px solid var(--bs);border-radius:var(--r);box-shadow:0 4px 12px rgba(0,0,0,.2);display:flex;flex-direction:column;gap:2px;}
form.filters-bar .apply{min-height:var(--touch);}
tr.col-filters>td{padding:.125rem .375rem;vertical-align:middle;white-space:normal;}
tr.col-filters>td>input,tr.col-filters>td>select{width:100%;}
tr.col-filters input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
tr.col-filters select,tr.col-filters details.fdrop>summary,tr.col-filters .apply{
height:1.75rem;min-height:1.75rem;padding:0 .4rem;font-size:var(--sm);}
tr.col-filters details.fdrop{max-width:100%;}
tr.col-filters details.fdrop>summary{display:flex;width:100%;overflow:hidden;white-space:nowrap;}
tr.col-filters .range2{display:flex;gap:.2rem;}
tr.col-filters .range2 input{width:50%;}
table.data.cards th.card-actions{width:6rem;}
tr.col-filters .apply{display:inline-block;position:static;width:auto;white-space:nowrap;box-shadow:none;outline:none;}
/* the short head of /models3 (WP-0089): Found, the Simple/Advanced switch and the top pager on one
   compact line between <h1> and the table */
main.models3 h1{margin-bottom:0;}
main.models3 .models3-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin:var(--s1) 0 var(--s2);}
main.models3 .models3-head>*{margin:0;}
main.models3 .view-filters a,main.models3 .view-filters strong{margin-right:var(--s1);}
@media (max-width:720px){
form.filters-bar{flex-direction:column;align-items:stretch;}
details.fdrop{width:100%;}
details.fdrop .fdrop-body{position:static;width:100%;max-width:none;box-shadow:none;}
}
/* /models3 rework (Art 2026-10-05): a field under every column; flags; the Full table's dropdowns open in place
   (its horizontal scroll box would clip a floating one) */
tr.col-filters input[type=text],tr.col-filters input[type=search]{min-width:3.5rem;}
tr.col-filters .col-flag{display:flex;align-items:center;gap:2px;margin:0;font-size:.7rem;color:var(--text);white-space:nowrap;}
tr.col-filters .col-flag input{width:auto;}
table.full tr.col-filters>td{padding:2px .25rem;}
table.full tr.col-filters input[type=text],table.full tr.col-filters input[type=search]{min-width:4.5rem;}
table.full details.fdrop .fdrop-body{position:static;box-shadow:none;}
/* /models3 (Art 2026-10-05): a filtering field is marked, its count shown, a small x drops it; Apply is
   live only with unapplied changes (t.js marks the form "dirty"); a twice taller horizontal scrollbar */
tr.col-filters .cf{display:inline-flex;align-items:center;gap:2px;max-width:100%;}
tr.col-filters .cf.on input,tr.col-filters .cf.on details.fdrop>summary{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);}
tr.col-filters .cf-x{flex:none;display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:.8rem;line-height:1;text-decoration:none;}
details.fdrop>summary .count{display:inline-block;min-width:1.1rem;padding:0 .3rem;border-radius:var(--r-pill);background:var(--accent);color:var(--on-accent);font-size:.7rem;font-weight:700;text-align:center;}
tr.col-filters .cf-apply{display:inline-flex;align-items:center;gap:var(--s1);white-space:nowrap;}
tr.col-filters .cf-reset{font-size:var(--sm);}
.js form.col-filters-form:not(.dirty) button.apply{opacity:.4;pointer-events:none;}
.models3 .scroll-mirror{height:28px;}
tr.col-filters details.fdrop>summary{display:flex;max-width:100%;overflow:hidden;}
tr.col-filters details.fdrop>summary .fl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
tr.col-filters details.fdrop>summary .count{flex:none;margin-left:2px;}
tr.col-filters .cf-reset{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border:1px solid var(--bs);border-radius:50%;text-decoration:none;font-size:1rem;}
.models3 table.data.cards .c-region{width:5.5rem;}
.models3 table.data.cards th.card-actions{width:9rem;}
/* /models3 (Art 2026-10-05 evening): the Full table's dropdowns float over the rows (t.js places them,
   position:fixed, so the sideways scroll box does not clip them); its header follows the page (t.js
   moves the relatively positioned <thead>); a dirty form's Apply cell sticks to the right edge; any
   column folds to a narrow strip (button.col-tog, t.js) */
.models3 table.full details.fdrop .fdrop-body{position:absolute;box-shadow:0 4px 12px rgba(0,0,0,.2);}
.models3 table.full>thead{position:relative;z-index:4;}
.models3 table.full>thead th{position:static;}
.models3 table.full>thead td{background:var(--bg);}
.models3 form.col-filters-form.dirty table.full tr.col-filters>td[data-col=checked]{position:sticky;right:0;z-index:5;background:var(--bg);box-shadow:-8px 0 8px -6px rgba(0,0,0,.35);}
.models3 button.col-tog{display:inline-flex;align-items:center;justify-content:center;min-height:0;width:1rem;height:1rem;margin:0 2px 0 0;padding:0;font-size:.75rem;font-weight:400;line-height:1;vertical-align:middle;background:transparent;color:var(--tm);border:1px solid var(--bs);border-radius:3px;}
.models3 button.col-tog:hover{color:var(--on-accent);background:var(--accent);border-color:var(--accent);}
.models3 button.col-all{min-height:1.75rem;padding:0 var(--s2);font-size:var(--sm);font-weight:400;background:transparent;color:var(--link);border-color:var(--bs);}
.models3 button.col-all[hidden]{display:none;}
.models3 form.col-filters-form>.full-wrap{flex:1 1 100%;min-width:0;max-width:100%;}
/* /models3 (Art 2026-10-05): Simple / Full as one switch - a blue knob slides under the active mode (white with a
   blue border under the other); the Full table's horizontal scrollbar twice as tall and blue like the buttons */
main.models3 .view-switch{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;margin:0;padding:2px;border:1px solid var(--accent);border-radius:var(--r-pill);background:var(--bg);font-size:var(--sm);}
main.models3 .view-switch::before{content:"";position:absolute;top:2px;bottom:2px;left:2px;width:calc(50% - 2px);border-radius:var(--r-pill);background:var(--accent);transition:transform .18s ease;}
main.models3 .view-switch:has(>:last-child[aria-current])::before,main.models3 .view-switch.flip::before{transform:translateX(100%);}
main.models3 .view-switch.flip:has(>:last-child[aria-current])::before{transform:none;}
main.models3 .view-switch>*{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:1.9rem;padding:0 var(--s4);border-radius:var(--r-pill);color:var(--accent);font-weight:600;text-decoration:none;white-space:nowrap;transition:color .18s;}
main.models3 .view-switch>[aria-current]{color:var(--on-accent);}
main.models3 .view-switch.flip>[aria-current]{color:var(--accent);}
main.models3 .view-switch.flip>a{color:var(--on-accent);}
.models3 .scroll-mirror{height:28px;}
.models3 .scroll-mirror::-webkit-scrollbar,.models3 .table-scroll::-webkit-scrollbar{height:28px;}
.models3 .scroll-mirror::-webkit-scrollbar-track,.models3 .table-scroll::-webkit-scrollbar-track{background:var(--su2);border-radius:14px;}
.models3 .scroll-mirror::-webkit-scrollbar-thumb,.models3 .table-scroll::-webkit-scrollbar-thumb{background:var(--accent);border:4px solid var(--su2);border-radius:14px;}
.models3 .scroll-mirror::-webkit-scrollbar-thumb:hover,.models3 .table-scroll::-webkit-scrollbar-thumb:hover{background:var(--accent-hover);}
@supports not selector(::-webkit-scrollbar){.models3 .scroll-mirror,.models3 .table-scroll{scrollbar-color:var(--accent) var(--su2);}}
/* /models3 (Art 2026-10-05): "reset filters" (cf-reset) and "show all columns" (col-all) are two round icons next to
   Apply, each shown only when there is something to undo; the Apply cell sticks to the right while any of them shows */
.models3 tr.col-filters .cf-apply button.col-all{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;min-height:0;padding:0;border:1px solid var(--bs);border-radius:50%;background:transparent;color:var(--link);font-size:1rem;font-weight:400;line-height:1;}
.models3 tr.col-filters .cf-apply button.col-all:hover,.models3 tr.col-filters .cf-reset:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent);}
.models3 tr.col-filters .cf-apply button.col-all[hidden]{display:none;}
.models3 table.full tr.col-filters>td[data-col=checked]:has(.cf-reset,.col-all:not([hidden])){position:sticky;right:0;z-index:5;background:var(--bg);box-shadow:-8px 0 8px -6px rgba(0,0,0,.35);}
.models3 tr.col-filters .cf-apply{gap:var(--s1);}
.models3 tr.col-filters .cf-reset[hidden]{display:none;}
/* /models3's Save menu (Art 2026-10-05): JSON / CSV / YAML of the current filter and its API address */
main.models3 details.save-menu>summary{min-height:1.9rem;border-color:var(--accent);color:var(--accent);font-weight:600;}
main.models3 details.save-menu .fdrop-body{min-width:22rem;max-width:min(32rem,90vw);gap:var(--s1);font-size:var(--sm);}
main.models3 details.save-menu p{margin:0;}
main.models3 details.save-menu .save-fmts{display:flex;gap:var(--s2);}
main.models3 details.save-menu a.save-fmt{min-height:1.9rem;padding:0 var(--s3);font-size:var(--sm);}
main.models3 details.save-menu a.save-fmt.disabled{opacity:.45;pointer-events:none}main.models3 details.save-menu a.save-fmt.busy{cursor:progress;opacity:.7}
main.models3 details.save-menu .code pre{white-space:pre-wrap;word-break:break-all;font-size:.75rem;}
/* the Providers tab's filter row (Art 2026-10-05): a range field and its flag on one line */
.providers3 tr.col-filters>td{white-space:nowrap;}
.providers3 tr.col-filters input[type=text],.providers3 tr.col-filters input[type=search]{width:7rem;min-width:0;}
.providers3 tr.col-filters .cf{display:inline-flex;vertical-align:middle;margin-right:var(--s1);}
.providers3 tr.col-filters .col-flag{display:inline-flex;}
tr.col-filters label.col-flag{flex-direction:row;align-items:center;gap:3px;}
/* the Compare tab (2026-10-05): popular comparisons in columns */
ul.compare-popular{columns:3 18rem;column-gap:var(--s5);margin:0 0 var(--s4);padding-left:1.2rem;font-size:var(--sm);}
ul.compare-popular li{break-inside:avoid;margin:2px 0;}
form.compare-pick input{min-width:14rem;}
/* Art 2026-10-08: the Simple table's header and filter row follow the page too (t.js moves the <thead>), and the
   "all providers of this model" filter sits in the Model column's own filter cell */
@media(min-width:641px){.models3 table.cards>thead{position:relative;z-index:4;}.models3 table.cards>thead th{position:static;}.models3 table.cards>thead td,.models3 table.cards>thead th{background:var(--bg);}.models3 table.cards:not(.full)>thead tr.col-filters>td{border-bottom:1px solid var(--bs);}}
.models3 tr.col-filters .mchip{display:flex;width:100%;justify-content:space-between;margin:0 0 2px;padding:0 .15rem 0 .45rem;border:1px solid var(--accent);box-shadow:0 0 0 1px var(--accent);border-radius:var(--r-pill);background:var(--info-bg);color:var(--info-text);font-size:.75rem;font-weight:600;line-height:1.5;}
.models3 tr.col-filters .mchip .fl{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
/* a premium provider's look inside a card (Art 2026-10-08): brand-coloured head and button, about the offer / company */
.seller-premium .button{background:var(--brand);border-color:var(--brand);color:#fff;}
.brand-card{margin:0 0 var(--s3);}
.brand-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);background:color-mix(in oklab,var(--brand) 14%,var(--card-bg));border-bottom:3px solid var(--brand);}
.brand-head .brand-pic{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:none;}
.brand-name{flex:1;min-width:0;display:flex;flex-direction:column;}
.brand-head .button{min-height:2rem;padding:.2rem .8rem;}
.brand-card .seller-banner{aspect-ratio:6/1;}
.brand-body{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));}
.brand-body h3{margin:0 0 .2rem;font-size:var(--sm);}
.brand-offer{display:flex;gap:var(--s2);align-items:flex-start;}
.brand-offer-pic{width:112px;height:64px;object-fit:cover;border-radius:var(--r-sm);flex:none;border:1px solid var(--bd);}
.brand-card .seller-gallery img{max-height:9rem;}
table.data.cards .brand-card img{width:auto;height:auto;}
table.data.cards .brand-card .brand-pic{width:44px;height:44px;}
table.data.cards .brand-card .brand-offer-pic{width:112px;height:64px;}
table.data.cards .brand-card .seller-banner img,table.data.cards .brand-card .seller-gallery img{width:100%;height:100%;object-fit:cover;}
td.open-card .brand-card .seller-banner{aspect-ratio:8/1;}
/* the open card is half a screen tall (at least 9 rows), Art 2026-10-08: charts, texts, the premium block scroll inside */
@media(min-width:641px){table.data{--open-h:max(calc(9 * var(--row-h)),55vh);}main table.data>tbody>tr.open,main table.data>tbody>tr.open:hover{height:var(--open-h);}main table.data>tbody>tr.open>td.open-card,main td.open-card>.card-body{height:calc(var(--open-h) - 1px);}}
/* a model's page (Art 2026-10-08): its card above the Models table filtered to it */
.entity-card{margin:0 0 var(--s3);padding:var(--s2) var(--s3);border:1px solid var(--card-border);border-radius:var(--r);background:var(--card-bg);}
.entity-card h1{margin-top:0;}
.entity-more>summary{cursor:pointer;color:var(--link);font-weight:600;min-height:2rem;display:flex;align-items:center;}
.entity-card .seller-banner{aspect-ratio:8/1;}
.entity-card .seller-gallery{grid-template-columns:repeat(6,minmax(0,1fr));}
.entity-card .seller-gallery img{max-height:7rem;}
.entity-family>summary{cursor:pointer;color:var(--link);font-weight:600;min-height:2rem;display:flex;align-items:center;}
.fam-tree{list-style:none;margin:0;padding:0;}
.fam-tree>li{display:flex;gap:var(--s2);align-items:baseline;padding:2px 0;border-top:1px dashed var(--bd);}
.fam-branch{flex:0 0 7rem;font-size:var(--sm);color:var(--tm);}
.fam-models{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px var(--s3);font-size:var(--sm);}
.fam-models li.here a{font-weight:700;color:var(--text);text-decoration:none;}
.entity-go{margin:var(--s2) 0;}
.entity-card .chart,.entity-card svg{max-width:100%;}
.entity-card .kicker{margin:0;font-size:var(--sm);color:var(--tm);text-transform:uppercase;letter-spacing:.04em;}
.base-pick{position:fixed;z-index:60;min-width:20rem;max-width:min(36rem,92vw);max-height:60vh;overflow:auto;background:var(--bg);border:1px solid var(--bs);border-radius:var(--r-sm);box-shadow:0 4px 16px #0003;padding:.25rem;}
.base-pick[hidden]{display:none;}
.base-pick-h{font-size:.75rem;color:var(--tm);padding:.15rem .4rem;text-transform:uppercase;letter-spacing:.04em;}
.base-pick button{display:block;width:100%;min-height:0;text-align:left;padding:.3rem .5rem;border:0;border-radius:var(--r-sm);background:none;color:var(--text);font-weight:600;font-size:var(--sm);}
.base-pick button .muted{font-weight:400;font-size:.75rem;}
.base-pick button.on,.base-pick button:hover{background:var(--card-open-bg);}
.fdrop-body .fdrop-q{position:sticky;top:0;z-index:1;display:block;width:100%;min-height:2rem!important;margin:0 0 .25rem;padding:.2rem .5rem!important;font-size:var(--sm);}
.fdrop-body label.opt[hidden]{display:none;}
/* the compare toggle of a row (Art 2026-10-08): bigger; off = grey, half transparent, framed; on = bright blue, framed */
table.data.cards td.card-actions button.cmp{min-width:2.2rem;min-height:2rem;padding:0 .3rem;font-size:1.3rem;line-height:1;color:var(--tm);opacity:.5;background:transparent;border:1.5px solid var(--bs);border-radius:var(--r-sm);}
table.data.cards td.card-actions button.cmp:hover{opacity:.85;}
table.data.cards td.card-actions button.cmp.on{opacity:1;color:#0b6bff;background:color-mix(in oklab,#0b6bff 14%,var(--bg));border-color:#0b6bff;box-shadow:0 0 0 1px #0b6bff;}
table.data.cards .card-actions{width:5.6rem;}

tr.col-filters .cf-x{position:relative;z-index:3}tr.col-filters .cf.on>input[type=text],tr.col-filters .cf.on>input[type=search]{min-width:2.5rem;width:calc(100% - 1.3rem)}
/* the simple view's filter row, tidy (Art 2026-10-08: the fields ran into each other) */main tr.col-filters input[type=text],main tr.col-filters input[type=search]{font-size:.72rem;height:1.6rem;min-height:0!important;padding:0 .35rem!important;min-width:2.6rem}main tr.col-filters details.fdrop>summary{font-size:.72rem;min-height:0!important;height:1.6rem;padding:0 .45rem}main tr.col-filters .cf{max-width:100%;min-width:0}main tr.col-filters td{overflow:visible}main.models3 table.data.cards:not(.full) th.card-actions{width:7.4rem}main.models3 table.data.cards:not(.full) th.c-region{width:4.6rem}main.models3 table.data.cards:not(.full) th.c-ctx-in,main.models3 table.data.cards:not(.full) th.c-ctx-out{width:4rem}main.models3 table.data.cards:not(.full) th.c-sub{width:4.6rem}main table.cards .spon{letter-spacing:.03em!important;padding-inline:.2rem!important}
main table.data.cards>tbody>tr:not(.open)>td:is(.c-in,.c-out,.c-sub,.c-cost){font-size:.9rem;color:var(--text)}main tr.col-filters .cf-apply button.apply{font-size:.78rem;min-height:0;height:1.7rem;padding:0 .6rem}
main tr.col-filters .cf-apply{flex-wrap:wrap;justify-content:flex-end;row-gap:3px;max-width:100%}main tr.col-filters .cf.on>details.fdrop{max-width:calc(100% - 1.3rem);min-width:0}main tr.col-filters .cf>details.fdrop>summary{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Art 2026-10-08: a tall Apply, reset above show-all on its right; each x in the top right corner of its own field */
main tr.col-filters span.cf-apply{display:inline-grid!important;grid-template-columns:auto 1.6rem;grid-template-rows:1.6rem 1.6rem;gap:3px;align-items:center;justify-items:center;flex-wrap:nowrap}
main tr.col-filters span.cf-apply>button.apply{grid-row:1/3;grid-column:1;height:calc(3.2rem + 3px);font-size:.95rem;padding:0 .9rem;border-radius:var(--r)}
main tr.col-filters span.cf-apply>.cf-reset{grid-column:2;grid-row:1}main tr.col-filters span.cf-apply>button.col-all{grid-column:2;grid-row:2}
main tr.col-filters .cf{position:relative}main tr.col-filters .cf>a.cf-x{position:absolute;top:-.42rem;right:-.42rem;width:.95rem;height:.95rem;font-size:.62rem;z-index:4;box-shadow:0 0 0 2px var(--bg)}
main tr.col-filters .cf.on>input[type=text],main tr.col-filters .cf.on>input[type=search]{width:100%}main tr.col-filters .cf.on>details.fdrop{max-width:100%}
main tr.col-filters input[type=text],main tr.col-filters input[type=search]{font-size:.66rem!important}
main tr.col-filters span.cf-apply{margin-left:.5rem}
main tr.col-filters input[type=text],main tr.col-filters input[type=search]{font-size:.875rem!important}
main tr.col-filters span.cf-apply{margin-left:.15rem}main tr.col-filters span.cf-apply>button.apply{padding:0 .7rem}
main .type-chips{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin:.15rem 0 .45rem}main .type-chips label.tchip{display:inline-flex;flex-direction:row;align-items:center;min-height:0;padding:.12rem .65rem;border:1px solid var(--bs);border-radius:999px;font-size:.8rem;line-height:1.3;color:var(--link);background:var(--bg);cursor:pointer;position:relative}main .type-chips label.tchip:hover{border-color:var(--accent)}main .type-chips label.tchip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}main .type-chips label.tchip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}main .type-chips label.tchip:focus-within{outline:2px solid var(--focus);outline-offset:1px}main .type-chips a.tchip-x{display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;border-radius:50%;background:var(--accent);color:var(--on-accent);text-decoration:none;font-size:.9rem;margin-left:.2rem}
/* the Full view: every column a fixed width (Art 2026-10-08: columns never move with the data or a filter's text) */main table.data.cards.full{table-layout:fixed;width:1px}main table.data.cards.full th[data-col=name]{width:15rem}main table.data.cards.full th[data-col=pic]{width:4.2rem}main table.data.cards.full th[data-col=seller]{width:8.5rem}main table.data.cards.full th[data-col=logo]{width:2.5rem}main table.data.cards.full th[data-col=variant]{width:12rem}main table.data.cards.full th[data-col=category]{width:6.5rem}main table.data.cards.full th[data-col=price_input]{width:7rem}main table.data.cards.full th[data-col=price_output]{width:7rem}main table.data.cards.full th[data-col=price_status]{width:6rem}main table.data.cards.full th[data-col=cost]{width:8rem}main table.data.cards.full th[data-col=price_cache_read]{width:7rem}main table.data.cards.full th[data-col=price_cache_write]{width:7rem}main table.data.cards.full th[data-col=price_unit]{width:7.5rem}main table.data.cards.full th[data-col=subscription]{width:7rem}main table.data.cards.full th[data-col=region]{width:5.5rem}main table.data.cards.full th[data-col=context]{width:6.5rem}main table.data.cards.full th[data-col=max_output]{width:6.5rem}main table.data.cards.full th[data-col=input_modalities]{width:9rem}main table.data.cards.full th[data-col=output_modalities]{width:7rem}main table.data.cards.full th[data-col=reasoning]{width:6rem}main table.data.cards.full th[data-col=quantization]{width:6.5rem}main table.data.cards.full th[data-col=params_total]{width:6.5rem}main table.data.cards.full th[data-col=params_active]{width:6.5rem}main table.data.cards.full th[data-col=features]{width:12rem}main table.data.cards.full th[data-col=api_endpoints]{width:12rem}main table.data.cards.full th[data-col=hf_model_id]{width:12rem}main table.data.cards.full th[data-col=expiration]{width:7rem}main table.data.cards.full th[data-col=max_input]{width:6.5rem}main table.data.cards.full th[data-col=capabilities]{width:12rem}main table.data.cards.full th[data-col=knowledge_cutoff]{width:7rem}main table.data.cards.full th[data-col=launched_at]{width:6.5rem}main table.data.cards.full th[data-col=data_policy]{width:8rem}main table.data.cards.full th[data-col=status]{width:6rem}main table.data.cards.full th[data-col=votes]{width:6rem}main table.data.cards.full th[data-col=checked]{width:8.5rem}main table.data.cards.full th[data-col=sponsor]{width:4.6rem}main table.data.cards.full>tbody>tr>td{overflow:hidden;overflow-wrap:anywhere}main table.data.cards.full tr.col-filters td{overflow:visible}main table.data.cards.full tr.col-filters input[type=text],main table.data.cards.full tr.col-filters input[type=search]{min-width:0;width:100%;box-sizing:border-box}main table.full span.cf-apply>button.apply{font-size:.8rem;padding:0 .45rem}
main table.full span.cf-apply>button.apply{font-size:.75rem;padding:0 .35rem}main table.full tr.col-filters>td[data-col=checked]{padding-left:.3rem}
main table.data.cards td.c-name a.base-line{display:block;font-size:.7rem;line-height:1.1;color:var(--tm);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}main table.data.cards td.c-name a.base-line:hover{color:var(--link);text-decoration:underline}main table.data.cards>tbody>tr:not(.open)>td.c-name{line-height:1.15}main table.data.cards.full th[data-col=base]{width:10rem}
main p.work-note{margin:.1rem 0 .4rem;padding:.3rem .6rem;font-size:.82rem;border-left:3px solid var(--warn-text);background:var(--warn-bg);color:var(--warn-text);border-radius:4px}
.pstat{font-size:.7rem;white-space:nowrap}.pstat.ok{color:var(--tm)}.pstat.warn{color:var(--warn-text);cursor:help}
