.pd-finder-preview {background:#f7f9fc;color:#172d42;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.pd-finder-preview header {background:#fff;border-bottom:1px solid #e7edf2}
.ff {--ff-blue:#0878d4;--ff-ink:#18354c;--ff-muted:#607588;--ff-border:#dfe7ee;max-width:1424px;margin:auto;padding:0 40px 44px;line-height:1.5}
.ff *, .ff-price-dialog * {box-sizing:border-box}
.ff [hidden],.ff-price-dialog [hidden] {display:none!important}
.ff button,.ff input,.ff select {font:inherit}
.ff button {cursor:pointer}
.ff button:disabled {cursor:default;opacity:.45}
.ff :focus-visible,.ff-price-dialog :focus-visible {outline:3px solid #69b7ef;outline-offset:3px}
.ff-sr-only {position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ff-hero {position:relative;padding:48px 0 30px;overflow:hidden}
.ff-eyebrow {font-size:10px;font-weight:750;letter-spacing:1.6px;color:#51758d;display:block}
.ff-preview-badge {display:inline-block;font-weight:600;letter-spacing:.2px;font-size:10px;border:1px solid #cfdfed;border-radius:5px;padding:3px 7px;margin-left:10px;color:#387391;vertical-align:middle;background:#edf5fa}
.ff-hero h1 {color:var(--ff-ink);font-size:43px;line-height:1.12;letter-spacing:-1.6px;font-weight:760;margin:16px 0}
.ff-hero>p {font-size:15px;line-height:1.7;color:var(--ff-muted);margin:0}
.ff-hero-detail {position:absolute;right:68px;top:78px;transform:rotate(-7deg);color:#7095ad;font-size:17px;letter-spacing:-.4px}
.ff-hero-detail strong,.ff-hero-detail span {display:block}.ff-hero-detail strong {color:#3a779e;font-weight:600}.ff-hero-detail svg {width:96px;margin-left:40px}
.ff-search-bar {display:flex;align-items:center;gap:14px;border:1px solid #cbdde9;background:white;box-shadow:0 5px 18px #193e5a06;border-radius:12px;padding:0 20px;height:62px;transition:border-color .15s,box-shadow .15s}
.ff-search-bar:focus-within {border-color:#359be3;box-shadow:0 0 0 3px #359be318}
.ff-search-bar svg {width:23px;height:23px;stroke:#4e7c9b;stroke-width:1.7;fill:none;flex-shrink:0}
.ff .ff-search-bar input {background:none;border:0;outline:0;box-shadow:none;padding:0;min-width:0;flex:1;font-size:16px;height:100%;color:var(--ff-ink)}
.ff input::placeholder {color:#8395a4;opacity:1}
.ff-live-label {display:flex;align-items:center;gap:7px;white-space:nowrap;color:#788a99;font-size:11px}
.ff-live-label i {background:#4ca881;width:6px;height:6px;border-radius:50%}
.ff-toolbar {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 0 26px}
.ff-pets {border:1px solid var(--ff-border);border-radius:9px;padding:4px;display:flex;gap:4px;background:#fff;margin:0}
.ff-pets label {margin:0;position:relative;cursor:pointer}
.ff-pets input {position:absolute;opacity:0;width:1px;height:1px}
.ff-pets span {display:block;white-space:nowrap;padding:7px 23px;border-radius:6px;color:#6c7e8c;font-size:12px;font-weight:650;transition:background .15s}
.ff-pets input:checked+span {background:#eaf4fc;color:#0873c3}
.ff-pets input:focus-visible+span {outline:3px solid #69b7ef;outline-offset:1px}
.ff-toolbar-note {font-size:12px;color:#7e8e9b;margin:0}
.ff-layout {display:grid;grid-template-columns:270px minmax(0,1fr);gap:30px;align-items:start}
/* The fixed drawer leaves grid flow; keep results in the content column. */
.ff-results {grid-column:2;min-width:0}
/* Desktop filters share the page scroll; only an open drawer scrolls independently. */
.ff-filters {background:#fff;border:1px solid var(--ff-border);border-radius:12px;padding:20px 18px 2px;position:static;max-height:none;overflow:visible;scrollbar-width:thin;scrollbar-color:#d5e2ec transparent}
.ff-filter-heading {display:flex;align-items:center;justify-content:space-between;gap:8px}
.ff h2 {font-size:18px;letter-spacing:-.5px;font-weight:700;color:var(--ff-ink);margin:0}
.ff-filter-heading h2 {font-size:14px;letter-spacing:-.2px}
.ff-reset {background:none;color:#4c87af;border:0;font-size:11px!important;padding:3px 0 16px}
.ff-section {border-top:1px solid #e9eef3;padding:16px 0}
.ff-section>summary {cursor:pointer;list-style:none;display:flex;align-items:center;font-size:12px;font-weight:700;color:#304d62;gap:8px;padding-right:15px;position:relative}
.ff-section>summary::-webkit-details-marker {display:none}
.ff-section>summary:after {content:"+";position:absolute;right:0;color:#8ba2b3;font-size:16px;font-weight:400}
.ff-section[open]>summary:after {content:"−"}
.ff-small-tag {font-size:8px;line-height:1.3;padding:3px 5px;border-radius:4px;background:#eff4f7;color:#7c8f9b;font-weight:550}
.ff-section-body {padding-top:13px}
.ff-label {display:block;font-size:11px;font-weight:600;color:#587083;margin:12px 0 6px}
.ff-section-body>.ff-label:first-child {margin-top:0}
.ff select,.ff-section input[type=search],.ff-section input[type=number] {border:1px solid #dce5ec;border-radius:7px;padding:9px 10px;width:100%;background:#fff;color:#304b60;font-size:12px;min-height:38px;line-height:1.4}
.ff select {padding-right:22px}
.ff-checks {border:0;margin:14px 0;padding:0}
.ff-checks legend {font-size:11px;font-weight:600;margin:0 0 8px;color:#587083;float:none;width:auto}
.ff-checks label {display:flex;gap:9px;align-items:start;font-size:12px;color:#53697c;margin:0;padding:5px 0;cursor:pointer;line-height:1.5}
.ff input[type=checkbox] {width:15px;height:15px;accent-color:var(--ff-blue);margin-top:2px;flex-shrink:0}
.ff-hint {color:#84939f;font-size:10px;line-height:1.65;margin:9px 0 0}
.ff-ingredient-picker {position:relative;margin-top:14px}
.ff-ingredient-picker input {font-size:11px!important}
.ff-selected-ingredients {display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}
.ff-selected-ingredients:empty {display:none}
.ff-selected-ingredients button {font-size:10px;line-height:1.4;color:#42748b;border:1px solid #d2e5eb;background:#f0f8fa;border-radius:5px;padding:5px 7px;text-align:left}
.ff-selected-ingredients button span {margin-left:6px;color:#6b94a7}
.ff-suggestions {position:absolute;z-index:10;left:0;right:0;top:100%;border:1px solid #d6e3ec;background:white;box-shadow:0 8px 20px #193e5a1a;border-radius:8px;max-height:215px;overflow:auto;padding:4px;margin-top:4px}
.ff-suggestions button {display:block;border:0;background:white;font-size:12px;width:100%;text-align:left;padding:9px 7px;border-radius:4px;color:#324d60}
.ff-suggestions button:hover,.ff-suggestions button[aria-selected=true] {background:#eaf4fc;color:#056eb8}
.ff-suggestions p {font-size:11px;padding:7px;margin:0;color:#7e8c98}
.ff-ingredient-note {font-size:10px;line-height:1.7;background:#f4f8fb;padding:10px;border-radius:6px;margin:14px 0 0;color:#6b8294}
.ff-range {border:0;padding:0;margin:15px 0}
.ff-range legend {font-size:11px;font-weight:600;color:#587083;margin:0 0 6px;float:none;width:100%}
.ff-range legend>span {float:right;font-size:9px;font-weight:400;color:#8c9caa}
.ff-range>div {display:flex;align-items:center;gap:8px}
.ff-range>div>span {font-size:10px;color:#9babb7}
.ff-range input {min-width:0}
.ff-two-fields {display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ff-brand-list {max-height:190px;overflow:auto;scrollbar-width:thin;margin-bottom:0}
.ff-results-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;margin-bottom:19px}
.ff-results-heading p {font-size:11px;color:#7b8e9c;margin:5px 0 0}
.ff-sort {display:flex;align-items:center;gap:8px;flex-shrink:0}
.ff-sort label {font-size:10px;color:#8a9ba8;white-space:nowrap;margin:0}
.ff-sort select {width:auto;background:transparent;font-size:11px;min-height:34px;padding:6px 22px 6px 9px;max-width:160px}
.ff-active-filters {display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.ff-active-filters:empty {display:none}
.ff-chip {display:inline-flex;align-items:center;gap:8px;border:1px solid #d8e6f1;background:#edf5fc;color:#3d769d;border-radius:6px;padding:5px 8px;font-size:10px!important;text-align:left}
.ff-chip span {font-size:13px;color:#7896ad}
.ff-result-note {font-size:11px;color:#668498;margin:-5px 0 16px}
.ff-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;transition:opacity .15s}
.ff-grid[aria-busy=true]:has(.ff-card) {opacity:.5;pointer-events:none}
.ff-card {background:white;border:1px solid var(--ff-border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:box-shadow .16s,border-color .16s}
.ff-card:hover {box-shadow:0 6px 22px #1239540b;border-color:#bdcfdc}
.ff-product-image {display:flex;align-items:center;justify-content:center;background:#fff;height:180px;padding:20px 27px 10px;position:relative}
.ff-product-image img {max-height:146px;max-width:100%;object-fit:contain;width:auto;height:auto;mix-blend-mode:multiply}
.ff-image-fallback {font-size:11px;text-align:center;color:#7d97a9}
.ff-card-body {padding:12px 14px 14px;display:flex;flex-direction:column;flex:1}
.ff-brand {font-size:9px;letter-spacing:.7px;text-transform:uppercase;font-weight:750;color:#8297a6;margin-bottom:4px;line-height:1.4}
.ff-card h3 {font-size:12px;line-height:1.5;font-weight:650;margin:0 0 8px;color:#1e4057;min-height:54px}
.ff-card h3 a {color:inherit;text-decoration:none}.ff-card h3 a:hover {color:#0878d4}
.ff-card-type {font-size:9px;color:#8999a6;margin-bottom:10px}
.ff-card-rating {font-size:10px;color:#7992a1;display:flex;align-items:center;gap:5px;margin-bottom:12px}
.ff-star {color:#e1a947;font-size:12px}.ff-card-rating strong {font-weight:650;color:#4c6c82}
.ff-nutrition {display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #eef2f5;border-bottom:1px solid #eef2f5;padding:9px 0;margin:0 0 12px;gap:3px}
.ff-nutrition dt {font-size:8px;line-height:1.4;color:#8a9daa;font-weight:400;margin:0}.ff-nutrition dd {font-size:11px;font-weight:650;color:#496b83;margin:2px 0 0}
.ff-price {margin-top:auto;display:flex;justify-content:space-between;align-items:baseline;gap:5px;margin-bottom:10px}
.ff-price strong {font-size:16px;letter-spacing:-.4px;color:#193f5c;font-weight:700}.ff-price span {font-size:9px;color:#91a0ad}.ff-price .ff-unavailable {font-size:11px;font-weight:450;letter-spacing:0;color:#8799a7}
.ff-price-button {background:#f0f7fd;color:#167dc0;border:1px solid #d8eaf7;border-radius:6px;width:100%;font-size:10px!important;font-weight:650;padding:9px 4px;transition:background .15s}.ff-price-button:hover {background:#e1f0fc}
.ff-empty {border:1px dashed #ccdae4;border-radius:12px;text-align:center;padding:55px 24px;background:#fff}.ff-empty>span {font-size:35px;color:#8eb1ca}.ff-empty h3 {font-size:21px;margin:10px 0}.ff-empty p {font-size:13px;color:#7b8e9c;max-width:360px;margin:0 auto 20px}
.ff-primary {border:1px solid #0878d4;background:#0878d4;color:white;border-radius:7px;font-weight:650;font-size:12px!important;padding:10px 18px}
.ff-error {border:1px solid #edd8c3;border-radius:8px;background:#fff9ef;color:#856744;font-size:12px;padding:14px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.ff-error button {background:none;border:0;color:#87623a;text-decoration:underline;white-space:nowrap}
.ff-pro {border:1px solid #d7e5f1;border-radius:12px;background:linear-gradient(110deg,#edf6fd,#f3f8fb);padding:24px;display:flex;gap:20px;margin-top:24px}
.ff-pro-icon {border-radius:12px;background:#dcedfb;color:#548fb8;width:43px;height:43px;display:grid;place-items:center;font-size:23px;flex-shrink:0}
.ff-pro .ff-eyebrow {font-size:8px}.ff-pro h3 {font-size:18px;line-height:1.4;color:#305c7c;margin:7px 0}.ff-pro p {font-size:12px;color:#69849a;max-width:590px;margin:7px 0}.ff-coming-soon {display:inline-block;font-size:9px;font-weight:650;color:#7292a9;border:1px solid #ccdeeb;border-radius:4px;padding:3px 7px;margin-top:5px}
.ff-pagination {display:flex;align-items:center;justify-content:center;gap:25px;margin:30px 0}.ff-pagination button {background:white;border:1px solid var(--ff-border);border-radius:7px;font-size:11px;color:#56768e;padding:8px 13px}.ff-pagination span {font-size:11px;color:#8b9ba8}
.ff-disclosure {text-align:center;font-size:10px;color:#8d9eab;line-height:1.7;max-width:620px;margin:30px auto 0}
.ff-skeleton {height:385px;border:1px solid #e4ebf1;border-radius:10px;background:linear-gradient(110deg,#fff 30%,#f0f4f8 48%,#fff 66%);background-size:250% 100%;animation:ff-loading 1.5s infinite}
@keyframes ff-loading {to {background-position:-160% 0}}
.ff-mobile-only,.ff-filter-toggle {display:none}
.ff-icon-button {border:0;background:#f1f5f8;color:#688497;border-radius:50%;font-size:24px;width:34px;height:34px;line-height:1;padding:0;cursor:pointer;flex-shrink:0}
.ff-price-dialog {border:1px solid #d8e3eb;border-radius:16px;padding:26px;max-width:620px;width:calc(100% - 32px);max-height:85vh;overflow:auto;color:#294a60;box-shadow:0 20px 60px #122d4940}
.ff-price-dialog::backdrop {background:#16395066;backdrop-filter:blur(3px)}
.ff-dialog-head {display:flex;align-items:start;justify-content:space-between;gap:15px}.ff-dialog-head h2 {font-size:20px;font-weight:650;line-height:1.4;margin:6px 0 12px}.ff-price-dialog .ff-hint {font-size:11px}
.ff-offer {display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid #e5ecf1;align-items:center}.ff-offer:first-child {margin-top:20px}.ff-offer strong {font-size:14px}.ff-offer small {display:block;color:#8a9ca9;font-size:11px;margin-top:3px}.ff-offer-price {text-align:right;white-space:nowrap}.ff-offer .ff-offer-link {display:inline-block;background:#eef6fc;border:1px solid #d6e8f6;color:#1c7ab9;border-radius:5px;padding:5px 9px;font-size:10px;margin-top:6px}
@media(min-width:1500px) {.ff-hero {padding-top:58px}.ff-hero h1 {font-size:48px}.ff-grid {gap:20px}.ff-product-image {height:190px}.ff-card h3 {font-size:13px}.ff-card-body {padding:14px 16px 16px}}
@media(max-width:1199px) {.ff {padding:0 28px 35px}.ff-layout {grid-template-columns:245px minmax(0,1fr);gap:22px}.ff-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.ff-product-image {padding:20px 20px 10px;height:166px}.ff-card-body {padding:11px 12px 13px}.ff-hero-detail {right:35px}}
@media(max-width:900px) {.ff {padding:0 22px 30px}.ff-hero {padding:32px 0 23px}.ff-hero h1 {font-size:36px}.ff-hero-detail {right:15px;top:55px;font-size:15px}.ff-layout {display:block}.ff-filters {display:none;position:fixed;z-index:1055;inset:0 auto 0 0;top:0;max-height:none;height:100dvh;width:min(360px,92vw);border:0;border-radius:0;padding:20px 22px 0;background:#fff;overscroll-behavior:contain}.ff-filters[data-open=true] {display:block}.ff-mobile-only {display:block}.ff-overlay {position:fixed;inset:0;z-index:1054;background:#18374d65;backdrop-filter:blur(2px)}.ff-filter-toggle {display:flex;align-items:center;gap:8px;border:1px solid #d5e1eb;border-radius:8px;background:white;font-size:12px!important;padding:9px 12px;color:#41687f}.ff-filter-toggle svg {width:17px;height:17px;fill:#fff;stroke:currentColor;stroke-width:1.5}.ff-filter-toggle>span {background:#eaf4fc;padding:0 5px;border-radius:3px;font-size:10px}.ff-toolbar-note {display:none}.ff-toolbar {padding:16px 0 24px}.ff-filter-bottom {position:sticky;bottom:0;background:#fff;padding:15px 0;border-top:1px solid #e5edf4;z-index:11}.ff-filter-bottom button {width:100%;padding:13px}.ff-filters .ff-label,.ff-filters .ff-checks legend,.ff-filters .ff-section>summary {font-size:13px}.ff-filters .ff-checks label {font-size:13px;padding:7px 0}.ff-filters input[type=number],.ff-filters input[type=search],.ff-filters select {font-size:16px!important;min-height:43px}.ff-ingredient-picker input {font-size:16px!important}.ff-filters .ff-hint {font-size:11px}.ff-filters .ff-suggestions button {font-size:14px;padding:12px 8px}.ff-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ff-product-image {height:180px}.ff-results-heading {margin-bottom:18px}}
@media(max-width:575px) {.ff {padding:0 16px 26px}.ff-hero {padding:28px 0 22px}.ff-hero h1 {font-size:31px;letter-spacing:-1px;line-height:1.13;margin:13px 0}.ff-hero>p {font-size:12px;line-height:1.7;max-width:320px}.ff-desktop-break {display:none}.ff-hero-detail {display:none}.ff-eyebrow {font-size:8px;letter-spacing:1.2px}.ff-preview-badge {font-size:8px;padding:2px 5px;margin-left:6px}.ff-search-bar {height:55px;padding:0 13px;gap:10px;border-radius:9px}.ff .ff-search-bar input {font-size:16px}.ff-live-label {display:none}.ff-search-bar svg {width:19px;height:19px}.ff-pets {gap:1px;padding:3px}.ff-pets span {padding:7px 15px;font-size:11px}.ff-toolbar {padding:13px 0 24px}.ff-results-heading {align-items:flex-start;gap:7px;margin-bottom:16px}.ff-results-heading h2 {font-size:17px}.ff-results-heading p {font-size:10px;margin-top:5px}.ff-sort {display:block;text-align:right}.ff-sort label {display:none}.ff-sort select {font-size:10px;max-width:133px;min-height:32px}.ff-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ff-product-image {height:156px;padding:16px 23px 6px}.ff-product-image img {max-height:133px}.ff-card-body {padding:10px 11px 12px}.ff-card h3 {font-size:11px;min-height:50px}.ff-brand {font-size:8px}.ff-card-type {font-size:8px;margin-bottom:8px}.ff-nutrition {gap:2px;padding:8px 0;margin-bottom:10px}.ff-nutrition dt {font-size:7px}.ff-nutrition dd {font-size:10px}.ff-price strong {font-size:15px}.ff-price-button {padding:10px 2px}.ff-card-rating {font-size:9px;margin-bottom:9px}.ff-disclosure {font-size:9px;text-align:left;margin-top:24px}.ff-pro {padding:18px 14px;gap:12px}.ff-pro-icon {width:31px;height:31px;font-size:19px;border-radius:8px}.ff-pro h3 {font-size:16px}.ff-pro p {font-size:11px}.ff-skeleton {height:348px}.ff-price-dialog {padding:20px}.ff-dialog-head h2 {font-size:17px}}
@media(max-width:360px) {.ff {padding-left:12px;padding-right:12px}.ff-pets span {padding:7px 9px}.ff-grid {gap:9px}.ff-product-image {height:142px;padding:14px 16px 5px}.ff-card-body {padding:9px}.ff-hero h1 {font-size:28px}}
@media(max-width:575px) {.ff-card h3 {font-size:12px;min-height:54px}.ff-brand {font-size:9px}.ff-card-type {font-size:9px}.ff-nutrition dt {font-size:8px}.ff-nutrition dd {font-size:11px}.ff-card-rating {font-size:10px}.ff-price-button {font-size:11px!important}.ff-result-note {font-size:10px;line-height:1.6}}
@media(prefers-reduced-motion:reduce) {.ff * {animation:none!important;transition:none!important}}
/* Package selection and retailer identities in the price comparison dialog. */
.ff-package-picker {border:0;padding:0;margin:22px 0 18px;min-width:0}
.ff-package-picker legend {float:none;width:auto;font-size:12px;font-weight:650;color:#45657b;margin:0 0 10px}
.ff-size-options {display:flex;flex-wrap:wrap;gap:8px;max-height:180px;overflow:auto;padding:3px}
.ff-size-option {font:inherit;font-size:12px;line-height:1.4;cursor:pointer;padding:10px 13px;border:1px solid #d5e2ec;border-radius:8px;color:#526e83;background:#fff}
.ff-size-option:hover {border-color:#76afe0;background:#f5faff}
.ff-size-option[aria-pressed=true] {color:#086eb7;border-color:#238bd4;background:#eaf5fe;box-shadow:0 0 0 1px #238bd4;font-weight:650}
.ff-selected-size {font-size:12px;font-weight:600;color:#58768b;margin:0 0 6px}
.ff-retailer {flex:1;min-width:0;display:flex;align-items:center}
.ff-retailer-logo {display:block;width:140px;height:40px;max-width:100%;object-fit:contain;object-position:left center}
.ff-retailer-offers .ff-offer:first-child {margin-top:0}
@media(max-width:575px) {.ff-size-option {font-size:12px;padding:10px 11px;min-height:42px}.ff-retailer-logo {width:112px;height:36px}.ff-offer {gap:12px}.ff-offer-price small {white-space:normal;max-width:145px}.ff-offer .ff-offer-link {font-size:12px;padding:8px 11px}}

/* Public finder: compact hero, direct advanced access, and multi-select forms. */
@media(min-width:901px) {
  .ff-hero {text-align:center;padding:28px 0 24px}
  .ff-hero h1 {font-size:clamp(30px,2.8vw,40px);letter-spacing:-1.2px;margin:12px 0 10px}
  .ff-hero>p {font-size:14px;max-width:820px;margin:0 auto}
  .ff-hero .ff-desktop-break {display:none}
}
.ff-filter-actions {display:flex;align-items:center;gap:8px;flex-shrink:0}
.ff-filter-toggle {display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #d5e1eb;border-radius:8px;background:#fff;font-size:12px!important;font-weight:600;padding:9px 12px;color:#41687f;white-space:nowrap;min-height:38px}
.ff-filter-toggle svg {width:16px;height:16px;fill:#fff;stroke:currentColor;stroke-width:1.5}
.ff-filter-toggle>span {background:#eaf4fc;padding:0 4px;border-radius:3px;font-size:10px}
.ff-advanced-toggle {background:#fff;border-color:#d5e1eb;color:#41687f}
.ff-filter-toggle:hover {background:#fff;border-color:#8cbfe4}
.ff-overlay {position:fixed;inset:0;z-index:1054;background:#18374d65;backdrop-filter:blur(2px)}
.ff-filters[data-open=true] {display:block;position:fixed;z-index:1055;inset:0 auto 0 0;max-height:none;overflow-y:auto;height:100dvh;width:min(440px,94vw);border:0;border-radius:0;padding:22px 24px 0;background:#fff;overscroll-behavior:contain}
.ff-filters[data-open=true] .ff-mobile-only {display:block}
.ff-filters[data-panel=advanced]>.ff-section:not([data-advanced]) {display:none}
.ff-filters[data-open=true] .ff-section>summary {font-size:14px}
.ff-filters[data-open=true] .ff-label,.ff-filters[data-open=true] .ff-range legend {font-size:12px}
.ff-filters[data-open=true] .ff-hint {font-size:11px}
.ff-filters[data-open=true] input[type=search],.ff-filters[data-open=true] input[type=number],.ff-filters[data-open=true] select {font-size:16px!important;min-height:43px}
.ff-filter-bottom {position:sticky;bottom:0;background:#fff;padding:15px 0;border-top:1px solid #e5edf4;z-index:11}
.ff-filter-bottom button {width:100%;padding:13px}
.ff-multiselect {position:relative}
.ff-multiselect>summary {display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;border:1px solid #dce5ec;border-radius:7px;padding:9px 10px;min-height:38px;background:#fff;font-size:12px;font-weight:400;color:#304b60;cursor:pointer}
.ff-multiselect>summary::-webkit-details-marker {display:none}
.ff-multiselect>summary:after {content:"⌄";position:static;font-size:14px;color:#6d8496;flex-shrink:0}
.ff-multiselect[open]>summary:after {content:"⌃"}
.ff-multiselect>summary>span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ff-form-options {margin:5px 0 0;padding:7px 10px;border:1px solid #dce5ec;border-radius:7px;max-height:230px;overflow:auto;background:#fff;box-shadow:0 5px 15px #193e5a0a}
.ff-form-options label {padding:7px 0}
@media(max-width:575px) {
  .ff-toolbar {gap:6px;flex-wrap:nowrap}
  .ff-pets {gap:0;flex-shrink:0}
  .ff-pets span {padding:8px 10px;font-size:11px}
  .ff-filter-actions {gap:6px}
  .ff-filter-toggle {padding:8px 9px;gap:4px;font-size:11px!important;min-height:38px}
  .ff-filter-toggle svg {display:block}
  .ff-filter-toggle>span {font-size:9px;padding:0 3px}
  .ff-multiselect>summary {font-size:16px;min-height:43px}
}
@media(max-width:360px) {
  .ff-pets span {padding-left:7px;padding-right:7px}
  .ff-filter-toggle {padding-left:7px;padding-right:7px}
}

/* Keep the comparison frame steady while package and retailer counts change. */
.ff-price-dialog {height:min(640px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);overflow:hidden;padding:24px;max-width:640px}
.ff-price-dialog[open] {display:flex;flex-direction:column}
.ff-price-dialog .ff-dialog-head,.ff-price-dialog>.ff-hint {flex-shrink:0}
.ff-price-dialog .ff-dialog-head h2 {margin-bottom:4px;font-size:18px}
.ff-price-dialog #ff-offers {flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.ff-price-dialog .ff-package-picker {margin:18px 0 12px;flex-shrink:0}
.ff-price-dialog .ff-size-options {max-height:120px}
.ff-price-dialog .ff-selected-size {flex-shrink:0;margin-bottom:8px;font-size:11px}
.ff-price-dialog .ff-retailer-offers {overflow-y:auto;min-height:0;flex:1;scrollbar-gutter:stable;overscroll-behavior:contain}
.ff-price-dialog .ff-dialog-footer {margin:12px 0 0;padding-top:12px;border-top:1px solid #e5ecf1;font-size:10px}
.ff-offer-compact {display:grid;grid-template-columns:108px minmax(0,1fr) 108px;gap:16px;min-height:80px;padding:14px 0}
.ff-offer-compact .ff-retailer {justify-content:center}
.ff-offer-compact .ff-retailer-logo {width:100%;height:32px;object-position:center}
.ff-offer-compact .ff-offer-price {text-align:center;white-space:normal}
.ff-offer-compact .ff-offer-price strong {font-size:18px;line-height:1.3}
.ff-offer-compact .ff-offer-price small {font-size:11px;line-height:1.4;margin:4px auto 0;color:#708695}
.ff-offer-compact .ff-offer-link {justify-self:end;margin:0;padding:10px 12px;font-size:12px;white-space:nowrap;text-decoration:none}
.ff-offer-compact .ff-offer-link:hover {background:#dfedf8}
@media(max-width:575px) {
  .ff-price-dialog {padding:18px;width:calc(100% - 24px);height:min(640px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}
  .ff-price-dialog .ff-dialog-head h2 {font-size:16px}
  .ff-price-dialog .ff-package-picker {margin-top:14px}
  .ff-offer-compact {grid-template-columns:76px minmax(0,1fr) 76px;gap:10px;min-height:76px;padding:12px 0}
  .ff-offer-compact .ff-retailer-logo {height:28px}
  .ff-offer-compact .ff-offer-price strong {font-size:16px}
  .ff-offer-compact .ff-offer-price small {font-size:10px}
  .ff-offer-compact .ff-offer-link {font-size:10px;padding:9px 8px}
}
@media(max-height:600px) {
  .ff-price-dialog .ff-size-options {max-height:66px}
  .ff-price-dialog>.ff-hint:not(.ff-dialog-footer) {display:none}
  .ff-price-dialog .ff-dialog-head h2 {font-size:15px;max-height:42px;overflow:auto}
}

/* Separate filter actions from the species-and-sort row. */
.ff-filter-bar {padding:12px 0 10px}
.ff-filter-bar+.ff-toolbar {padding:0 0 20px;gap:12px;flex-wrap:nowrap}
.ff-toolbar .ff-sort {display:flex;align-items:center;min-width:0}
.ff-toolbar .ff-sort select {background:#fff;min-height:40px;font-size:12px;max-width:180px}
@media(max-width:575px) {
  .ff-filter-bar {gap:8px;padding-top:10px}
  .ff-filter-bar .ff-filter-toggle {font-size:12px!important;padding:9px 12px;gap:7px}
  .ff-filter-bar+.ff-toolbar {padding-bottom:18px;gap:8px}
  .ff-toolbar .ff-sort select {width:145px;max-width:45vw;font-size:11px}
}

/* Searchable, multi-select ingredient family checklists. */
.ff-ingredient-select {position:relative;margin:0}
.ff-ingredient-control {display:flex;align-items:stretch;border:1px solid #d8e3eb;border-radius:7px;background:#fff}
.ff-ingredient-control:focus-within {border-color:#67a9d8;box-shadow:0 0 0 2px #67a9d820}
.ff-ingredient-select[data-open=true] .ff-ingredient-control {border-color:#67a9d8;border-radius:7px 7px 0 0}
.ff .ff-ingredient-control input[type=search] {flex:1;min-width:0;width:100%;font-size:13px!important;border:0;box-shadow:none;background:transparent;margin:0;min-height:42px;padding:10px 11px;outline:0}
.ff .ff-ingredient-toggle {display:grid;place-items:center;align-self:stretch;flex:0 0 38px;padding:0;margin:0;border:0;border-left:1px solid #e5edf3;background:transparent;color:#6e8ba0;border-radius:0 7px 7px 0;min-height:42px}
.ff-ingredient-toggle svg {display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ff-ingredient-menu {border:1px solid #d8e3eb;border-top:0;border-radius:0 0 7px 7px;background:#fff;padding:8px}
.ff-ingredient-options {max-height:230px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.ff-ingredient-options label {display:flex;align-items:center;gap:9px;margin:0;padding:9px 7px;border-radius:5px;cursor:pointer;color:#35566d;font-size:12px;line-height:1.4}
.ff-ingredient-options label:hover {background:#f1f7fc}
.ff-ingredient-options label:has(input:checked) {background:#eaf4fc;color:#126ca9}
.ff-ingredient-options label:has(input:disabled) {color:#8796a0;cursor:default}
.ff-ingredient-options input[type=checkbox] {flex-shrink:0;width:16px;height:16px;margin:0;accent-color:#0878d4}
.ff-ingredient-options small {display:block;font-size:10px;color:#8295a2}
.ff-ingredient-status {font-size:10px;line-height:1.5;color:#698395;margin:7px 3px 1px}
@media(max-width:900px) {.ff .ff-ingredient-control input[type=search] {font-size:16px!important}.ff-ingredient-options label {font-size:14px;min-height:42px}.ff-ingredient-status {font-size:11px}}
html.ff-scroll-locked {overflow:hidden;overscroll-behavior:none}

.ff-ingredient-status:empty {display:none}

/* One field style for the sidebar and drawer, including native Safari selects. */
.ff-filters {
  --ff-field-height:44px;
  --ff-field-font-size:14px;
  --ff-field-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236e8ba0' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
.ff .ff-filters select,.ff .ff-filters input[type=search],.ff .ff-filters input[type=number],.ff .ff-filters .ff-multiselect>summary {
  box-sizing:border-box;width:100%;height:var(--ff-field-height);min-height:var(--ff-field-height);
  font-family:inherit;font-size:var(--ff-field-font-size)!important;font-weight:400;line-height:20px;
  color:#304b60;background-color:#fff;border:1px solid #d8e3eb;border-radius:7px;padding:11px 12px;box-shadow:none;
}
.ff .ff-filters select {
  -webkit-appearance:none;appearance:none;padding-right:42px;
  background-image:var(--ff-field-chevron);background-repeat:no-repeat;background-size:16px 16px;background-position:right 12px center;
}
.ff-filters input[type=search] {-webkit-appearance:none;appearance:none}
.ff .ff-filters .ff-multiselect>summary {position:relative;padding-right:42px}
.ff-filters .ff-multiselect>summary:after {
  content:"";position:absolute;right:12px;top:50%;width:16px;height:16px;transform:translateY(-50%);
  background:var(--ff-field-chevron) center/16px 16px no-repeat;
}
.ff-filters .ff-multiselect[open]>summary:after {transform:translateY(-50%) rotate(180deg)}
.ff-filters .ff-ingredient-control {height:var(--ff-field-height)}
.ff-filters .ff-ingredient-control input[type=search] {
  height:calc(var(--ff-field-height) - 2px);min-height:0;padding:10px 11px;border:0;border-radius:7px 0 0 7px;background:transparent;
}
.ff-filters .ff-ingredient-toggle {flex-basis:40px;min-height:0}
@media(max-width:900px) {.ff-filters {--ff-field-font-size:16px}}


/* Readable type and a stronger PawDiet palette. Keep secondary filter actions white. */
.pd-finder-preview {background:#f7f9fc}
.ff,.ff-price-dialog {
  --ff-blue:#006bc7;--ff-ink:#14324a;--ff-muted:#52677a;--ff-border:#c5d5e3;--ff-control-border:#758a9e;
  color:var(--ff-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;
}
.ff :focus-visible,.ff-price-dialog :focus-visible {outline:3px solid #006bc7;outline-offset:3px}
.ff-eyebrow {font-size:.75rem;letter-spacing:1.5px;color:#426078}
.ff-preview-badge {font-size:.75rem;color:#235b80;border-color:#a1bed4}
.ff-hero-accent {color:var(--ff-blue)}
.ff-hero>p {font-size:1.0625rem;line-height:1.6;color:var(--ff-muted)}
.ff-search-bar {border-color:var(--ff-control-border);box-shadow:0 4px 16px #14324a0a}
.ff-search-bar svg {stroke:var(--ff-blue);stroke-width:2}
.ff-search-bar:focus-within {border-color:var(--ff-blue);box-shadow:0 0 0 3px #006bc726}
.ff .ff-search-bar input {font-size:1.125rem}
.ff input::placeholder {color:#5d7081}
.ff-live-label {font-size:.8125rem;color:#426078}
.ff-live-label i {background:#15804d;width:8px;height:8px}
.ff-filter-bar {padding:14px 0 12px;gap:10px}
.ff-filter-bar .ff-filter-toggle {min-height:44px;padding:10px 16px;font-size:.9375rem!important;gap:8px;color:#174c77;background:#fff;border-color:var(--ff-control-border);box-shadow:0 2px 4px #14324a06}
.ff-filter-toggle svg {width:19px;height:19px;stroke-width:1.8}
.ff-filter-toggle>span {font-size:.75rem;color:#174c77;background:#e2f0ff}
.ff-filter-toggle:hover {border-color:var(--ff-blue);box-shadow:0 0 0 1px var(--ff-blue)}
.ff-pets {border-color:var(--ff-control-border);padding:3px;gap:3px}
.ff-pets span {font-size:.9375rem;color:#405a70;padding:10px 24px;line-height:20px}
.ff-pets input:checked+span {background:var(--ff-blue);color:#fff;box-shadow:0 2px 4px #006bc726}
.ff-pets input:focus-visible+span {outline-color:var(--ff-blue)}
.ff-toolbar .ff-sort label {font-size:.875rem;color:var(--ff-muted)}
.ff-toolbar .ff-sort select {height:46px;min-height:46px;max-width:200px;font-size:.9375rem;color:var(--ff-ink);border-color:var(--ff-control-border)}
.ff-filters {--ff-field-font-size:1rem;border-color:var(--ff-border);box-shadow:0 3px 12px #14324a05;padding-top:22px}
.ff-filter-heading h2 {font-size:1.125rem;letter-spacing:-.2px}
.ff-reset {font-size:.875rem!important;color:var(--ff-blue);min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:3px}
.ff-filters .ff-section {border-color:#dce6ee;padding:18px 0}
.ff-filters .ff-section>summary,.ff-filters[data-open=true] .ff-section>summary {font-size:1rem;line-height:1.4;color:var(--ff-ink);min-height:28px;padding-right:22px}
.ff-section>summary:after {color:#426078;font-size:22px;line-height:1}
.ff-filters .ff-label,.ff-filters .ff-checks legend,.ff-filters .ff-range legend,.ff-filters[data-open=true] .ff-label,.ff-filters[data-open=true] .ff-range legend {font-size:.875rem;color:#354f65;line-height:1.5}
.ff-filters .ff-hint,.ff-filters[data-open=true] .ff-hint,.ff-ingredient-note {font-size:.8125rem;line-height:1.6;color:var(--ff-muted)}
.ff-ingredient-note {background:#edf5ff;border-left:3px solid var(--ff-blue);padding:12px;margin:8px 0 0}
.ff .ff-filters select,.ff .ff-filters input[type=search],.ff .ff-filters input[type=number],.ff .ff-filters .ff-multiselect>summary {color:var(--ff-ink);border-color:var(--ff-control-border)}
.ff-filters .ff-ingredient-control {border-color:var(--ff-control-border)}
.ff-filters .ff-ingredient-toggle {color:#405f78;border-left-color:#c5d5e3;flex-basis:44px}
.ff-filters .ff-checks label,.ff-ingredient-options label {font-size:.9375rem;color:#354f65;line-height:1.5;min-height:40px;padding-top:8px;padding-bottom:8px}
.ff input[type=checkbox],.ff-ingredient-options input[type=checkbox] {width:18px;height:18px;accent-color:var(--ff-blue)}
.ff-ingredient-options label:has(input:checked) {color:#104b79;background:#e2f0ff}
.ff-ingredient-options small,.ff-ingredient-status {font-size:.8125rem;color:var(--ff-muted)}
.ff-selected-ingredients button,.ff-chip {font-size:.8125rem!important;line-height:1.45;color:#174c77;background:#e2f0ff;border-color:#8baccc;padding:7px 9px;min-height:34px}
.ff-selected-ingredients button span,.ff-chip span {color:#174c77;font-size:1rem}
.ff-range legend>span,.ff-range>div>span {font-size:.8125rem;color:var(--ff-muted)}
.ff-card {container-type:inline-size;border-color:#c5d5e3;border-radius:12px;box-shadow:0 3px 10px #14324a08}
.ff-card:hover {border-color:#7aa7ce;box-shadow:0 7px 22px #14324a14}
.ff-card-body {padding:14px 16px 16px}
.ff-brand {font-size:.75rem;color:#52677a;letter-spacing:.6px;margin-bottom:7px}
.ff-card h3 {font-size:1rem;line-height:1.45;font-weight:650;color:var(--ff-ink);min-height:0;margin-bottom:10px;overflow-wrap:anywhere}
.ff-card-type {font-size:.8125rem;color:var(--ff-muted);margin-bottom:10px}
.ff-card-rating {font-size:.875rem;color:var(--ff-muted);margin-bottom:14px}
.ff-star {color:#956000;font-size:1rem}.ff-card-rating strong {color:var(--ff-ink)}
.ff-nutrition {border-color:#dce6ee;grid-template-columns:minmax(0,1fr);gap:5px;padding:12px 0;margin-top:auto;margin-bottom:14px}
.ff-nutrition>div {display:flex;align-items:center;justify-content:space-between;gap:8px}
.ff-nutrition dt {font-size:.75rem;color:var(--ff-muted);line-height:1.4;white-space:nowrap}
.ff-nutrition dd {font-size:1rem;color:var(--ff-ink);margin:0;padding:0;white-space:nowrap;flex-shrink:0}
.ff-price {flex-wrap:wrap;row-gap:2px;margin-top:0;margin-bottom:12px}
.ff-price strong {font-size:1.375rem;color:var(--ff-ink);letter-spacing:-.4px}
.ff-price span {font-size:.75rem;color:var(--ff-muted);white-space:nowrap}
.ff-price .ff-unavailable {font-size:.875rem;color:var(--ff-muted);font-weight:500}
.ff-price-button,.ff-primary {background:var(--ff-blue);border-color:var(--ff-blue);color:#fff;font-size:.9375rem!important;font-weight:650;line-height:1.4;min-height:44px;padding:11px 8px;box-shadow:0 2px 5px #006bc71a}
.ff-price-button {white-space:nowrap}
.ff-price-button:hover,.ff-primary:hover {background:#0055a3;border-color:#0055a3;color:#fff}
.ff-result-note,.ff-empty p,.ff-error,.ff-pro p {font-size:.9375rem;color:var(--ff-muted)}
.ff-pro {border-color:#9cbddd;background:#e2f0ff}.ff-pro h3 {font-size:1.25rem;color:var(--ff-ink)}
.ff-pro .ff-eyebrow,.ff-coming-soon {font-size:.75rem;color:#315976}
.ff-pro-icon {color:#006bc7;background:#fff}
.ff-pagination button {font-size:.9375rem;color:#174c77;border-color:var(--ff-control-border);min-height:44px;padding:10px 16px}
.ff-pagination span {font-size:.875rem;color:var(--ff-muted)}
.ff-disclosure {font-size:.8125rem;color:var(--ff-muted);max-width:680px}
.ff-icon-button {height:40px;width:40px;font-size:28px;background:#edf4fa;color:#315976}
.ff-price-dialog .ff-dialog-head h2 {font-size:1.25rem;color:var(--ff-ink);line-height:1.4}
.ff-price-dialog .ff-hint {font-size:.875rem;color:var(--ff-muted);line-height:1.5}
.ff-package-picker legend {font-size:.9375rem;color:var(--ff-ink)}
.ff-size-option {font-size:.875rem;min-height:44px;white-space:nowrap;flex-shrink:0;color:#354f65;border-color:var(--ff-control-border)}
.ff-size-option[aria-pressed=true] {background:var(--ff-blue);border-color:var(--ff-blue);box-shadow:none;color:#fff}
.ff-price-dialog .ff-selected-size {font-size:.875rem;color:#354f65}
.ff-price-dialog .ff-dialog-footer {font-size:.8125rem;color:var(--ff-muted)}
.ff-offer-compact .ff-offer-price strong {font-size:1.375rem;color:var(--ff-ink);white-space:nowrap}
.ff-offer-compact .ff-offer-price small {font-size:.8125rem;color:var(--ff-muted)}
.ff-offer-compact .ff-offer-link {font-size:.875rem;background:var(--ff-blue);border-color:var(--ff-blue);color:#fff;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.ff-offer-compact .ff-offer-link:hover {background:#0055a3;border-color:#0055a3}
@media(min-width:901px) {
  .ff-hero {padding:28px 0 26px}
  .ff-hero>p {max-width:900px}
}
@media(min-width:1200px) and (max-width:1399px) {.ff-grid {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:901px) and (max-width:1099px) {.ff-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:576px) and (max-width:700px) {.ff-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px) {
  .ff-hero>p {font-size:1rem;line-height:1.6;max-width:none}
  .ff-eyebrow {font-size:.6875rem;letter-spacing:1.2px}
  .ff .ff-search-bar input {font-size:1rem}
  .ff-filter-bar .ff-filter-toggle {font-size:.875rem!important;padding:10px 13px}
  .ff-pets {gap:0;padding:2px}
  .ff-pets span {font-size:.875rem;padding:10px 11px}
  .ff-toolbar .ff-sort {flex:1;max-width:175px}
  .ff-toolbar .ff-sort select {font-size:.875rem;width:100%;max-width:none;padding-left:9px;padding-right:20px}
  .ff-card-body {padding:12px 11px}
  .ff-card h3 {font-size:.9375rem;line-height:1.45}
  .ff-brand {font-size:.6875rem}
  .ff-card-type {font-size:.75rem}
  .ff-nutrition {gap:3px}.ff-nutrition dd {font-size:.9375rem}
  .ff-price strong {font-size:1.25rem}
  .ff-price-button {font-size:.875rem!important;padding:11px 3px}
  .ff-price-dialog .ff-dialog-head h2 {font-size:1.0625rem}
  .ff-price-dialog .ff-hint {font-size:.8125rem}
  .ff-offer-compact {grid-template-columns:90px minmax(0,1fr) 90px;gap:4px}
  .ff-offer-compact .ff-offer-price strong {font-size:1.125rem}
  .ff-offer-compact .ff-offer-price small {font-size:.75rem}
  .ff-offer-compact .ff-offer-link {font-size:.8125rem;padding:9px 6px;white-space:nowrap;text-align:center;line-height:1.35;width:100%;min-width:0}
}
@media(max-width:360px) {
  .ff-pets span {padding-left:8px;padding-right:8px}
  .ff-grid {grid-template-columns:minmax(0,1fr)}
  .ff-card-body {padding:14px 16px}
  .ff-card h3 {font-size:1rem}
  .ff-product-image {height:170px;padding:18px 30px 6px}
  .ff-price-dialog {padding:14px}
  .ff-offer-compact {gap:6px}
}
@media(max-height:600px) {.ff-price-dialog .ff-dialog-head h2 {font-size:.9375rem}}

/* Keep short labels intact; change the layout when their container is narrow. */
@container (min-width:15rem) {
  .ff-nutrition {grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .ff-nutrition>div {flex-direction:column;align-items:stretch;gap:0}
  .ff-nutrition dd {margin-top:auto;padding-top:4px}
}
@media(max-width:400px) {.ff-price-dialog {padding:12px}}
@media(max-width:374px) {
  .ff-offer-compact {grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:10px;padding:14px 0}
  .ff-offer-compact .ff-offer-link {grid-column:1/-1;justify-self:stretch}
  .ff-offer-compact .ff-retailer-logo {max-width:96px}
}

.ff-pagination button,.ff-pagination span {white-space:nowrap}
@media(max-width:575px) {
  .ff-pagination {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .ff-pagination span {grid-column:1/-1;grid-row:1;text-align:center}
  .ff-pagination button {grid-row:2}
}

/* Clear exclusion/requirement colors, reinforced by the field names. */
.ff-ingredient-picker[data-picker=exclude] {--ff-ingredient-ink:#b42318;--ff-ingredient-tint:#fff1f0;--ff-ingredient-border:#e9b5af}
.ff-ingredient-picker[data-picker=include] {--ff-ingredient-ink:#166534;--ff-ingredient-tint:#edf9f0;--ff-ingredient-border:#afd3b8}
.ff-ingredient-section .ff-section-body>.ff-ingredient-picker:first-child {margin-top:0}
.ff-filters .ff-ingredient-picker>.ff-label {color:var(--ff-ingredient-ink);font-weight:700;margin-top:0}
.ff-ingredient-picker .ff-selected-ingredients button {color:var(--ff-ingredient-ink);background:var(--ff-ingredient-tint);border-color:var(--ff-ingredient-border)}
.ff-ingredient-picker .ff-selected-ingredients button span {color:inherit}
.ff-ingredient-picker .ff-ingredient-options label:has(input:checked) {color:var(--ff-ingredient-ink);background:var(--ff-ingredient-tint)}
.ff-ingredient-picker .ff-ingredient-options input[type=checkbox] {accent-color:var(--ff-ingredient-ink)}

/* The complete retailer row is one accessible affiliate link. */
a.ff-offer-compact {color:var(--ff-ink);text-decoration:none;border-radius:6px;transition:background .15s}
a.ff-offer-compact:hover {background:#eaf3fc;text-decoration:none;color:var(--ff-ink)}
a.ff-offer-compact:focus-visible {outline:3px solid var(--ff-blue);outline-offset:-3px}
a.ff-offer-compact:hover .ff-offer-link {background:#0055a3}
