.rpo-delivery-chooser,.rpo-delivery-change{--rpo-delivery-accent:var(--rpo-primary,var(--theme-palette-color-1,#245d45));--rpo-delivery-border:var(--rpo-border,#dce3dc);box-sizing:border-box;max-width:960px;margin:24px auto;padding:clamp(18px,4vw,28px);border:1px solid var(--rpo-delivery-border);border-radius:16px;background:var(--rpo-raised,#fff);color:var(--rpo-text,inherit)}
.rpo-delivery-chooser *,.rpo-delivery-change *{box-sizing:border-box}
.rpo-delivery-chooser h2,.rpo-delivery-change h2{margin:0 0 6px;font-size:clamp(21px,4vw,28px);line-height:1.2}
.rpo-delivery-chooser p,.rpo-delivery-change p{margin:0 0 18px}
/* Share the active menu palette, with WordPress theme tokens as fallbacks. */
#rpo-delivery-branches.rpo-delivery-chooser {
  --rpo-delivery-accent: var(--rpo-primary, var(--theme-link-initial-color, var(--theme-palette-color-1, #245d45)));
  --rpo-delivery-accent-hover: var(--rpo-accent, var(--rpo-primary, var(--theme-link-hover-color, var(--theme-palette-color-2, var(--rpo-delivery-accent)))));
  --rpo-delivery-border: var(--rpo-border, var(--theme-border-color, #dce3dc));
  --rpo-delivery-surface: var(--rpo-surface, var(--rpo-raised, var(--theme-background-color, #fff)));
  --rpo-delivery-text: var(--rpo-text, var(--theme-text-color, #263c2e));
  background: var(--rpo-background, var(--rpo-delivery-surface));
  color: var(--rpo-delivery-text);
  overflow-wrap: anywhere;
}
#rpo-delivery-branches.rpo-delivery-chooser h2 {
  color: var(--rpo-heading, var(--theme-heading-color, var(--theme-headings-color, var(--rpo-delivery-text))));
  text-align: center;
  text-transform: uppercase;
}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-intro { text-align: center; }
#rpo-delivery-branches.rpo-delivery-chooser p { color: var(--rpo-delivery-text); }
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-chooser-brand { margin-bottom: 18px; }
#rpo-delivery-branches.rpo-delivery-chooser .rpo-brand-logo { display: block; width: auto; height: auto; max-width: min(100%, 350px); max-height: 80px; object-fit: contain; }
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card{display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:106px;min-width:0;padding:18px;border:1px solid var(--rpo-delivery-border);border-radius:12px;background:var(--rpo-delivery-surface);color:var(--rpo-delivery-text)!important;text-decoration:none!important;box-shadow:var(--rpo-shadow-sm,0 4px 14px #203b3212)}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card strong{color:var(--rpo-heading,var(--rpo-delivery-text));font-size:18px;line-height:1.3}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card>span{align-self:flex-start;padding:8px 12px;border-radius:8px;background:var(--rpo-button-primary,var(--rpo-delivery-accent));color:var(--rpo-button-primary-text,var(--rpo-delivery-text));font-size:14px;font-weight:700}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card>span span{color:inherit}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:hover,
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:focus-visible,
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:active{border-color:var(--rpo-delivery-accent-hover);box-shadow:0 0 0 2px color-mix(in srgb,var(--rpo-delivery-accent-hover) 20%,transparent)}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:hover>span,
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:focus-visible>span,
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:active>span{background:var(--rpo-button-secondary,var(--rpo-button-primary,var(--rpo-delivery-accent)));color:var(--rpo-button-secondary-text,var(--rpo-button-primary-text,var(--rpo-delivery-text)));text-decoration:underline;text-underline-offset:.2em}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:focus-visible{outline:3px solid var(--rpo-delivery-accent-hover);outline-offset:3px}
#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card:active{box-shadow:inset 0 0 0 1px var(--rpo-delivery-accent-hover)}
.rpo-delivery-current{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0 4px;padding:12px 16px;border:1px solid var(--rpo-border);border-radius:12px;background:var(--rpo-raised);color:var(--rpo-text)}
.rpo-delivery-current>details{position:relative}
.rpo-delivery-current summary{min-height:44px;display:flex;align-items:center;padding:8px 12px;border:1px solid var(--rpo-border);border-radius:9px;color:var(--rpo-primary);font-weight:700;cursor:pointer}
.rpo-delivery-current summary:hover,.rpo-delivery-current summary:focus-visible{border-color:var(--rpo-primary)}
.rpo-delivery-current details[open]{width:100%}
.rpo-delivery-current .rpo-delivery-chooser{margin:12px 0 0;max-width:none}
.rpo-delivery-change h2{color:var(--rpo-heading,var(--rpo-text,inherit))}
.rpo-delivery-change ul{margin:0 0 20px;padding-left:22px}
.rpo-delivery-change button{min-height:48px;padding:10px 18px;border:0;border-radius:9px;background:var(--rpo-delivery-accent);color:var(--rpo-button-primary-text,#fff);font:inherit;font-weight:700;cursor:pointer}
.rpo-delivery-change>a{display:inline-block;margin:12px 0 0;color:var(--rpo-delivery-accent)}
.rpo-delivery-change button:focus-visible,.rpo-delivery-change a:focus-visible,.rpo-delivery-current summary:focus-visible{outline:3px solid var(--rpo-delivery-accent);outline-offset:3px}
.rpo-delivery-checkout-branch{padding:12px 16px;border:1px solid var(--theme-palette-color-1,#245d45);border-radius:9px;background:var(--theme-palette-color-8,#f3f8f4);color:var(--theme-text-color,inherit)}
@media(max-width:600px){.rpo-delivery-current{align-items:stretch}.rpo-delivery-current>span{width:100%}.rpo-delivery-current>details{width:100%}.rpo-delivery-current summary{justify-content:center}#rpo-delivery-branches.rpo-delivery-chooser .rpo-delivery-branch-card{min-height:88px}.rpo-delivery-change button{width:100%}}

/* The delivery context uses the QR dialog and action bar. Keep its controls usable at 320px. */
.rpo-delivery-menu .rpo-cart-dialog { overscroll-behavior: contain; }
.rpo-delivery-menu .rpo-cart-dialog .rpo-line { display:grid; grid-template-columns:54px minmax(0,1fr); align-items:start; gap:10px; }
.rpo-delivery-menu .rpo-cart-dialog .rpo-line:not(:has(.rpo-line-image)) { grid-template-columns:minmax(0,1fr); }
.rpo-delivery-menu .rpo-cart-dialog .rpo-line-actions { grid-column:1 / -1; display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:flex-start; gap:8px; min-width:0; }
.rpo-delivery-menu .rpo-cart-dialog .rpo-line-actions>button { flex:0 1 auto; min-height:44px; padding:8px 10px; white-space:normal; line-height:1.3; margin:0; }
.rpo-delivery-menu .rpo-cart-dialog .rpo-quantity { flex:none; margin:0; }
.rpo-delivery-menu .rpo-cart-dialog .rpo-quantity button { min-width:44px; min-height:44px; }
.rpo-delivery-menu #rpo-keep-shopping { width:100%; min-height:44px; margin-top:8px; }
.rpo-delivery-menu #rpo-client-actions { max-width:calc(100vw - 24px); }
.rpo-delivery-menu #rpo-client-actions .rpo-mobile-cart { flex:1 1 auto; min-width:0; white-space:normal; }
.rpo-delivery-menu #rpo-client-actions #rpo-filter-open { flex:0 0 auto; min-width:90px; }
@media(max-width:360px) { .rpo-delivery-menu #rpo-client-actions { left:12px; right:12px; } .rpo-delivery-menu #rpo-client-actions .rpo-mobile-cart { padding:9px; font-size:12px; } }
.rpo-delivery-chooser [hidden]{display:none!important}

/* Entry and browse modes share the menu palette and product engine. */
#rpo-delivery-branches .rpo-delivery-intents{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));grid-auto-rows:1fr;gap:12px;margin-block:18px;align-items:stretch}
#rpo-delivery-branches .rpo-delivery-intents button{display:flex;align-items:center;justify-content:center;position:static;float:none;transform:none;width:100%;max-width:none;min-width:0;height:auto;min-height:56px;margin:0;padding:14px;border:1px solid var(--rpo-button-primary);border-radius:12px;background:var(--rpo-button-primary);color:var(--rpo-button-primary-text);font:inherit;font-weight:700;line-height:1.4;white-space:normal;cursor:pointer}
#rpo-delivery-branches .rpo-delivery-intents button:is(:hover,[aria-expanded=true]){box-shadow:inset 0 0 0 2px var(--rpo-button-primary-text)}
#rpo-delivery-branches :is(.rpo-delivery-intents button,select):focus-visible{outline:3px solid var(--rpo-primary);outline-offset:3px}
@media(max-width:600px){#rpo-delivery-branches .rpo-delivery-intents{grid-template-columns:minmax(0,1fr)}}
.rpo-delivery-chooser label{display:grid;gap:6px;margin-block:14px}
#rpo-delivery-branches.rpo-delivery-chooser select{display:block;width:100%;max-width:none;min-width:0;min-height:48px;margin:0;padding:10px;border:1px solid var(--rpo-border);border-radius:8px;background:var(--rpo-input-background);color:var(--rpo-input-text);font:inherit;color-scheme:inherit;opacity:1}
#rpo-delivery-branches.rpo-delivery-chooser select option{background:var(--rpo-input-background);color:var(--rpo-input-text)}
#rpo-delivery-branches.rpo-delivery-chooser select:disabled{cursor:not-allowed}
.rpo-app.rpo-menu-browse :is(.rpo-menu-loading-status,#rpo-service:has(.rpo-menu-loading-status)){position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.rpo-menu-browse :is(#rpo-bag,#rpo-mobile-cart,.rpo-card-actions,.rpo-dialog-footer,.rpo-recommendation-add){display:none!important}
.rpo-menu-browse .rpo-delivery-current a{color:var(--rpo-primary);font-weight:700}
