.rr-filter-trigger{display:none}
#rr-filter-sheet:not([open]){display:none!important}
[data-selection-reset][hidden],[data-pp-reset][hidden]{display:none!important}
.pp-filter-actions:not(:has([data-pp-reset]:not([hidden]))){grid-template-columns:minmax(0,1fr)!important}
@keyframes rr-filter-slide{from{transform:translateY(calc(100% + 24px))}to{transform:translateY(0)}}
@keyframes rr-filter-backdrop{from{background:rgb(15 18 24 / 0)}to{background:rgb(15 18 24 / .4)}}
@media(max-width:760px){
 html.rr-filters-open{overflow:hidden}
 html.rr-mobile-filters body{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
 .rr-filter-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 18px;border:0;border-radius:12px;background:#f0f0f3;color:#191b20;font:500 14px/1.3 Geologica,Arial,sans-serif;cursor:pointer}
 .rr-filter-trigger svg{width:20px;height:20px;fill:#f0f0f3;stroke:currentColor;stroke-width:1.7}
 .rr-filter-trigger:focus-visible{outline:2px solid #d71935;outline-offset:3px}
 .rr-filter-dock{position:fixed;z-index:35;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:#191b20;color:white;box-shadow:0 4px 20px #191b2030;min-width:150px;min-height:48px}
 .rr-filter-dock svg{fill:#191b20}
 html.selection-has-compare .rr-filter-dock,body:has(.ys-compare-bar:not([hidden])) .rr-filter-dock{bottom:calc(90px + env(safe-area-inset-bottom))}
 .rr-filter-host.pp-filter-panel{padding:0;margin:0;background:none}
 .rr-filter-host>.pp-filter-heading{display:none}
 /* ID scope supersedes legacy global dialog geometry. */
 dialog#rr-filter-sheet[open]{position:fixed!important;inset:auto 8px 8px!important;display:flex!important;flex-direction:column!important;width:calc(100% - 16px)!important;max-width:none!important;max-height:calc(100dvh - 32px)!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:24px!important;box-sizing:border-box!important;background:#f5f5f7!important;color:#191b20!important;overflow:hidden!important;box-shadow:0 12px 60px #0003;animation:rr-filter-slide .24s ease-in-out both!important}
 dialog#rr-filter-sheet[open].is-closing{animation-direction:reverse!important;pointer-events:none}
 dialog#rr-filter-sheet::backdrop{background:rgb(15 18 24 / .4);animation:rr-filter-backdrop .24s ease-in-out both}
 dialog#rr-filter-sheet.is-closing::backdrop{animation-direction:reverse}
 #rr-filter-sheet .rr-filter-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:25px 20px 12px;background:#fff;flex:none}
 #rr-filter-sheet .rr-filter-head h2{font-size:20px!important;font-weight:550!important;line-height:1.3;margin:0!important}
 .rr-filter-handle{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:36px;height:4px;border-radius:4px;background:#d8d8de}
 .rr-filter-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:12px;background:#f0f0f3;color:#191b20;flex:none}
 .rr-filter-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 #rr-filter-sheet .rr-filter-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}
 #rr-filter-sheet :is(.selection-form,.pp-filter-form){display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;max-width:none;margin:0;padding:20px;border:0;border-radius:0;box-sizing:border-box;background:#f5f5f7}
 #rr-filter-sheet .selection-form>small{display:none}
 #rr-filter-sheet :is(input:not([type=range]),select){font-size:16px;min-height:48px}
 #rr-filter-sheet .selection-form>[type=submit],#rr-filter-sheet .pp-filter-actions{position:sticky;bottom:0;z-index:1;margin-top:0;background:#f5f5f7;box-shadow:0 -8px 12px #f5f5f7}
 #rr-filter-sheet .selection-form>[type=submit]{min-height:50px}
 #rr-filter-sheet .pp-filter-extra>summary{font-size:13px;min-height:44px}
 #offers{scroll-margin-top:100px}
}
@media(prefers-reduced-motion:reduce){dialog#rr-filter-sheet[open],dialog#rr-filter-sheet::backdrop{animation:none!important}}
@media(max-width:760px){
 #rr-filter-sheet .selection-form>[type=submit]{background:#d71935;color:#fff}
 #rr-filter-sheet .selection-form>[type=submit]:hover{background:#c40e2b}
}
@media(max-width:760px){
 #rr-filter-sheet summary{text-decoration:none;list-style:none}
 #rr-filter-sheet summary::-webkit-details-marker{display:none}
 .rr-mobile-filters .pp-grid{scroll-margin-top:100px}
}
/* Applied criteria remain visible outside the sheet, separate from unsubmitted edits. */
.rr-filter-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px;min-width:0}
.rr-filter-chips[hidden],.rr-filter-count[hidden]{display:none!important}
.rr-filter-chip{display:inline-flex;align-items:center;gap:10px;min-height:40px;max-width:100%;padding:9px 12px;border:0;border-radius:10px;background:#fff0f3;color:#94132b;font:400 12px/1.4 Geologica,Arial,sans-serif;text-align:left;cursor:pointer;overflow-wrap:anywhere}
.rr-filter-chip>span{font-size:20px;line-height:1;flex:none}
.rr-filter-chip:focus-visible{outline:2px solid #d71935;outline-offset:2px}
.rr-filter-count{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;box-sizing:border-box;border-radius:7px;background:#d71935;color:#fff;font-size:11px;line-height:1;font-weight:550}
@media(max-width:760px){.rr-filter-chip{min-height:44px}.rr-filter-chips{gap:6px;margin:12px 0 16px}}
@media(max-width:760px){
 /* visualViewport excludes the software keyboard even when layout viewport stays tall. */
 dialog#rr-filter-sheet[open]{bottom:var(--rr-sheet-bottom,8px)!important;max-height:var(--rr-sheet-visible-height,calc(100dvh - 16px))!important}
 #rr-filter-sheet .rr-filter-head{padding:22px 16px 10px}
 #rr-filter-sheet .rr-filter-body{flex:1 1 auto;padding-bottom:0}
 #rr-filter-sheet :is(.selection-form,.pp-filter-form){padding:16px;gap:10px}
 #rr-filter-sheet .selection-main-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 #rr-filter-sheet .rr-filter-footer{flex:none;position:relative;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff}
 #rr-filter-sheet .rr-filter-footer>[type=submit]{width:100%;min-height:48px;margin:0;background:#d71935;color:#fff}
 #rr-filter-sheet .rr-filter-footer .pp-filter-actions{position:static;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:0;background:none;box-shadow:none}
 #rr-filter-sheet .rr-filter-footer .pp-filter-actions .ys-button{width:100%;min-height:48px;padding:12px;font-size:13px}
 #rr-filter-sheet .rr-filter-footer [data-pp-reset]{min-height:44px;padding:10px 0}
 /* The next section starts close to the compact hero control. */
 html.rr-mobile-filters .selection-hero.ys-hero{padding-bottom:8px}
 html.rr-mobile-filters #selection-form+.selection-offers{margin-top:12px}
 .selection-list-heading .ys-kicker{display:block;width:100%;box-sizing:border-box;padding:10px 12px;margin:0 0 12px;border-radius:10px;background:#f0f0f3;color:#494c55;font-size:10px;letter-spacing:.08em}
 .selection-list-heading>div{width:100%}
}
@media(max-width:760px){
 /* The bank intro and compact filter control share one 16px gap. */
 html.rr-mobile-filters .ys-main:has(.rr-filter-host)>.ys-page-intro{padding-bottom:0}
 html.rr-mobile-filters .ys-main:has(.rr-filter-host)>.ys-page-intro>p:last-child{margin-bottom:0}
}

/* Task intro flows into the recommendation strip after the mobile form moves out. */
@media(max-width:760px){
 html.rr-mobile-filters [data-selection-page]>.ys-page-intro{padding-bottom:8px}
 html.rr-mobile-filters [data-selection-page]>.ys-page-intro>p:last-child{margin-bottom:0}
}

.rr-filter-chip.rr-filter-fixed{background:#eeeef1;color:#60636c;cursor:default}

/* Desktop keeps its inline form and offers a scoped floating shortcut. */
@keyframes rr-filter-desktop{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:761px){
 html.rr-filters-open{overflow:hidden}
 .rr-filter-dock.rr-desktop-visible{display:inline-flex;position:fixed;z-index:35;left:50%;bottom:24px;transform:translateX(-50%);align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border:0;border-radius:12px;background:#191b20;color:#fff;box-shadow:0 4px 20px #191b2030;font:500 14px/1.3 Geologica,Arial,sans-serif;cursor:pointer}
 .rr-filter-dock svg{width:20px;height:20px;fill:#191b20;stroke:currentColor;stroke-width:1.7}
 .rr-filter-dock:focus-visible{outline:2px solid #d71935;outline-offset:3px}
 html.selection-has-compare .rr-filter-dock,body:has(.ys-compare-bar:not([hidden])) .rr-filter-dock{bottom:90px}
 dialog#rr-filter-sheet[open]{position:fixed!important;inset:0!important;display:flex!important;flex-direction:column!important;width:min(460px,calc(100% - 48px))!important;max-width:none!important;max-height:calc(var(--rr-desktop-height,100dvh) - 64px)!important;height:fit-content!important;margin:auto!important;padding:0!important;border:0!important;border-radius:20px!important;box-sizing:border-box!important;background:#f5f5f7!important;color:#191b20!important;overflow:hidden!important;box-shadow:0 12px 60px #0003;animation:rr-filter-desktop .2s ease-in-out both!important}
 dialog#rr-filter-sheet[open].is-closing{animation-direction:reverse!important;pointer-events:none}
 dialog#rr-filter-sheet::backdrop{background:rgb(15 18 24 / .4);animation:rr-filter-backdrop .2s ease-in-out both}
 dialog#rr-filter-sheet.is-closing::backdrop{animation-direction:reverse}
 #rr-filter-sheet .rr-filter-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:18px 20px;background:#fff}
 #rr-filter-sheet .rr-filter-head h2{margin:0!important;font-size:20px!important;line-height:1.3;font-weight:550}
 #rr-filter-sheet .rr-filter-handle{display:none}
 #rr-filter-sheet .rr-filter-close{display:grid;place-items:center;width:40px;height:40px;flex:none;border:0;border-radius:10px;background:#f0f0f3;color:#191b20;cursor:pointer}
 #rr-filter-sheet .rr-filter-close svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
 #rr-filter-sheet .rr-filter-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}
 #rr-filter-sheet :is(.selection-form,.pp-filter-form){display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:none;gap:12px;margin:0;padding:20px;border:0;border-radius:0;background:#f5f5f7;box-sizing:border-box}
 #rr-filter-sheet .selection-form>small{display:none}
 #rr-filter-sheet :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),select){min-height:44px;font-size:15px}
 #rr-filter-sheet .selection-main-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
 #rr-filter-sheet .selection-more summary{min-height:40px}
 #rr-filter-sheet .rr-filter-footer{flex:none;padding:16px 20px;background:#fff}
 #rr-filter-sheet .rr-filter-footer>[type=submit]{width:100%;min-height:48px;margin:0;background:#d71935;color:#fff}
 #rr-filter-sheet .pp-filter-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:0}
 #rr-filter-sheet .pp-filter-actions .ys-button{width:100%;min-height:48px}
}
@media print{.rr-filter-dock{display:none!important}}
