/* block-filters */
/* LFW Filters in the campus compositions. The plugin's own custom properties
   are set on .lfwf, so they are set again here, on the same element. */
.wp-site-blocks .lfwf {
  --lfwf-surface: var(--stone); --lfwf-field: var(--card); --lfwf-ink: var(--ink); --lfwf-muted: var(--muted);
  --lfwf-accent: var(--accent); --lfwf-accent-ink: var(--on-accent); --lfwf-chip-bg: var(--mist); --lfwf-chip-ink: var(--accent);
  --lfwf-font: var(--sans); --lfwf-border: var(--muted);
}
/* Band (program finder, university): the mockup's stone band and pill search field. */
.lfwf-filters.finder-filters.is-layout-band { margin-top: 48px; padding: 36px 32px; position: relative; z-index: 4; }
.finder-filters.is-layout-band .lfwf-inner { max-width: 1176px; }
.finder-filters .lfwf-input { min-height: 56px; border-width: 2px; font-size: 19px; padding: 0 22px; }
.finder-filters .lfwf-input:focus-visible { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(14,77,100,.25); }
.finder-filters .lfwf-summary { border: 1px solid var(--line); font-weight: 500; }
.finder-filters .lfwf-drop > .lfwf-fieldset { width: 300px; padding: 14px 20px; box-shadow: 0 18px 40px rgba(10,52,70,.18), 0 0 0 1px var(--line); }
@media (max-width: 1100px) { .finder-filters.is-layout-band .lfwf-inner { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 720px) { .lfwf-filters.finder-filters.is-layout-band { margin-top: 36px; padding: 24px 16px; } }
/* Band (events): toggles in menus, inside the page width. */
.lfwf-filters.event-filters.is-layout-band { margin-top: 72px; padding: 24px 28px; border-radius: 16px; }
.event-filters.is-layout-band .lfwf-inner { grid-template-columns: minmax(0, 1fr); max-width: none; }
.event-filters .lfwf-summary { border: 1px solid var(--line); font-weight: 500; }
@media (max-width: 720px) { .lfwf-filters.event-filters.is-layout-band { margin-top: 52px; padding: 20px 16px; } }
/* Panel (program finder, college): the mockup's filter bar. */
.finder-panel .lfwf-panel { border-radius: 24px; margin-bottom: 64px; }
.finder-panel.is-layout-panel .lfwf-inner { padding: 40px 44px 44px; gap: 32px; }
.finder-panel .lfwf-legend { font-size: 16px; font-weight: 700; margin-bottom: 12px; }
.finder-panel .lfwf-pill { min-height: 40px; padding: 0 16px; box-shadow: inset 0 0 0 1.5px #b9c2bb; }
.finder-panel .lfwf-pill:hover { box-shadow: inset 0 0 0 1.5px var(--ink); }
.finder-panel .lfwf-input { border: 1.5px solid #8a958d; font-size: 17px; }
.finder-panel.is-layout-panel .lfwf-facets { grid-template-columns: repeat(4, minmax(0, auto)); justify-content: start; gap: 32px 64px; }
@media (max-width: 1100px) { .finder-panel.is-layout-panel .lfwf-facets { grid-template-columns: repeat(2, minmax(0, auto)); } }
@media (max-width: 781px) { .finder-panel .lfwf-panel { border-radius: 16px; margin-bottom: 32px; } .finder-panel.is-layout-panel .lfwf-inner { padding: 4px 20px 24px; } }
@media (max-width: 620px) { .finder-panel.is-layout-panel .lfwf-facets { grid-template-columns: minmax(0, 1fr); } }
/* Results */
.lfwf-group-heading { font-family: var(--head); }
.lfwf-count { font-family: var(--sans); }
