:root{--ink:#243d34;--green:#21664b;--muted:#6f7f76;--line:#dce4dc;--paper:#f6f7f2;--pale:#e9efe5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.45 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select{font:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:var(--green)}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bf873c;outline-offset:3px}header{display:flex;align-items:center;gap:45px;padding:24px max(28px,calc((100vw - 1392px)/2));border-bottom:1px solid var(--line);background:#fff}.brand{font-size:25px;letter-spacing:-1px;font-weight:750;text-decoration:none;color:var(--ink);white-space:nowrap}.brand span{font-weight:400}.brand small{display:block;font-size:11px;letter-spacing:1.2px;font-weight:400;color:var(--muted)}#search{display:flex;flex:1;max-width:680px;gap:8px}input,select{border:1px solid var(--line);border-radius:9px;background:#fff;padding:11px;color:var(--ink);min-width:0}#query{width:100%;background:var(--paper)}button{border:0;background:var(--green);color:white;padding:11px 20px;border-radius:9px}#search button{white-space:nowrap}.preview-tag{font-size:12px;color:var(--muted)}main{max-width:1392px;margin:auto;padding:38px 28px}.intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted)}h1{font-size:42px;font-weight:550;line-height:1.13;letter-spacing:-1.4px;margin:12px 0 0}h1 em{font-weight:400;font-style:normal;color:var(--green)}.intro p{max-width:345px;color:var(--muted);margin:0 0 4px}#overview{border:1px solid var(--line);border-radius:12px;background:white;margin-bottom:22px}summary{cursor:pointer;padding:17px 20px;font-weight:600}summary span{float:right;color:var(--muted);font-size:12px;font-weight:400}#categories{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 18px 18px}.category{background:var(--paper);border-radius:10px;padding:15px}.category svg{height:52px;width:66px;display:block;margin-bottom:12px;color:var(--green)}.category strong{display:block;margin-bottom:8px}.category a{display:block;font-size:12px;margin-top:5px}#scopes{display:flex;gap:8px;margin-bottom:28px;overflow:auto}#scopes button{background:transparent;color:var(--ink);border:1px solid var(--line);white-space:nowrap}#scopes button.active{background:var(--ink);color:white;border-color:var(--ink)}.layout{display:grid;grid-template-columns:224px minmax(0,1fr);gap:30px}aside{padding:5px 5px 0 0}h2{font-size:21px;letter-spacing:-.4px;margin:0}.subtle,#count{font-size:13px;color:var(--muted);margin:4px 0 22px}.filter{display:block;margin:20px 0}.filter>span{display:block;font-size:13px;font-weight:600;margin-bottom:8px}.filter select{width:100%;font-size:13px}.text-button{background:none;color:var(--green);padding:6px 0;border-bottom:1px solid var(--green);border-radius:0;font-size:13px}.aside-note{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;font-size:12px;color:var(--muted)}.results-heading{display:flex;justify-content:space-between}.snapshot-note{font-size:12px;color:var(--muted);margin:-5px 0 18px}.card{border:1px solid var(--line);border-radius:16px;background:white;margin-bottom:20px;overflow:hidden}.card-top{padding:23px 24px 14px;display:flex;justify-content:space-between;gap:14px}.card h3{font-size:22px;font-weight:600;letter-spacing:-.5px;margin:0 0 5px}.card-meta{font-size:12px;color:var(--muted)}.arrows{display:flex;gap:6px;align-items:start}.arrows button{width:33px;height:33px;padding:0;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:50%;font-size:20px}.strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 24px 18px;scrollbar-width:thin;scrollbar-color:#b9cbbf transparent}.merchant{flex:0 0 228px;scroll-snap-align:start;border:1px solid var(--line);border-radius:10px;padding:11px;display:flex;flex-direction:column;position:relative}.photo-button{padding:0;background:#fafbf8;border-radius:7px;width:100%;height:144px;display:grid;place-items:center;overflow:hidden;color:var(--muted);font-size:12px}.photo-button img{max-width:100%;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}.merchant a.shop{font-weight:600;margin:13px 0 7px;display:block;text-decoration:none}.merchant a.shop:hover{text-decoration:underline}.price{font-size:22px;font-weight:650;letter-spacing:-.5px}.package{font-size:12px;min-height:35px;margin:3px 0 5px}.offer-title{font-size:11px;line-height:1.4;color:var(--muted);margin:0 0 8px}.stock{font-size:11px;color:var(--muted);margin-top:auto;padding-top:8px}.unit-price{font-size:11px;color:var(--muted)}.variant-bar{border-top:1px solid var(--line);padding:13px 24px;background:#f9faf6;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px}.variant-bar select{font-size:12px;max-width:100%;flex:1 1 260px;padding:8px}.variant-bar button{padding:8px 12px;font-size:12px}.variant-panel{padding:12px 24px;border-top:1px solid var(--line);background:#f9faf6}.variant-panel .filter{display:inline-block;width:calc(50% - 12px);margin:0 12px 12px 0;vertical-align:top}.variant-panel p{font-size:12px;color:var(--muted)}.secondary{background:white;color:var(--green);border:1px solid var(--line)}.status{padding:30px;color:var(--muted)}.error{color:#8b492a}.merchant-note{padding:0 24px 12px;color:var(--muted);font-size:12px}.sort{width:auto;max-width:220px;font-size:12px;padding:7px}#more{display:block;margin:24px auto}#more[hidden]{display:none}footer{border-top:1px solid var(--line);color:var(--muted);font-size:11px;margin-top:60px;padding-top:18px}dialog{border:1px solid var(--line);border-radius:16px;padding:24px;max-width:650px;width:90vw;color:var(--ink)}dialog::backdrop{background:#16352999}dialog img{display:block;width:100%;height:50vh;object-fit:contain;margin:15px 0}dialog h2{font-size:19px}dialog p{font-size:13px}#close-photo{float:right}#mobile-filters{display:none}[hidden]{display:none!important}@media(max-width:800px){header{padding:18px;gap:16px;flex-wrap:wrap}.brand{font-size:23px}.preview-tag{margin-left:auto;font-size:10px}#search{order:3;flex-basis:100%;max-width:none}main{padding:24px 16px}.intro{display:block;margin-bottom:22px}h1{font-size:32px}.intro p{font-size:13px;margin-top:16px;max-width:100%}#categories{grid-template-columns:repeat(2,1fr);padding:0 10px 10px;gap:8px}.category{padding:10px}.layout{display:block}aside{display:none;margin-bottom:25px;padding:18px;background:white;border:1px solid var(--line);border-radius:12px}aside.open{display:block}#mobile-filters{display:block;align-self:start}.card-top{padding:18px 16px 12px}.card h3{font-size:20px}.strip{padding:4px 16px 16px}.merchant{flex-basis:228px}.variant-bar{padding:12px 16px}.variant-panel{padding:12px 16px}.variant-panel .filter{width:100%}.arrows{display:none}#scopes{margin-bottom:22px}#scopes button{font-size:13px;padding:10px 12px}}

/* Readability revision: names and choices lead; supporting data stays quieter. */
.card h3{font-size:28px;line-height:1.2}.merchant{flex-basis:268px}.photo-button{height:166px}.merchant a.shop{font-size:18px}.offer-title{font-size:17px;line-height:1.45;color:var(--ink);font-weight:500;margin:10px 0 12px}.price{font-size:26px}.package{min-height:0;font-size:13px}.stock,.unit-price{font-size:12px;line-height:1.45}.card-meta{font-size:14px}.variant-bar{font-size:15px}.variant-bar>span{font-weight:600}.variant-panel{padding:18px 24px}.variant-panel .filter{display:block;width:100%;margin:0 0 18px}.chip-filter{border:0;padding:0;min-width:0}.chip-filter legend{font-size:16px;font-weight:650;margin-bottom:10px;padding:0}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{padding:10px 15px;min-height:44px;border:1px solid #cdd8cf;background:white;color:var(--ink);font-size:16px;border-radius:8px;text-align:left;line-height:1.35}.filter-chip:hover{border-color:var(--green);background:#eef4ec}.filter-chip[aria-pressed=true]{background:var(--green);border-color:var(--green);color:white}.variant-panel p{font-size:13px}.execution-options{margin:8px 0}.chip-filter .chip-row{max-width:100%}.extra-filters{margin-top:20px}#filters .filter-chip{font-size:14px;padding:8px 10px}.variant-panel[aria-busy=true]{opacity:.65}.variant-panel[aria-busy=true] button{pointer-events:none}@media(max-width:800px){.card h3{font-size:25px}.merchant{flex-basis:250px}.offer-title{font-size:17px}.variant-panel{padding:16px}.variant-panel .filter{width:100%}.filter-chip{font-size:16px;padding:9px 12px}}

/* Search is the persistent primary entry; catalogue is a compact disclosure. */
header{position:sticky;top:0;z-index:40;gap:24px;padding-top:16px;padding-bottom:16px;box-shadow:0 3px 15px #243d3408}#search{max-width:none;flex:1;min-width:0}#query{min-height:54px;font-size:18px;background:#fff;border:2px solid #719981}#search button{font-size:17px;padding:12px 24px}header .brand{font-size:22px}header #overview{margin:0;border:0;background:transparent;flex:none}#overview>summary{padding:12px 16px;border:1px solid var(--line);border-radius:9px;font-size:15px;list-style:none;white-space:nowrap}#overview>summary::-webkit-details-marker{display:none}#overview>summary::before{content:'☰';margin-right:9px}#overview[open]>summary{background:var(--pale)}.catalog-popup{position:absolute;top:calc(100% + 8px);right:max(16px,calc((100vw - 1392px)/2));width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - var(--search-header-height,110px) - 24px);overflow:auto;border:1px solid var(--line);border-radius:14px;background:white;box-shadow:0 16px 40px #243d3420;overscroll-behavior:contain}.catalog-popup-title{font-size:20px;font-weight:600;padding:20px}html{scroll-padding-top:calc(var(--search-header-height,100px) + 16px)}.card,.results-heading{scroll-margin-top:calc(var(--search-header-height,100px) + 16px)}@media(max-width:800px){header{display:grid;grid-template-columns:1fr auto;gap:10px;padding:12px 16px}#search{order:0;grid-row:1;grid-column:1/-1;width:100%;gap:6px}#query{font-size:16px;min-height:48px}#search button{font-size:15px;padding:10px 16px}header .brand{grid-row:2;font-size:18px}header .brand small{display:none}header #overview{grid-row:2;grid-column:2}#overview>summary{padding:8px 12px;font-size:14px}.catalog-popup-title{font-size:18px;padding:16px}}

/* Search-first home. The same form moves into the header on results pages. */
.is-home header{justify-content:space-between}.is-home main{padding-top:0}.home-hero{text-align:center;padding:68px 0 58px;max-width:1000px;margin:auto}.home-hero h1{font-size:clamp(32px,3.3vw,48px);line-height:1.18;letter-spacing:-1.5px;margin:22px 0}.home-hero>p{font-size:18px;color:var(--muted);margin:0 0 30px}.home-hero #search{max-width:none;width:100%;gap:10px}.home-hero #query{font-size:20px;padding:21px 24px;background:white;border:1.5px solid #8ba995;border-radius:13px}.home-hero #search button{font-size:18px;padding:18px 30px;border-radius:13px}.search-examples{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:16px;color:var(--muted);flex-wrap:wrap}.search-examples button{padding:0;background:none;color:var(--green);border-radius:0;border-bottom:1px solid #b8cabc;font-size:15px}.home-directory{padding-top:26px;border-top:1px solid var(--line)}.home-directory-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:22px}.home-directory-heading h2{font-size:25px;margin:0}.home-directory-heading p{color:var(--muted);margin:0}#home-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}.home-category{border:1px solid var(--line);border-radius:15px;background:white;overflow:hidden}.home-category summary{list-style:none;min-height:152px;padding:20px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}.home-category summary::-webkit-details-marker{display:none}.home-category summary svg{width:68px;height:48px;color:var(--green);flex-basis:100%;background:#f1f5ec;border-radius:8px}.home-category summary>span{float:none;font-size:17px;font-weight:600;line-height:1.3;color:var(--ink);flex:1}.home-category summary>.category-arrow{flex:0;color:var(--green);font-size:20px}.home-category[open]{border-color:#8ba995}.home-category-links{padding:0 20px 20px;display:flex;flex-direction:column;gap:12px}.home-category-links a{font-size:15px;text-decoration:none}.home-category-links a:hover{text-decoration:underline}.is-home footer{margin-top:44px}
@media(max-width:1000px){#home-categories{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.home-hero{padding:38px 0}.home-hero .eyebrow{font-size:10px;letter-spacing:1px}.home-hero h1{font-size:32px;letter-spacing:-1px}.home-hero>p{font-size:16px}.home-hero #query{font-size:16px;padding:16px 12px}.home-hero #search button{padding:14px;font-size:16px}.home-directory-heading{display:block}.home-directory-heading p{margin-top:8px;font-size:14px}#home-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-category summary{padding:14px;min-height:148px}.home-category summary>span{font-size:15px}.home-category-links{padding:0 14px 16px}.search-examples{gap:12px;font-size:14px}.is-home header{flex-wrap:nowrap}}

/* Text-only category tiles, requested by the owner. */
.home-category summary{min-height:88px;flex-wrap:nowrap}.home-category summary svg{display:none}@media(max-width:650px){.home-category summary{min-height:88px}}

/* Bound tall supplier photos to the preview frame rather than intrinsic grid height. */
.photo-button{position:relative}.photo-button img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;padding:8px}

/* Desktop filters remain below the live-height search header. */
@media(min-width:801px){#sidebar{position:sticky;top:calc(var(--search-header-height,100px) + 16px);align-self:start;max-height:calc(100dvh - var(--search-header-height,100px) - 32px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-right:10px;scroll-padding-block:12px}}

#search-loading{position:fixed;right:24px;bottom:24px;z-index:70;width:min(440px,calc(100vw - 32px));border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 32px #243d3426;overflow:hidden}.loading-body{padding:18px 20px}.loading-body strong{font-size:16px}.loading-body p{font-size:14px;color:var(--muted);margin:8px 0 0}#loading-elapsed{float:right;margin-left:12px;color:var(--muted);font-variant-numeric:tabular-nums}.loading-line{height:4px;background:var(--pale);overflow:hidden}.loading-line::after{content:'';display:block;width:35%;height:100%;background:var(--green);animation:search-wait 1.5s ease-in-out infinite}@keyframes search-wait{from{transform:translateX(-100%)}to{transform:translateX(390%)}}#search-loading.failed .loading-line{display:none}#loading-retry{margin-top:12px}.updating{opacity:.45;transition:opacity .15s}@media(prefers-reduced-motion:reduce){.loading-line::after{animation:none;width:100%}.updating{transition:none}}@media(max-width:650px){#search-loading{right:16px;bottom:16px}}

/* Compact search status directly beneath the persistent search header. */
#search-loading{top:var(--search-header-height,87px);right:0;bottom:auto;left:0;width:100%;border:0;border-bottom:1px solid #b8cdbf;border-radius:0;background:#edf5ee;box-shadow:0 2px 6px #243d3410;z-index:39}
.loading-body{max-width:1392px;margin:auto;padding:6px 28px;display:flex;align-items:center;gap:12px;min-height:32px}.loading-body strong{font-size:14px;font-weight:600;color:var(--green);line-height:20px}#loading-elapsed{float:none;margin-left:auto;flex-shrink:0;font-size:13px;color:var(--green)}.loading-line{height:3px;background:#d9e9dd}
.loading-body p{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#loading-retry{margin:0;padding:4px 12px;font-size:13px;white-space:nowrap}
@media(min-width:801px){body:has(#search-loading:not([hidden])) #sidebar{top:calc(var(--search-header-height,100px) + 54px);max-height:calc(100dvh - var(--search-header-height,100px) - 70px)}}
@media(max-width:650px){.loading-body{padding:6px 16px;gap:8px}.loading-body strong{font-size:13px}#search-loading.failed .loading-body{flex-wrap:wrap}}

.pagination{text-align:center;margin:24px 0}.pagination p{font-size:15px;color:var(--muted);margin:0 0 12px}.pagination #more{margin:0 auto}

.price-filter strong{display:block;margin-bottom:10px}.price-inputs{display:flex;gap:8px;margin-bottom:10px}.price-inputs label{display:block;flex:1;min-width:0;font-size:13px}.price-inputs input{display:block;width:100%;margin-top:4px}.price-filter button{font-size:14px;padding:8px 12px}

.checked-at{display:block;font-size:12px;line-height:1.45;color:var(--muted);margin-top:6px}footer{font-size:13px;line-height:1.55}footer nav{display:flex;flex-wrap:wrap;gap:12px 24px}footer p{max-width:950px}

@media(max-width:420px){#home-categories{grid-template-columns:minmax(0,1fr)}}

/* Compact spacing without reducing the readable product typography. */
.merchant{flex-basis:248px;padding:10px}.photo-button{height:144px}
.card{margin-bottom:16px}.card-top{padding:18px 20px 10px}
.strip{gap:10px;padding:4px 20px 14px}.merchant a.shop{margin:10px 0 6px}
.offer-title{margin:8px 0 10px}.merchant-note{padding:0 20px 10px}
.variant-bar{padding:10px 20px;gap:8px}.variant-panel{padding:14px 20px}
.variant-panel .filter{margin-bottom:14px}
.home-hero{padding-top:44px;padding-bottom:40px}
.home-category summary{min-height:76px;padding:16px}
@media(max-width:800px){.merchant{flex-basis:240px}.card-top{padding:16px 16px 10px}.strip{padding:4px 16px 12px}.merchant-note{padding:0 16px 10px}.variant-bar,.variant-panel{padding:12px 16px}}
@media(max-width:650px){.home-hero{padding:28px 0}.home-category summary{min-height:76px;padding:14px}}

/* Local shop selection never wraps into a second filter panel. */
.shop-chip-row{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px}.shop-chip-row .filter-chip{flex:0 0 auto}.shop-filter{min-width:0;width:100%}

.medicine-references{background:var(--paper,#fff);border:1px solid var(--line,#d9e1d9);border-radius:16px;padding:24px;margin-bottom:20px}.reference-list{list-style:none;padding:0;margin:16px 0 0}.reference-item{padding:14px 0;border-top:1px solid #d9e1d9;overflow-wrap:anywhere}.reference-title{font-weight:600;margin-bottom:4px}.reference-item a{display:inline-block;margin-top:6px}

/* One visible shop: use the available width without changing offer selection. */
.strip.single-shop{display:flex;flex-direction:column;overflow-x:visible;scroll-snap-type:none}
.strip.single-shop>.merchant{flex:none;width:100%;min-width:0}
@media(min-width:601px){
.strip.single-shop>.merchant{display:grid;grid-template-columns:minmax(140px,30%) minmax(0,1fr);column-gap:22px;align-content:start}
.strip.single-shop>.merchant>.photo-button{grid-column:1;grid-row:1 / span 20;height:210px;align-self:start}
.strip.single-shop>.merchant>:not(.photo-button){grid-column:2;min-width:0;overflow-wrap:anywhere}
.strip.single-shop>.merchant>a.shop{margin-top:0}
.strip.single-shop>.merchant>.stock{margin-top:0}
}

/* Shared legacy brand artwork; compact on small screens. */
header .brand{display:flex;align-items:center;gap:10px;flex-shrink:0}header .brand .brand-logo{width:44px;height:44px;object-fit:contain;flex:none}header .brand .brand-copy{display:block;color:inherit;font-weight:inherit}header .brand .brand-copy>span{font-weight:400}@media(max-width:800px){header .brand .brand-logo{width:32px;height:32px}header .brand{gap:8px}}
