/* v5.3.9: readable inputs, safe controls, and keyboard-aware dialogs.
   Accessibility pinch zoom is not disabled. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(12px + env(safe-area-inset-top,0px))}
@media (max-width:1024px), (pointer:coarse){
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]),textarea,select{font-size:16px!important}
}
html.sb-native body{padding-top:env(safe-area-inset-top,0px)}
html.sb-native .store-tabs{top:env(safe-area-inset-top,0px)}
#productDialog[open],#locationDialog[open]{position:fixed;left:50%;right:auto;bottom:auto;top:calc(var(--sb-viewport-top,0px) + max(12px,env(safe-area-inset-top,0px)));transform:translateX(-50%);margin:0;box-sizing:border-box;max-width:calc(100% - 16px);width:min(660px,calc(100% - 16px));height:min(900px,calc(var(--sb-viewport-height,100dvh) - max(12px,env(safe-area-inset-top,0px)) - max(20px,env(safe-area-inset-bottom,0px))));max-height:calc(var(--sb-viewport-height,100dvh) - max(12px,env(safe-area-inset-top,0px)) - max(20px,env(safe-area-inset-bottom,0px)));padding:0;overflow:hidden;border-radius:22px;display:flex;flex-direction:column;min-height:0}
#productDialogBody{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;max-height:none;overflow:hidden;padding:0}
.product-dialog-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 0 12px;scroll-padding-block:12px}
.product-dialog-scroll>.option-group,.product-dialog-scroll>.dialog-field,.product-dialog-scroll>.form-error{margin:14px 16px 0;display:block}
.product-dialog-scroll>.option-group{padding:10px 12px}
.product-dialog-image{height:min(285px,32dvh);object-fit:cover}
.product-dialog-copy{padding:14px 16px 0}.product-dialog-copy h2{font-size:clamp(21px,5.5vw,28px)}
#productDialogBody>.dialog-add-row{flex:0 0 auto;display:grid;grid-template-columns:105px minmax(0,1fr);align-items:center;gap:10px;margin:0;padding:12px 14px max(20px,env(safe-area-inset-bottom,0px));border-top:1px solid #e7dfd8;background:#fff;box-sizing:border-box}
#productDialogBody>.dialog-add-row button{min-height:48px}#productDialogBody>.dialog-add-row .dialog-quantity{min-width:0}#productDialogBody>.dialog-add-row .add-dialog-button{font-size:17px}
#productDialogClose{position:absolute;z-index:4;right:12px;top:12px;width:44px;height:44px}
#locationDialog[open]{width:min(850px,calc(100% - 16px));height:min(940px,calc(var(--sb-viewport-height,100dvh) - max(12px,env(safe-area-inset-top,0px)) - max(20px,env(safe-area-inset-bottom,0px))))}
.location-dialog-head{flex:0 0 auto;padding:10px 14px}.location-dialog-head h2{font-size:19px}.location-dialog-head .section-kicker{margin:0 0 3px;font-size:10px}.location-dialog-head button{min-width:44px;min-height:44px}
.location-dialog-content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding:12px;background:#fff}
.location-search-row{padding:10px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.location-search-row input{width:100%;min-width:0;height:46px}.location-search-row button{min-height:46px}
.location-search-results{margin:0 12px 8px;border:1px solid #ddd;border-radius:12px;max-height:180px;overflow:auto;background:#fff}
.location-search-results[hidden]{display:none}.location-result{display:block;width:100%;text-align:left;padding:12px;border:0;border-bottom:1px solid #eee;background:#fff;color:#29211d;font-size:16px;line-height:1.35;white-space:normal;overflow-wrap:anywhere;min-height:44px}.location-result:focus,.location-result:hover{background:#fff6d7}
.location-dialog-actions{padding:6px 12px;display:flex;align-items:center;flex-direction:row;gap:8px;font-size:13px}.location-dialog-actions .secondary-button{width:auto;min-height:40px}
#locationPickerMap.location-picker-map{height:clamp(140px,32dvh,300px);min-height:140px;max-height:none;width:100%;touch-action:none}
.location-map-legend{display:flex;gap:14px;padding:6px 12px;font-size:12px;align-items:center}.location-map-legend b{border-radius:50%;display:inline-grid;place-items:center;width:21px;height:21px;color:#fff;margin-right:4px}.map-store-key{background:#a16b08}.map-delivery-key{background:#176f47}
.location-selection-summary{padding:8px 12px}.location-selection-summary label{display:block;font-size:12px;font-weight:700;margin-bottom:4px}.location-selection-summary textarea,.location-selection-summary input{width:100%;min-width:0;border:1px solid #ddd0c5;border-radius:9px;padding:9px;font-family:inherit;font-size:16px;line-height:1.25}.location-selection-summary textarea{resize:vertical;min-height:56px}.location-address-grid{display:grid;grid-template-columns:95px minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:6px}.location-selection-status{display:block;line-height:1.35;font-size:13px;margin:7px 0 2px}.location-selection-status.location-ok{color:#176f47}.location-selection-status.location-error{color:#a52222}.location-selection-status.location-loading{color:#755500}
.save-address-panel{padding:8px 12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.save-address-panel>*{min-width:0}.save-address-panel button,.save-address-panel select{min-height:38px}
.location-dialog-foot{flex:0 0 auto;display:grid;grid-template-columns:70px minmax(0,1fr);margin:0;padding:10px 12px max(18px,env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #ddd;gap:8px}.location-dialog-foot button{min-height:46px;white-space:normal;font-size:16px}.location-dialog-foot button:disabled{opacity:.6}
@media(max-width:420px){.location-dialog-head h2{font-size:17px}.location-address-grid{grid-template-columns:85px minmax(0,1fr)}.location-address-grid label:last-child{grid-column:1/-1}.save-address-panel{font-size:12px}.location-map-legend{font-size:11px}}
@media(max-height:540px){#locationPickerMap.location-picker-map{height:140px;min-height:140px}.product-dialog-image{height:135px}.location-dialog-head .section-kicker{display:none}#productDialogBody>.dialog-add-row{padding-top:8px;padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}}

#locationPickerStatus{font-size:13px;line-height:1.4}#locationPickerStatus.location-ok{color:#176f47}#locationPickerStatus.location-error{color:#a52222}
