/* Department and business choices share one compact filter language. */
.classification-filters {
  --classification-collapsed-height:74px;
  --classification-selected-bg:var(--dafa-surface);
  --classification-selected-border:color-mix(in srgb,var(--dafa-accent) 65%,var(--dafa-border));
  --classification-selected-text:color-mix(in srgb,var(--dafa-accent) 55%,var(--dafa-text-soft));
  --classification-primary-selected-bg:color-mix(in srgb,var(--dafa-accent) 10%,var(--dafa-surface));
  margin:0; padding:20px 24px; position:relative; z-index:8; scroll-margin-top:90px;
  color:var(--dafa-text); background:var(--dafa-surface); border:0; border-radius:12px;
}
.classification-directory {display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:16px;align-items:start}
.classification-directory-toggle {display:none}
.classification-directory-panel {display:contents}
.classification-directory+.classification-directory {margin-top:14px}
.classification-directory-heading {display:flex;align-items:center;gap:8px;min-height:34px;line-height:20px}
.classification-directory-heading>span {color:var(--dafa-text);font-size:13px;font-weight:600;white-space:nowrap}
.classification-filters button,.classification-filters summary,.classification-pager button {
  font:inherit;font-size:13px;cursor:pointer;color:var(--dafa-text);background:transparent;border:1px solid transparent;
  border-radius:6px;padding:9px 12px;min-height:40px;line-height:1.5;box-shadow:none;
}
.classification-categories {display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.classification-categories button {display:inline-flex;align-items:center;text-align:left;padding:6px 10px;min-height:34px;white-space:nowrap;position:relative;border-radius:6px;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.classification-filters [data-business] {background:var(--dafa-surface);border-color:var(--dafa-border)}
.classification-filters [data-business=""] {color:var(--dafa-text);border-color:var(--dafa-border);background:var(--dafa-bg)}
.classification-filters [data-business=""][aria-pressed=true] {color:var(--dafa-text-soft);border-color:var(--dafa-border);background:var(--dafa-bg)}
.classification-filters [data-business]:not([data-business=""])[aria-pressed=true] {background:var(--classification-primary-selected-bg);border-color:var(--classification-selected-border);color:var(--classification-selected-text);font-weight:600}

.classification-filters button:hover,.classification-filters summary:hover {color:var(--dafa-accent-strong);background:var(--dafa-bg)}
.classification-refine {display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px 16px;margin-top:18px;padding-top:16px;border-top:1px solid var(--dafa-border)}
.classification-toolbar,.classification-more {display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.classification-more {grid-column:2;margin-top:0;padding:12px;border-radius:8px;background:var(--dafa-bg)}
.classification-facet {position:relative;min-width:0}
.classification-facet summary {display:flex;align-items:center;gap:7px;list-style:none;white-space:nowrap;background:var(--dafa-bg);border-color:transparent;min-height:36px;padding:7px 10px}
@media(min-width:641px) {
 .classification-toolbar {gap:6px}
 .classification-toolbar>.classification-facet>summary {padding-inline:8px}
 .classification-refine-heading {align-self:start;min-height:36px}
}
.classification-facet summary::-webkit-details-marker {display:none}
.classification-facet summary:after {content:'';width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 2px 3px 8px}
.classification-facet[open] summary:after {transform:rotate(225deg);margin-bottom:0}
.classification-facet.has-selection summary,.classification-facet[open] summary {border-color:var(--classification-selected-border)}
.classification-facet.has-selection summary {color:var(--classification-selected-text);background:var(--dafa-surface);font-weight:500}
.classification-facet [data-legacy-selected]:empty,.classification-facet [data-selected]:empty,[data-filter-count]:empty {display:none}
.classification-facet [data-legacy-selected],.classification-facet [data-selected] {font-size:12px;line-height:18px;max-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--classification-selected-text)}
[data-filter-count] {font-size:11px;line-height:18px;min-width:18px;text-align:center;border-radius:4px;background:var(--classification-selected-bg);color:var(--classification-selected-text)}
.classification-options {position:absolute;top:calc(100% + 8px);left:0;width:300px;max-width:calc(100vw - 48px);max-height:min(420px,60dvh);display:flex;flex-direction:column;background:var(--dafa-surface-elevated);border:1px solid var(--dafa-border);box-shadow:var(--dafa-shadow);border-radius:10px;padding:10px;z-index:12}
.classification-option-list {overflow:auto;overscroll-behavior:contain;min-height:0}
.classification-options label {display:flex;gap:10px;padding:10px;min-height:42px;align-items:center;font-size:13px;line-height:1.6;cursor:pointer;border-radius:5px}
.classification-options label:hover {background:var(--dafa-bg)}
.classification-options label:has(input:checked) {background:var(--classification-selected-bg);color:var(--classification-selected-text)}
.classification-options input:is([type=checkbox],[type=radio]) {flex:0 0 auto;width:16px;height:16px;margin:0;accent-color:var(--dafa-accent)}
.classification-option-search {flex-shrink:0;display:block;width:100%;max-width:100%;min-height:42px;box-sizing:border-box;border:1px solid var(--dafa-border);border-radius:6px;padding:9px 10px;margin-bottom:8px;background:var(--dafa-surface);color:var(--dafa-text);font:inherit;font-size:14px}
.classification-option-search::placeholder {color:var(--dafa-text-soft);opacity:1}
.classification-option-actions {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;margin-top:8px;padding:10px 2px 0;border-top:1px solid var(--dafa-border)}
.classification-filters .classification-done {min-height:34px;padding:6px 18px;background:var(--dafa-accent);color:var(--dafa-on-accent)}
.classification-filters .classification-done:hover {background:var(--dafa-accent-strong);color:var(--dafa-on-accent)}
.classification-filters [data-facet-clear] {min-height:34px;padding:6px 8px;font-size:12px;color:var(--dafa-text-soft)}
.classification-filters [data-facet-clear]:disabled {opacity:.45;cursor:default;background:transparent}
.classification-filters :is(.classification-expand,[data-classification-more]) {display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;font-size:12px;color:var(--dafa-text-soft);padding:6px;min-height:34px}
.classification-filters :is(.classification-expand,[data-classification-more]):after {content:'+';font-size:17px;line-height:1;width:12px;text-align:center}
.classification-filters :is(.classification-expand,[data-classification-more])[aria-expanded=true]:after {content:'−'}
.classification-filters [data-classification-more] {margin-left:auto}
/* Price and file type keep their native menus and server-generated URLs. */
body .archive-page .classification-filters .news-filter-select {flex:0 1 auto;min-width:0;max-width:none}
body .archive-page .classification-filters .news-filter-select__toggle {min-height:40px;border:1px solid var(--dafa-border);border-radius:6px;background:var(--dafa-surface);padding:8px 11px;gap:7px;font-size:13px;grid-template-columns:auto auto auto}
body .archive-page .classification-filters .news-filter-select__label {font-size:13px;color:var(--dafa-text)}
body .archive-page .classification-filters .news-filter-select__value {font-size:12px;color:var(--dafa-text-soft)}
body .archive-page .classification-filters :is(.news-filter-select__label,.news-filter-select__value) {transform:none;line-height:20px}
body .archive-page .classification-filters .news-filter-select.has-selection .news-filter-select__toggle {border-color:var(--classification-selected-border);background:var(--classification-selected-bg)}
body .archive-page .classification-filters .news-filter-select__panel {border-radius:10px}
.classification-selected {display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:16px;padding-top:14px;border-top:1px solid var(--dafa-border)}
.classification-selected:before {content:'已选条件';width:82px;flex-shrink:0;color:var(--dafa-text-soft);font-size:12px}
.classification-filters .classification-chip {display:inline-flex;align-items:center;gap:10px;max-width:100%;min-height:30px;padding:4px 8px;border-color:var(--dafa-border);background:var(--dafa-bg);color:var(--dafa-text);font-size:12px;text-align:left;overflow-wrap:anywhere}
.classification-chip span {font-size:17px;line-height:1;color:var(--dafa-text-soft)}
.classification-filters [data-classification-clear] {min-height:30px;padding:4px 8px;margin-left:auto;color:var(--dafa-text-soft);font-size:12px}
.classification-filters [data-classification-clear]:hover {text-decoration:underline}
/* 0.5.412: one results-toolbar row on every screen size.
   0.5.409-0.5.411 switched the row at the 640px media boundary: phones stacked
   排序 / 方向 / 视图 under the status, hid the 排序 / 方向 labels, widened the
   value column to 5em and grew the controls to 44px. A phone therefore showed a
   different control than a desktop did, and the switch was a jump.
   Every one of those values is now a ramp inside the toolbar, which is its own
   inline-size container. Each ramp starts at the phone value and reaches the
   exact 0.5.411 desktop value by a 560-585px content box, so a 768px-and-wider
   archive renders pixel for pixel as before while a phone keeps the labels, the
   order and the desktop geometry. Padding and margin sit on the container
   itself, where container units would be circular, so those two ramps read the
   viewport instead. The trailing padding reaches its 10px floor at 320px so the
   status keeps the width it needs to stay on one line. --toolbar-control is read
   by the toggle, the view toolbar and the view toggle. */
body .archive-page .classification-results-toolbar {margin:clamp(16px,calc(9.36px + 1.66vw),20px) 0 0;padding:clamp(10px,calc(5.8px + 1.31vw),14px) clamp(10px,calc(-4px + 4.375vw),24px);background:var(--dafa-surface);border:0;border-bottom:1px solid var(--dafa-border);border-radius:10px 10px 0 0;position:relative;z-index:7;container-type:inline-size;--toolbar-control:clamp(36px,calc(59.95px - 4.1cqi),44px)}
body .classification-results-toolbar .news-filter-controls {display:flex;align-items:center;gap:clamp(3px,calc(-2.77px + 1.92cqi),8px);flex-wrap:wrap}
.classification-status {flex:1 1 150px;min-width:0;font-size:15px;font-weight:600;color:var(--dafa-text);margin:0;line-height:1.6;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.classification-status:empty {display:none}
/* The status is the only item allowed to give way: it balances its sentence across
   two lines instead of shrinking the controls, and its 3em floor keeps the row on
   one line until the controls and the count truly cannot share 300px - a physical
   limit, not a breakpoint. */
body .classification-results-toolbar .classification-status {flex:1 1 3em;min-width:min(100%,3em);font-size:clamp(9px,calc(3.9px + 1.98cqi),15px);text-wrap:balance}
body .archive-page .classification-results-toolbar .news-filter-select {flex:0 0 auto;min-width:0;margin-left:0}
/* 0.5.409: the results-toolbar triggers (排序 / 方向 / 视图) read as quiet text on
   the toolbar surface instead of framed buttons; the 新闻 and 资料 archives both
   asked for the same treatment. A frame only appears as a hover / focus / open
   surface, and the dropdown panels keep their own border because they are menus. */
body .archive-page .classification-results-toolbar .news-filter-select__toggle {display:flex;border:1px solid transparent;border-radius:6px;background:transparent;height:var(--toolbar-control);min-height:var(--toolbar-control);padding:6px clamp(1px,calc(-6.96px + 2.65cqi),8px);font-size:clamp(9.4px,calc(5.5px + 1.33cqi),13px);gap:clamp(2px,calc(-2.55px + 1.52cqi),6px)}
body .archive-page .classification-results-toolbar .news-filter-select__label {flex:0 0 auto}
body .archive-page .classification-results-toolbar .news-filter-select__chevron {flex:0 0 auto;width:clamp(8px,calc(4.7px + 1.3cqi),12px);height:clamp(8px,calc(4.7px + 1.3cqi),12px)}
body .archive-page .classification-results-toolbar :is(.news-filter-select__label,.news-filter-select__value) {transform:translateY(-1px);align-self:center;line-height:20px}
body .archive-page .classification-results-toolbar .news-filter-select__panel {left:auto;right:0}
body .classification-results-toolbar .news-filter-controls>.archive-view-toolbar {flex:0 0 auto;width:auto;min-height:var(--toolbar-control);margin-left:0;padding-left:0;border:0}
body .classification-results-toolbar .archive-view-toggle {flex:0 0 auto;flex-basis:var(--toolbar-control);width:var(--toolbar-control);height:var(--toolbar-control);min-width:var(--toolbar-control);min-height:var(--toolbar-control);border:1px solid transparent;border-radius:6px;color:var(--dafa-text-soft);background:transparent}
body .classification-results-toolbar .archive-view-toggle svg {width:18px;height:18px}
body .archive-page .classification-results-toolbar :is(.news-filter-select__toggle,.archive-view-toggle):is(:hover,:focus-visible) {border-color:transparent;background:var(--dafa-bg);color:var(--dafa-text)}
body .archive-page .classification-results-toolbar .news-filter-select.is-open .news-filter-select__toggle {border-color:transparent;background:var(--dafa-bg);color:var(--dafa-accent-strong)}
body .classification-results-toolbar :is(.news-filter-select__toggle,.archive-view-toggle):focus-visible {outline:2px solid var(--dafa-accent);outline-offset:3px}
body .archive-page .classification-results-toolbar:has(+ .archive-results[data-dafa-archive-view="grid"]) {margin-bottom:16px;border:0;border-radius:10px}
.classification-meta {display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;order:1;min-width:0;margin-bottom:8px}
.classification-labels {font-size:12px;line-height:1.6;color:var(--dafa-text-soft);margin:0;overflow-wrap:anywhere;min-width:0}
.classification-match {display:inline-flex;flex:0 0 auto;align-items:center;padding:2px 6px;border-radius:4px;background:var(--dafa-surface-muted);color:var(--dafa-text-soft);font-size:11px;line-height:1.5;white-space:nowrap}
.classification-match[data-match="可能适用"] {background:transparent;border:1px dashed var(--dafa-border)}
.classification-pager {display:flex;gap:14px;justify-content:center;margin:22px 0}
.classification-pager button {border-color:var(--dafa-border);background:var(--dafa-surface)}
.classification-pager button:disabled {opacity:.45;cursor:default}
.classification-empty {grid-column:1/-1;padding:48px 20px;text-align:center;color:var(--dafa-text-soft)}
.classification-details {margin:24px 0;padding:18px;border:1px solid var(--dafa-border);border-radius:8px;font-size:13px;background:var(--dafa-surface);color:var(--dafa-text)}
.classification-details dl {margin:12px 0 0}
.classification-details dl>div {display:flex;gap:18px;margin:7px 0}
.classification-details dt {flex:0 0 98px;color:var(--dafa-text-soft)}
.classification-details dd {margin:0;overflow-wrap:anywhere}
.classification-filters [hidden],.classification-pager[hidden],.archive-results [data-dafa-pagination][hidden] {display:none!important}
.classification-filters :focus-visible,.classification-pager :focus-visible {outline:2px solid var(--dafa-accent);outline-offset:3px}
.classification-filters .classification-mobile-toggle {display:none}
/* Keep the previous result readable while a new query is in flight. */
@media(max-width:640px) {
 .classification-filters {padding:16px;border-radius:10px}
 .classification-directory {grid-template-columns:minmax(0,1fr) auto;gap:8px}
 .classification-directory-toggle {display:none}
 .classification-directory-panel {display:contents}
 html[data-directory-collapse-ready] .classification-directory {display:block}
 html[data-directory-collapse-ready] .classification-directory-toggle {display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:10px 12px;border-color:transparent;background:var(--dafa-bg);text-align:left;font-size:13px}
 html[data-directory-collapse-ready] .classification-directory-toggle:after {content:'+';font-size:18px;line-height:1}
 html[data-directory-collapse-ready] .classification-directory-toggle[aria-expanded=true]:after {content:'−'}
 html[data-directory-collapse-ready] .classification-directory-toggle [data-directory-count]:not(:empty) {display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:auto;border-radius:4px;background:var(--classification-selected-bg);color:var(--classification-selected-text);font-size:11px}
 html[data-directory-collapse-ready] .classification-directory-panel {display:none}
 html[data-directory-collapse-ready] .classification-directory.is-open .classification-directory-panel {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}
 html[data-directory-collapse-ready] .classification-directory-panel>.classification-directory-heading {grid-column:1;grid-row:1;align-self:start}
 html[data-directory-collapse-ready] .classification-directory-panel>.classification-directory-heading>span {display:none}
 html[data-directory-collapse-ready] .classification-directory-panel>.filter-selection-actions {grid-column:2;grid-row:1;align-self:end}
 html[data-directory-collapse-ready] .classification-directory-panel>.classification-categories {grid-column:1/-1;grid-row:2}
 .classification-directory>.classification-directory-heading {grid-column:1;grid-row:1;align-self:center;margin:0}
 .classification-directory>.classification-expand {grid-column:2;grid-row:1;min-height:40px}
 .classification-categories {grid-column:1/-1;grid-row:2}
 .classification-directory+.classification-directory {margin-top:16px}
 .classification-directory-heading {min-height:0;margin-bottom:10px}
 .classification-categories {display:flex;flex-wrap:wrap;gap:6px;min-width:0}
 .classification-categories button {padding:6px 10px;font-size:12px;min-height:36px;white-space:nowrap}
 /* 0.5.411: the phone fold row is part of the frameless filter card family -
    its own var(--dafa-bg) fill already separates it from the card surface, so
    the outline was a second frame nobody asked for. Only border-color moves;
    the fill, the 44px target, the +/- affordance and the hover / focus colour
    change all stay. */
 .classification-filters .classification-mobile-toggle {display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:12px;border-color:transparent;background:var(--dafa-bg);font-size:13px}
 .classification-mobile-toggle:after {content:'+';margin-left:auto;font-size:18px}
 .classification-mobile-toggle[aria-expanded=true]:after {content:'−'}
 .classification-refine:not(.is-expanded) {display:none}
 .classification-refine {display:block;margin-top:12px;padding-top:0;border:0}
 .classification-refine-heading {display:none}
 .classification-toolbar,.classification-more {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch}
 .classification-more {padding:8px;margin-top:8px}
 .classification-facet,.classification-filters .news-filter-select {position:static}
 .classification-facet summary {position:relative;min-height:44px;height:100%;width:100%;padding:9px 26px 9px 10px;font-size:12px;gap:2px;flex-wrap:wrap}
 .classification-facet [data-selected],.classification-facet [data-legacy-selected] {flex-basis:100%;max-width:100%;font-size:11px}
 .classification-facet summary:after {position:absolute;right:12px;top:18px;margin:0}
 .classification-options {left:12px;right:12px;top:auto;width:auto;max-width:none;max-height:min(390px,55dvh);margin-top:6px}
 body .archive-page .classification-filters .news-filter-select__toggle {min-height:44px;padding:9px 10px;gap:4px}
 body .archive-page .classification-filters .news-filter-select__label {font-size:12px}
 body .archive-page .classification-filters .news-filter-select__panel {top:auto;left:12px;right:12px;width:auto;min-width:0;margin-top:6px}
 .classification-filters [data-classification-more] {grid-column:1/-1;justify-self:end;margin:0;min-height:36px}
 .classification-filters .classification-chip,.classification-filters [data-classification-clear] {min-height:36px}
 .classification-selected {margin-top:12px;padding-top:12px}
 .classification-selected:before {width:100%}
 /* 0.5.412: the results toolbar row is container-measured now, so this phone
    block keeps only the filter-card, facet and pager rules. */
 .classification-details dl>div {gap:8px}
 .classification-details dt {flex-basis:86px}
 .classification-meta {gap:5px;margin-bottom:6px}
 .classification-labels {font-size:11px}
}
/* Bound document previews before lazy images acquire their intrinsic height. */
.classification-filters ~ .archive-results[data-dafa-archive-view="list"] .entry-card__media {position:relative;aspect-ratio:16/10}
.classification-filters ~ .archive-results[data-dafa-archive-view="list"] .entry-card__media img {position:absolute;inset:0;width:100%;height:100%}
@media(max-width:640px) {
 .classification-filters ~ .archive-results[data-dafa-archive-view="list"] .entry-card__media {aspect-ratio:4/3}
}

/* A random sequence has no ascending or descending direction. */
body .classification-results-toolbar [data-resource-order] .news-filter-select__toggle:disabled {opacity:.55;cursor:default}

/* Result navigation is independent of filter choices. */
.classification-pager {align-items:center;flex-wrap:wrap;gap:10px}
.classification-page-status {font-size:13px;color:var(--dafa-text-soft);font-variant-numeric:tabular-nums}
.classification-page-jump {display:flex;align-items:center;gap:6px;margin:0}
.classification-page-jump input {width:64px;min-height:40px;border:1px solid var(--dafa-border);border-radius:6px;padding:6px;background:var(--dafa-surface);color:var(--dafa-text);font:inherit;font-size:13px}
.classification-error {padding:16px;margin-bottom:16px;border:1px solid var(--dafa-border);border-radius:8px;background:var(--dafa-bg)}
.classification-error[hidden] {display:none!important}
.classification-error p {margin:0 0 8px;font-size:14px}
.classification-empty button,.classification-error button {min-height:40px;padding:8px 12px;margin:4px;border:1px solid var(--dafa-border);border-radius:6px;background:var(--dafa-surface);color:var(--dafa-text);font:inherit;font-size:13px;cursor:pointer}
.classification-empty button:focus-visible,.classification-error button:focus-visible {outline:2px solid var(--dafa-accent);outline-offset:3px}
.classification-options label span {min-width:0;overflow-wrap:anywhere}
.classification-results-toolbar {scroll-margin-top:90px}
@media(max-width:640px) {
 .classification-options label,.classification-pager button,.classification-empty button,.classification-error button {min-height:44px}
 .classification-filters .classification-directory button,.classification-filters .classification-chip,.classification-filters [data-classification-clear],.classification-filters [data-facet-clear],.classification-filters .classification-done,.classification-filters [data-classification-more] {min-height:44px}
 .classification-page-jump {flex-basis:100%;justify-content:center}
}

/* These first-frame rules match the hydrated layout before the deferred script runs. */
.dafa-js:not(.dafa-files-fallback) .classification-legacy-source {display:none!important}
.dafa-js:not(.dafa-files-fallback) .classification-directory:not(:has([data-directory-expand][aria-expanded=true])) .classification-categories {flex-wrap:wrap;max-height:var(--classification-collapsed-height);overflow:clip}
.classification-categories button {flex-shrink:0;height:34px;box-sizing:border-box}
.classification-selected {min-height:45px}
.dafa-files-selected .classification-filters .classification-selected[hidden] {display:flex!important;visibility:hidden}
/* Reserve the existing sidebar proportion even while HTML is still streaming. */
body.category-files .content-shell.has-sidebar:not(:has(> .sidebar)):after {content:'';min-width:min(100%,19.375rem);flex:1 1 19.375rem}
.dafa-files-pending .classification-filters ~ .archive-results {position:relative;min-height:420px}
.dafa-files-pending .classification-filters ~ .archive-results :is(.entry-grid,[data-dafa-pagination],.classification-pager) {display:none!important}
.dafa-files-pending .classification-filters ~ .archive-results:before {content:'正在加载所选资料…';display:flex;align-items:center;justify-content:center;height:360px;color:var(--dafa-text-soft);font-size:14px;background:var(--dafa-surface);border-radius:10px}
.dafa-files-pending .classification-status {visibility:hidden}
/* 0.5.412: the value column reserve used to switch from 5em to 3em at the 640px
   media boundary, which is why the phone row was wider than the same row on a
   desktop. One container ramp replaces both floors: 0 for a phone-sized row and
   exactly the old 3em from a 560px content box up, so the desktop row keeps its
   previous geometry. */
body .classification-results-toolbar [data-news-filter-select]:not([data-resource-order]) .news-filter-select__value {min-width:clamp(0px,calc(3em + 17cqi - 95px),3em)}
body .classification-results-toolbar [data-resource-order] .news-filter-select__value {min-width:clamp(0px,calc(3em + 17cqi - 95px),3em)}
html:not(.dafa-js) .classification-filters,.dafa-files-fallback .classification-filters {display:none}
html:not(.dafa-js) .classification-legacy-source .news-filter-select__panel[hidden],.dafa-files-fallback .classification-legacy-source .news-filter-select__panel[hidden] {display:flex!important;position:static;flex-wrap:wrap}
@media(max-width:640px) {
 .classification-filters {--classification-collapsed-height:78px}
 .classification-categories button {height:36px}
 .classification-filters .classification-directory .classification-categories button {height:36px;min-height:36px;padding:6px 10px}
 .classification-selected {min-height:72px}
 .classification-filters .classification-selected :is(.classification-chip,[data-classification-clear],[data-news-clear]) {min-height:34px;padding:4px 7px;line-height:1.35}
 .classification-filters .classification-selected .classification-chip {gap:6px}
 .classification-filters .classification-selected .classification-chip span {font-size:15px}
}

/* Reserve the same control width when expanding and collapsing. */
.classification-expand {inline-size:6.5em}
.classification-filters :is(.classification-expand,.news-filter-directory__expand):disabled {cursor:default;color:var(--dafa-text-soft);background:transparent;opacity:1}

/* Facet counts: a fixed pill that never steals width from the option label. */
.classification-filters .classification-count {
  flex:0 0 auto;white-space:nowrap;margin-left:auto;padding:1px 6px;border-radius:999px;
  background:var(--dafa-bg);color:var(--dafa-text-soft);font-size:11px;font-weight:400;
  line-height:16px;font-variant-numeric:tabular-nums;letter-spacing:0
}
.classification-filters [data-business] {gap:6px;min-width:0}
.classification-filters [data-business]>.classification-label {
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.classification-filters [data-business]>.classification-count {margin-left:0;background:transparent;padding-inline:0}
.classification-options label>.classification-count {margin-left:auto;background:var(--dafa-bg)}
.classification-options label:has(input:checked)>.classification-count {
  background:color-mix(in srgb,var(--dafa-surface) 70%,transparent)
}
.classification-options label>span:not(.classification-count) {flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
/* A choice with no result in the current combination stays visible but cannot be picked. */
.classification-filters [data-business]:disabled {
  opacity:.45;cursor:not-allowed;background:var(--dafa-surface);border-color:var(--dafa-border);color:var(--dafa-text)
}
.classification-filters [data-business]:disabled:hover {
  background:var(--dafa-surface);border-color:var(--dafa-border);color:var(--dafa-text)
}
.classification-options label.is-empty {opacity:.45;cursor:not-allowed}
.classification-options label.is-empty:hover {background:transparent}
.classification-options label.is-empty input {cursor:not-allowed}
.classification-notice {
  margin:12px 0 0;padding:8px 12px;border:1px solid var(--dafa-border);border-radius:6px;
  background:var(--dafa-bg);color:var(--dafa-text-soft);font-size:12px;line-height:1.6
}
@media(max-width:640px) {
  .classification-filters {--classification-collapsed-height:120px}
  .classification-filters .classification-count {font-size:10px;padding-inline:4px}
  .classification-options label>.classification-count {padding-inline:5px}
}

/* News uses the same filter card, selected strip and result toolbar as resources. */
body .archive-page .news-filter-form[data-news-unified] {padding:0;margin:0 0 0;background:transparent;border:0;box-shadow:none}
[data-news-unified] .news-filter-directory__expand {inline-size:6.5em}
.dafa-js [data-news-unified] .news-filter-directory__choices {max-height:var(--classification-collapsed-height)}
[data-news-unified] .classification-selected button {text-decoration:none;border:1px solid transparent;border-radius:6px;line-height:1.5;cursor:pointer}
[data-news-unified] .classification-selected .classification-chip {border-color:var(--dafa-border)}
[data-news-unified] .classification-selected button:hover {color:var(--dafa-accent-strong);background:var(--dafa-bg)}
[data-news-unified] .classification-selected [data-news-clear] {display:inline-flex;align-items:center}
[data-news-unified] .news-filter-directory .news-filter-chip:has(input:checked) {background:var(--classification-primary-selected-bg)}
body .archive-page [data-news-unified] .classification-results-toolbar .news-filter-controls {padding:0;margin:0;border:0}
body .archive-page [data-news-unified] .classification-results-toolbar .news-filter-select {margin-left:0}
body .archive-page [data-news-unified] .classification-results-toolbar .news-filter-select__toggle:disabled {opacity:.55;cursor:default}
[data-news-unified] .classification-error {margin-top:12px}
body .archive-page [data-news-unified]:has(+ .archive-results[data-dafa-archive-view="grid"]) .classification-results-toolbar {margin-bottom:16px;border:0;border-radius:10px}
@media(max-width:640px) {
 [data-news-unified] .news-filter-directory .news-filter-chip {height:36px;min-height:36px;padding:6px 10px}
 [data-news-unified] .news-filter-directory .news-filter-directory__expand {min-height:44px}
 [data-news-unified] .news-filter-directory+.news-filter-directory {margin-top:16px}
 [data-news-unified] .classification-selected button {min-height:44px}
 .dafa-js [data-news-unified] .news-filter-directory:has([data-news-directory-expand][aria-expanded=true]) .news-filter-directory__choices,
 .dafa-loading-fallback [data-news-unified] .news-filter-directory:not([data-news-directory-ready]) .news-filter-directory__choices {max-height:none}
}

html:not(.dafa-js) [data-news-selected] {display:none}

/* Selection modes share the same quiet control in both archives. */
.filter-selection-actions {display:flex;align-items:center;gap:4px}
/* Reserve control space from first paint; only show expand when folding hides choices. */
.classification-directory .classification-expand,
[data-news-unified] .news-filter-directory__expand {visibility:hidden;pointer-events:none}
.classification-directory[data-directory-overflow="true"] .classification-expand,
[data-news-unified] .news-filter-directory[data-directory-overflow="true"] .news-filter-directory__expand {visibility:visible;pointer-events:auto}
/* Keep the title on the first choice centerline and group the mode closely below it. */
body .archive-page [data-news-unified] .news-filter-directory__heading,
.classification-directory>.classification-directory-heading {display:grid;grid-template-rows:20px 34px;align-items:center;justify-items:start;gap:0;min-height:0;margin:0;padding-top:7px;line-height:20px}
/* The importance group is the only news group without a selection-mode control.
   With the fixed second row reserved for that control the group would be 61px
   tall while its single chip row is 34px, leaving an empty band above the next
   group. An auto second row collapses to 0 when nothing occupies it and still
   measures 34px/44px wherever a mode control exists. (release 0.5.387) */
body .archive-page [data-news-unified] .news-filter-directory--flags .news-filter-directory__heading {grid-template-rows:20px auto}
@media(min-width:641px) {
 body .archive-page [data-news-unified] .news-filter-directory {grid-template-columns:72px minmax(0,1fr) auto}
 .classification-directory-panel>.classification-directory-heading {display:grid;grid-template-columns:1fr;grid-template-rows:20px 34px;align-items:center;justify-items:start;gap:0;min-height:0;margin:0;padding-top:7px;line-height:20px}
}
.classification-filters .filter-selection-mode {display:inline-flex;align-items:center;justify-content:center;gap:6px;inline-size:5.5em;min-height:34px;box-sizing:border-box;margin:0;padding:6px;white-space:nowrap;font-size:12px;font-weight:400;line-height:1.5;color:var(--dafa-text-soft);cursor:pointer;user-select:none}
.classification-filters .filter-selection-mode input {appearance:auto;flex:0 0 15px;width:15px;height:15px;margin:0;accent-color:var(--classification-selected-text);cursor:inherit}
.classification-filters :is(.classification-directory-heading,.news-filter-directory__heading)>.filter-selection-mode {justify-content:flex-start;padding-inline:0}
.classification-filters .filter-selection-mode:has(input:checked) {color:var(--classification-selected-text)}
.filter-selection-heading {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding-bottom:8px;border-bottom:1px solid var(--dafa-border);flex-shrink:0;font-size:12px;color:var(--dafa-text-soft)}
[data-selection-multiple=true] :is(button[data-selection-option][aria-pressed=true],label.news-filter-chip:has(input:checked)):after {content:'✓';position:absolute;right:2px;top:1px;font-size:9px;line-height:1;color:var(--classification-selected-text);pointer-events:none}
html:not(.dafa-js) .filter-selection-mode {display:none}
/* Align each row on its centerline, including different text sizes and icons. */
.classification-filters :is(.classification-categories button,.classification-facet>summary,.filter-selection-mode,.classification-expand,[data-classification-more]),
body .archive-page [data-news-unified] :is(.news-filter-chip,.news-filter-directory__expand) {line-height:20px}
body .archive-page [data-news-unified] .news-filter-chip :is(span,small),
.classification-filters .filter-selection-mode>span {display:inline-flex;align-items:center;line-height:20px}
/* One optical text offset for the whole row; checkbox and icon boxes stay centered.
   Full line boxes avoid clipping CJK fallback fonts or mixing cap-height metrics. */
body .archive-page [data-news-unified] .news-filter-chip,
.classification-filters :is(.classification-categories button,.classification-expand,[data-classification-more]),
body .archive-page [data-news-unified] .news-filter-directory__expand {padding-block:5px 7px}
body .archive-page [data-news-unified] .news-filter-chip :is(span,small) {line-height:20px;transform:none}
body .archive-page [data-news-unified] .filter-directory-label,
.classification-filters :is(.classification-directory-heading>span,.filter-selection-mode>span) {transform:translateY(-1px)}
/* Draw +/- around the control center instead of using a font-dependent baseline. */
.classification-filters :is(.classification-expand,.news-filter-directory__expand,[data-classification-more]) {position:relative;padding-inline-end:25px}
.classification-filters :is(.classification-expand,.news-filter-directory__expand,[data-classification-more]):after {content:'';position:absolute;inset-inline-end:6px;top:50%;width:10px;height:10px;transform:translateY(-50%);background:linear-gradient(currentColor,currentColor) center/10px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 10px no-repeat}
.classification-filters :is(.classification-expand,.news-filter-directory__expand,[data-classification-more])[aria-expanded=true]:after {content:'';background-size:10px 1.5px,0 0}
@media(max-width:640px) {
 .classification-directory>.filter-selection-actions,.news-filter-directory>.filter-selection-actions {grid-column:2;grid-row:1}
 .classification-filters .filter-selection-mode {min-height:44px}
 body .archive-page [data-news-unified] .news-filter-directory__heading,
 .classification-directory>.classification-directory-heading {grid-template-rows:20px 44px;padding-top:0;align-self:start}
 .classification-directory>.filter-selection-actions,.news-filter-directory>.filter-selection-actions,
 body .archive-page [data-news-unified] .news-filter-directory>.news-filter-directory__expand {align-self:end}
}
/* 0.5.399: on phones every news facet group folds on its own — 平台 and 类型 are
   two separate rows, the same contract the resource archive facets use. Desktop
   keeps every group inline, so the per-group wrapper has to stay out of the way
   there: display:contents leaves the heading, the choices and the expand button
   exactly where the group grid already expects them. */
@media(min-width:641px) {
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine {display:contents}
}
@media(max-width:640px) {
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-mobile-toggle {grid-column:1/-1;grid-row:1;margin-top:0}
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine.is-expanded {display:grid;grid-column:1/-1;grid-row:2;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0;padding:0;border:0}
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine>.filter-selection-actions {grid-column:2;grid-row:1;align-self:end}
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine>.news-filter-directory__heading {grid-template-rows:auto 44px}
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine>.news-filter-directory__heading>.filter-directory-label {display:none}
 body .archive-page [data-news-filter-collapse] .news-filter-directory>.classification-refine>.news-filter-directory__heading>.filter-selection-mode {grid-row:2}
 /* 0.5.472: the two collapsed news facets share one phone row. Opening either
    facet returns both groups to the full-width layout so choices keep usable
    targets instead of being squeezed into half a phone. */
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse] {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  align-items:start;
 }
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse]:has(
  >.news-filter-directory>.classification-mobile-toggle[aria-expanded=true]
 ) {grid-template-columns:minmax(0,1fr)}
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse]>.news-filter-directory {min-width:0}
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse]>.news-filter-directory+.news-filter-directory {margin-top:0}
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse]>.classification-selected,
 body .archive-page [data-news-unified] .classification-filters[data-news-filter-collapse]>.classification-error {grid-column:1/-1}
}
@media(max-width:640px) {
  /* 0.5.473: match the news archive's compact phone filter row. The business
     directory and the "other filters" trigger share one row while collapsed;
     opening either one restores the full-width stacked layout. */
  body.category-files .classification-filters[data-classification-layout="business-first"] {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-items:start;
  }
  body.category-files .classification-filters[data-classification-layout="business-first"]:has(
    >.classification-directory.is-open,
    >.classification-mobile-toggle[aria-expanded=true]
  ) {
    grid-template-columns:minmax(0,1fr);
  }
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-directory,
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-mobile-toggle {
    min-width:0;
  }
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-mobile-toggle {
    margin-top:0;
  }
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-refine {
    grid-column:1/-1;
    margin-top:0;
  }
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-selected,
  body.category-files .classification-filters[data-classification-layout="business-first"]>.classification-error {
    grid-column:1/-1;
  }
}
/* 重要程度/风险等级 sit directly in the results toolbar, matching the resource
   archive controls between the result count and the sort controls. */
body .archive-page .classification-results-toolbar .news-filter-levels {display:contents}
body .archive-page .classification-results-toolbar .news-filter-levels .news-filter-select {margin-left:0}
body .archive-page .news-filter-levels .news-filter-select--levels .news-filter-select__label {display:inline}
body .archive-page .news-filter-levels .news-filter-select--levels .news-filter-select__value.has-selection {color:var(--dafa-accent-strong);font-weight:600}
body .archive-page .news-filter-levels .news-filter-select--levels > .news-filter-select__panel {width:192px;min-width:0;max-width:calc(100vw - 32px)}
body .archive-page .news-filter-levels .news-filter-select--levels:first-child > .news-filter-select__panel {left:0;right:auto}
body .archive-page .news-filter-levels .news-filter-select--levels:last-child > .news-filter-select__panel {left:auto;right:0}
body .archive-page .news-filter-levels .news-filter-select--levels {
  --classification-selected-bg:var(--dafa-surface);
  --classification-selected-border:color-mix(in srgb,var(--dafa-accent) 65%,var(--dafa-border));
  --classification-selected-text:color-mix(in srgb,var(--dafa-accent) 55%,var(--dafa-text-soft));
}
body .archive-page .news-filter-levels .news-filter-select--levels :is(.filter-selection-heading,.classification-option-actions) {padding-inline:2px}
body .archive-page .news-filter-levels .news-filter-select--levels .filter-selection-heading {gap:8px;margin:0 0 6px;padding-bottom:8px}
body .archive-page .news-filter-levels .news-filter-select--levels .filter-selection-mode {display:inline-flex;align-items:center;justify-content:center;gap:6px;inline-size:5.5em;min-height:34px;box-sizing:border-box;margin:0;padding:6px;white-space:nowrap;font-size:12px;font-weight:400;line-height:1.5;color:var(--dafa-text-soft);cursor:pointer;user-select:none}
body .archive-page .news-filter-levels .news-filter-select--levels .filter-selection-mode input {appearance:auto;flex:0 0 15px;width:15px;height:15px;margin:0;accent-color:var(--classification-selected-text);cursor:inherit}
body .archive-page .news-filter-levels .news-filter-select--levels .filter-selection-mode>span {display:inline-flex;align-items:center;line-height:20px;transform:translateY(-1px)}
body .archive-page .news-filter-levels .news-filter-select--levels .filter-selection-mode:has(input:checked) {color:var(--classification-selected-text)}
body .archive-page .news-filter-levels .news-filter-select--levels .classification-option-actions {margin-top:0;padding-top:8px}
body .archive-page .news-filter-levels .news-filter-select--levels .classification-done {min-height:34px;padding:6px 16px;border:0;background:var(--dafa-accent);color:var(--dafa-on-accent);font:inherit;font-size:13px;cursor:pointer}
body .archive-page .news-filter-levels .news-filter-select--levels .classification-done:hover,body .archive-page .news-filter-levels .news-filter-select--levels .classification-done:focus-visible {background:var(--dafa-accent-strong);color:var(--dafa-on-accent)}
body .archive-page .news-filter-levels .news-filter-select--levels [data-news-flag-clear] {min-height:34px;padding:6px 8px;border:0;background:transparent;color:var(--dafa-text-soft);font:inherit;font-size:12px;cursor:pointer}
body .archive-page .news-filter-levels .news-filter-select--levels [data-news-flag-clear]:hover:not(:disabled),body .archive-page .news-filter-levels .news-filter-select--levels [data-news-flag-clear]:focus-visible:not(:disabled) {color:var(--dafa-accent-strong)}
body .archive-page .news-filter-levels .news-filter-select--levels [data-news-flag-clear]:disabled {opacity:.45;cursor:default}
@media(max-width:640px) {
 body .archive-page .news-filter-levels .news-filter-select--levels :is(.classification-done,[data-news-flag-clear],.filter-selection-mode) {min-height:44px}
 body .archive-page .news-filter-levels .news-filter-select--levels > .news-filter-select__panel {max-height:min(340px,55dvh)}
}
/* The empty 已选条件 strip must not paint: .classification-selected prints its
   label through :before, and its display:flex outranks the [hidden] default that
   the template already emits when no condition is chosen. (0.5.401) */
[data-news-unified] .classification-selected[hidden] {display:none}

/* 0.5.463: result toolbars keep their controls inline on desktop and merge the
   filter and sort controls into one disclosure entry when the toolbar's own
   content box is narrower than 840px, reserving room for scoped search. The server emits this final structure so
   the narrow first paint does not move controls or flash a temporary row. */
body .classification-results-toolbar .archive-toolbar-group,
body .classification-results-toolbar .archive-toolbar-panel,
body .classification-results-toolbar .archive-toolbar-panel__content {display:contents}
body .classification-results-toolbar .archive-toolbar-trigger {display:none}
body .classification-results-toolbar .archive-toolbar-group--combined {display:none}

@container (max-width:839px) {
 body .classification-results-toolbar .news-filter-controls {
  display:grid;
   grid-template-columns:minmax(0,1fr) max-content max-content;
  grid-template-areas:"status combined view";
  align-items:center;
   gap:4px;
 }
 body .classification-results-toolbar .classification-status {
  grid-area:status;
  align-self:center;
  min-width:0;
  min-height:44px;
  margin:0;
  font-size:14px;
  line-height:44px;
  white-space:nowrap;
 }
 body .classification-results-toolbar .news-filter-controls>.archive-view-toolbar {
  grid-area:view;
  align-self:center;
   justify-self:end;
  margin:0;
 }
 body .classification-results-toolbar .archive-toolbar-group {
  display:block;
  min-width:0;
 }
 body .classification-results-toolbar .archive-toolbar-group--filter,
 body .classification-results-toolbar .archive-toolbar-group--sort {display:none}
 body .classification-results-toolbar .archive-toolbar-group--combined {grid-area:combined}
 body .classification-results-toolbar .archive-toolbar-trigger {
  display:flex;
   width:auto;
  min-width:0;
  height:44px;
  align-items:center;
  gap:6px;
   padding:0 6px;
   border:0;
  border-radius:7px;
  background:var(--dafa-surface);
  color:var(--dafa-text);
  font:inherit;
  font-size:13px;
  line-height:1;
  text-align:left;
  cursor:pointer;
  overflow:hidden;
 }
 body .classification-results-toolbar .archive-toolbar-trigger__label {
  flex:0 0 auto;
  font-weight:600;
  white-space:nowrap;
 }
 body .classification-results-toolbar .archive-toolbar-count {
  display:inline-flex;
  flex:0 0 auto;
  min-width:19px;
  height:19px;
  align-items:center;
  justify-content:center;
  padding:0 5px;
  border-radius:999px;
  background:var(--dafa-accent);
  color:var(--dafa-on-accent);
  font-size:11px;
  font-variant-numeric:tabular-nums;
 }
 body .classification-results-toolbar .archive-toolbar-count[hidden] {display:none}
  body .classification-results-toolbar .archive-toolbar-summary {display:none}
 body .classification-results-toolbar .archive-toolbar-trigger--combined:after {
   content:'';
   flex:0 0 auto;
   width:6px;
   height:6px;
   margin:0 3px 3px auto;
   border-right:1.5px solid currentColor;
   border-bottom:1.5px solid currentColor;
   transform:rotate(45deg);
  }
 body .classification-results-toolbar .archive-toolbar-group--combined.is-open .archive-toolbar-trigger--combined:after {
   margin-bottom:0;
   transform:rotate(225deg);
  }
 body .classification-results-toolbar .archive-toolbar-trigger:is(:hover,:focus-visible),
 body .classification-results-toolbar .archive-toolbar-group.is-open .archive-toolbar-trigger {
  background:var(--dafa-bg);
 }
 body .classification-results-toolbar .archive-toolbar-trigger:focus-visible {
  outline:2px solid var(--dafa-accent);
  outline-offset:2px;
 }
 body .classification-results-toolbar .archive-toolbar-group.has-selection .archive-toolbar-trigger {
   background:color-mix(in srgb,var(--dafa-accent) 8%,transparent);
 }
 body .classification-results-toolbar .archive-toolbar-panel {
  position:absolute;
  z-index:70;
  top:calc(100% + 8px);
  left:0;
  right:0;
  display:none;
  max-width:100%;
  box-sizing:border-box;
  padding:10px;
  border:1px solid var(--dafa-border);
  border-radius:9px;
  background:var(--dafa-surface);
  box-shadow:var(--dafa-shadow);
 }
 body .classification-results-toolbar .archive-toolbar-group.is-open .archive-toolbar-panel {display:block}
 body .classification-results-toolbar .archive-toolbar-panel__content {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
 }
 body .archive-page .classification-results-toolbar .news-filter-levels {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
 }
 body .archive-page [data-news-unified] .classification-results-toolbar .archive-toolbar-panel__content>.news-filter-levels {
   grid-column:1/-1;
 }
 body .classification-results-toolbar .archive-toolbar-panel .news-filter-select {
  width:100%;
  min-width:0;
  max-width:none;
 }
 body .archive-page .classification-results-toolbar .archive-toolbar-panel .news-filter-select__toggle {
  width:100%;
  height:44px;
  min-height:44px;
  padding-inline:10px;
  border-color:var(--dafa-border);
  background:var(--dafa-surface);
  font-size:12px;
 }
 body .archive-page .classification-results-toolbar .archive-toolbar-panel .news-filter-select__panel {
  max-width:calc(100vw - 32px);
 }
 body .classification-results-toolbar .archive-view-toggle {
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
 }
}

/* At the narrowest phone width the count, combined filter entry and view
   toggle no longer fit on one line together. Keep the view toggle beside the
   count and wrap the compact filter entry beneath them. */
@media (max-width:340px) {
 body .classification-results-toolbar .news-filter-controls {
  grid-template-columns:minmax(0,1fr) max-content;
  grid-template-areas:"status view" "combined combined";
  row-gap:0;
 }
 body .classification-results-toolbar .archive-toolbar-group--combined {
  justify-self:start;
 }
}

/* Without the disclosure enhancement, retain access to every original control
   rather than leaving an empty two-row toolbar. */
html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-trigger,
.dafa-files-fallback .classification-results-toolbar .archive-toolbar-trigger {display:none}
html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-group,
.dafa-files-fallback .classification-results-toolbar .archive-toolbar-group {display:block}
html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-group--combined,
.dafa-files-fallback .classification-results-toolbar .archive-toolbar-group--combined {display:none}
html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-panel,
.dafa-files-fallback .classification-results-toolbar .archive-toolbar-panel {display:contents}
html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-panel__content,
.dafa-files-fallback .classification-results-toolbar .archive-toolbar-panel__content {display:flex;flex-wrap:wrap;gap:8px}
@container (max-width:839px) {
 html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-group--filter,
 html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-group--sort,
 .dafa-files-fallback .classification-results-toolbar .archive-toolbar-group--filter,
 .dafa-files-fallback .classification-results-toolbar .archive-toolbar-group--sort {display:none}
 html:not(.dafa-js) .classification-results-toolbar .archive-toolbar-group--combined,
 .dafa-files-fallback .classification-results-toolbar .archive-toolbar-group--combined {display:block}
}
