@media (max-width: 1120px) {
  .archive-filter-modal-layer { position: fixed; inset: 0; z-index: var(--z-filter-layer); pointer-events: none; }
  .archive-filter-modal-layer > :is([data-filter-sheet], .filter-sheet-overlay) { pointer-events: auto; }
  html body.filter-sheet-open .site-header { visibility: hidden !important; pointer-events: none !important; }
  html body.filter-sheet-open [data-filter-sheet] { overflow: hidden !important; border-radius: 24px 24px 0 0 !important; }
  html body [data-filter-sheet] {
    height: auto !important;
    max-height: calc(100dvh - var(--archive-drawer-top-gap, max(10px, env(safe-area-inset-top, 0px)))) !important;
    min-height: 0 !important;
    bottom: 0 !important;
    z-index: var(--z-filter-sheet) !important;
  }
  html body.filter-sheet-open .filter-sheet-overlay { z-index: var(--z-filter-backdrop) !important; }
  html body [data-filter-sheet] :is(.filter-sheet__head, .venues-sidebar__head) { min-height: 68px; justify-content: flex-start; padding: var(--space-chrome-3) 76px var(--space-chrome-3) var(--space-chrome-5) !important; }
  html body [data-filter-sheet] .filter-sheet__title { font-size: 1.3rem; }
  html body [data-filter-sheet] .filter-sheet__close { width: 44px; height: 44px; border-radius: var(--radius-control, 8px) !important; }
  html body.filter-sheet-open [data-filter-sheet] .filter-sheet__body { flex: 0 1 auto !important; min-height: 0; overflow-y: auto !important; padding: var(--space-chrome-4) var(--space-chrome-5) var(--space-chrome-6) !important; }
  html body [data-filter-sheet] :is(.era-filter-control, .venue-filter-stack) { background: transparent !important; border: 0 !important; padding: 0 !important; display: grid; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-3) !important; }
  html body [data-filter-sheet] .era-filter-control > .kicker { display: none; }
  html body [data-filter-sheet] .era-filter-control__buttons { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-3) !important; }
  html body [data-filter-sheet] .archive-filter-dropdown { background: var(--color-ink-800) !important; border: 1px solid var(--color-ink-600) !important; border-radius: 16px !important; padding: 0 !important; overflow: hidden; width: 100% !important; }
  html body [data-filter-sheet] .archive-filter-dropdown > :is(.archive-filter-group__title, .venue-filter-group__title) { display: none !important; }
  html body [data-filter-sheet] .archive-filter-dropdown__trigger { display: flex !important; align-items: center; gap: var(--space-chrome-3); min-height: 60px; padding: var(--space-chrome-4) !important; width: 100%; background: transparent !important; border: 0 !important; border-radius: 0 !important; color: var(--color-paper); text-align: left; }
  html body [data-filter-sheet] .archive-filter-dropdown__label { flex: 1; font-size: var(--font-size-9); }
  html body [data-filter-sheet] .archive-filter-dropdown__count { flex: 0 0 auto; color: var(--color-stone-400); font-size: 0.8rem; }
  html body [data-filter-sheet] .archive-filter-dropdown__trigger::after { display: block !important; position: static !important; }
  html body [data-filter-sheet] .archive-filter-dropdown__panel { display: none !important; position: static !important; border: 0 !important; background: transparent !important; padding: 0 var(--space-chrome-3) var(--space-chrome-3) !important; }
  html body [data-filter-sheet] .archive-filter-dropdown.is-open > .archive-filter-dropdown__panel { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-1-5) !important; }
  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option) { display: grid !important; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: var(--space-chrome-3); min-height: 48px !important; width: 100% !important; padding: var(--space-chrome-3) !important; margin: 0 !important; background: var(--chrome-filter-surface) !important; border: 1px solid transparent !important; border-radius: var(--radius-control, 8px) !important; color: var(--chrome-filter-text) !important; text-align: left; line-height: 1.3; }
  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option):has(input:checked) { background: rgba(226, 35, 40, 0.12) !important; border-color: var(--color-red-signal) !important; }
  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option) input { position: static !important; opacity: 1 !important; appearance: auto !important; width: 18px !important; height: 18px !important; margin: 0 !important; accent-color: var(--color-red-signal); }
  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option):focus-within { outline: 2px solid var(--color-paper); outline-offset: -2px; }
  html body [data-filter-sheet] .archive-filter-dropdown__panel.mobile-promotion-picker { max-height: min(48dvh, 420px) !important; overflow-y: auto !important; overscroll-behavior: contain; }
  html body [data-filter-sheet] .mobile-filter-search { display: block; position: sticky; top: 0; z-index: var(--z-raised-2); background: var(--color-ink-800); padding: var(--space-chrome-1) 0 var(--space-chrome-2); }
  .mobile-filter-search__label { display: block; font-size: 0.8rem; color: var(--color-stone-400); margin: 0 0 var(--space-chrome-1-5); }
  html body [data-filter-sheet] .mobile-filter-search input { box-sizing: border-box; width: 100%; min-height: 48px; border: 1px solid var(--color-ink-400); border-radius: var(--radius-control, 8px); background: var(--color-ink-900); color: var(--color-paper); font: inherit; padding: var(--space-chrome-2-5) var(--space-chrome-3); }
  .mobile-filter-search input:focus-visible { outline: 2px solid var(--color-paper); outline-offset: 2px; }
  .mobile-filter-search__empty { margin: var(--space-chrome-1) var(--space-chrome-3); color: var(--color-stone-400); font-size: var(--font-size-7); }
  html body [data-filter-sheet] [hidden] { display: none !important; }
  html body [data-filter-sheet] .filter-sheet__footer { flex: 0 0 auto; padding: var(--space-chrome-3) var(--space-chrome-5) calc(var(--space-chrome-3) + env(safe-area-inset-bottom, 0px)) !important; background: var(--chrome-filter-surface); }
  html body [data-filter-sheet] .filter-sheet__btn { min-height: 48px; border-radius: var(--radius-control, 8px) !important; }
}


/* ==========================================================================
   Laptop compact filters (1121-1365px), generated 2026-11-05 from this file's
   (max-width: 1120px) filter rules: the filter rail becomes the same Filter
   button + bottom sheet as tablets, so cards get the rail's width. Keep in
   sync with the <=1120 rules above (or merge them when breakpoints are shared).
   ========================================================================== */
@media (min-width: 1121px) and (max-width: 1365px) {
  .archive-filter-modal-layer:where(:not([data-masks-page] *)) {
    position: fixed; inset: 0; z-index: var(--z-filter-layer); pointer-events: none;
  }

  .archive-filter-modal-layer > :is([data-filter-sheet], .filter-sheet-overlay):where(:not([data-masks-page] *)) {
    pointer-events: auto;
  }

  html body.filter-sheet-open .site-header:where(:not([data-masks-page] *)) {
    visibility: hidden !important; pointer-events: none !important;
  }

  html body.filter-sheet-open [data-filter-sheet]:where(:not([data-masks-page] *)) {
    overflow: hidden !important; border-radius: 24px 24px 0 0 !important;
  }

  html body [data-filter-sheet]:where(:not([data-masks-page] *)) {
    height: auto !important;
    max-height: calc(100dvh - var(--archive-drawer-top-gap, max(10px, env(safe-area-inset-top, 0px)))) !important;
    min-height: 0 !important;
    bottom: 0 !important;
    z-index: var(--z-filter-sheet) !important;
  }

  html body.filter-sheet-open .filter-sheet-overlay:where(:not([data-masks-page] *)) {
    z-index: var(--z-filter-backdrop) !important;
  }

  html body [data-filter-sheet] :is(.filter-sheet__head, .venues-sidebar__head):where(:not([data-masks-page] *)) {
    min-height: 68px; justify-content: flex-start; padding: var(--space-chrome-3) 76px var(--space-chrome-3) var(--space-chrome-5) !important;
  }

  html body [data-filter-sheet] .filter-sheet__title:where(:not([data-masks-page] *)) {
    font-size: 1.3rem;
  }

  html body [data-filter-sheet] .filter-sheet__close:where(:not([data-masks-page] *)) {
    width: 44px; height: 44px; border-radius: var(--radius-control, 8px) !important;
  }

  html body.filter-sheet-open [data-filter-sheet] .filter-sheet__body:where(:not([data-masks-page] *)) {
    flex: 0 1 auto !important; min-height: 0; overflow-y: auto !important; padding: var(--space-chrome-4) var(--space-chrome-5) var(--space-chrome-6) !important;
  }

  html body [data-filter-sheet] :is(.era-filter-control, .venue-filter-stack):where(:not([data-masks-page] *)) {
    background: transparent !important; border: 0 !important; padding: 0 !important; display: grid; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-3) !important;
  }

  html body [data-filter-sheet] .era-filter-control > .kicker:where(:not([data-masks-page] *)) {
    display: none;
  }

  html body [data-filter-sheet] .era-filter-control__buttons:where(:not([data-masks-page] *)) {
    display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-3) !important;
  }

  html body [data-filter-sheet] .archive-filter-dropdown:where(:not([data-masks-page] *)) {
    background: var(--color-ink-800) !important; border: 1px solid var(--color-ink-600) !important; border-radius: 16px !important; padding: 0 !important; overflow: hidden; width: 100% !important;
  }

  html body [data-filter-sheet] .archive-filter-dropdown > :is(.archive-filter-group__title, .venue-filter-group__title):where(:not([data-masks-page] *)) {
    display: none !important;
  }

  html body [data-filter-sheet] .archive-filter-dropdown__trigger:where(:not([data-masks-page] *)) {
    display: flex !important; align-items: center; gap: var(--space-chrome-3); min-height: 60px; padding: var(--space-chrome-4) !important; width: 100%; background: transparent !important; border: 0 !important; border-radius: 0 !important; color: var(--color-paper); text-align: left;
  }

  html body [data-filter-sheet] .archive-filter-dropdown__label:where(:not([data-masks-page] *)) {
    flex: 1; font-size: var(--font-size-9);
  }

  html body [data-filter-sheet] .archive-filter-dropdown__count:where(:not([data-masks-page] *)) {
    flex: 0 0 auto; color: var(--color-stone-400); font-size: 0.8rem;
  }

  html body [data-filter-sheet] .archive-filter-dropdown__trigger:where(:not([data-masks-page] *))::after {
    display: block !important; position: static !important;
  }

  html body [data-filter-sheet] .archive-filter-dropdown__panel:where(:not([data-masks-page] *)) {
    display: none !important; position: static !important; border: 0 !important; background: transparent !important; padding: 0 var(--space-chrome-3) var(--space-chrome-3) !important;
  }

  html body [data-filter-sheet] .archive-filter-dropdown.is-open > .archive-filter-dropdown__panel:where(:not([data-masks-page] *)) {
    display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: var(--space-chrome-1-5) !important;
  }

  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option):where(:not([data-masks-page] *)) {
    display: grid !important; grid-template-columns: 20px minmax(0, 1fr) auto; align-items: center; gap: var(--space-chrome-3); min-height: 48px !important; width: 100% !important; padding: var(--space-chrome-3) !important; margin: 0 !important; background: var(--chrome-filter-surface) !important; border: 1px solid transparent !important; border-radius: var(--radius-control, 8px) !important; color: var(--chrome-filter-text) !important; text-align: left; line-height: 1.3;
  }

  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option):has(input:checked):where(:not([data-masks-page] *)) {
    background: rgba(226, 35, 40, 0.12) !important; border-color: var(--color-red-signal) !important;
  }

  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option) input:where(:not([data-masks-page] *)) {
    position: static !important; opacity: 1 !important; appearance: auto !important; width: 18px !important; height: 18px !important; margin: 0 !important; accent-color: var(--color-red-signal);
  }

  html body [data-filter-sheet] :is(.archive-filter-option, .venue-filter-option):focus-within:where(:not([data-masks-page] *)) {
    outline: 2px solid var(--color-paper); outline-offset: -2px;
  }

  html body [data-filter-sheet] .archive-filter-dropdown__panel.mobile-promotion-picker:where(:not([data-masks-page] *)) {
    max-height: min(48dvh, 420px) !important; overflow-y: auto !important; overscroll-behavior: contain;
  }

  html body [data-filter-sheet] .mobile-filter-search:where(:not([data-masks-page] *)) {
    display: block; position: sticky; top: 0; z-index: var(--z-raised-2); background: var(--color-ink-800); padding: var(--space-chrome-1) 0 var(--space-chrome-2);
  }

  html body [data-filter-sheet] .mobile-filter-search input:where(:not([data-masks-page] *)) {
    box-sizing: border-box; width: 100%; min-height: 48px; border: 1px solid var(--color-ink-400); border-radius: var(--radius-control, 8px); background: var(--color-ink-900); color: var(--color-paper); font: inherit; padding: var(--space-chrome-2-5) var(--space-chrome-3);
  }

  html body [data-filter-sheet] [hidden]:where(:not([data-masks-page] *)) {
    display: none !important;
  }

  html body [data-filter-sheet] .filter-sheet__footer:where(:not([data-masks-page] *)) {
    flex: 0 0 auto; padding: var(--space-chrome-3) var(--space-chrome-5) calc(var(--space-chrome-3) + env(safe-area-inset-bottom, 0px)) !important; background: var(--chrome-filter-surface);
  }

  html body [data-filter-sheet] .filter-sheet__btn:where(:not([data-masks-page] *)) {
    min-height: 48px; border-radius: var(--radius-control, 8px) !important;
  }
}
