/* Modern map/address selector. Presentation only: shipping, pricing and checkout logic remain in JS/PHP. */
#stpCheckoutModal .stp-open-delivery-map-style{min-height:42px;margin-top:10px;padding:10px 13px;border:1px solid var(--stp-ui-border,#d9e2dc);border-radius:12px;background:var(--stp-ui-secondary-bg,#f6f8f7);color:var(--stp-primary,#0f4d3a);font-family:inherit;font-size:13px;font-weight:650;cursor:pointer}
#stpCheckoutModal .stp-map-cod-total,#stpCheckoutModal .stp-map-delivery-total{margin:0 0 9px;font-size:14px;line-height:1.4;font-weight:650;text-align:center;color:var(--stp-ui-map-text,var(--stp-ui-text,#263b32))}
#stpCheckoutModal .stp-delivery-map .stp-map-cod-total{padding:11px 13px;border-radius:14px;background:var(--stp-ui-map-cod-bg,var(--stp-ui-location-bg,#eef7f1));color:var(--stp-ui-map-cod-text,var(--stp-primary,#0f4d3a));font-size:15px;font-weight:750}
#stpCheckoutModal .stp-map-terms-label{display:flex;gap:9px;align-items:flex-start;margin:0 0 11px;font-size:13px;line-height:1.45;color:var(--stp-ui-map-text,var(--stp-ui-text,#263b32))}
#stpCheckoutModal .stp-map-terms{flex:none;width:18px;height:18px;margin:1px 0 0;accent-color:var(--stp-primary,#0f4d3a)}
#stpCheckoutModal .stp-map-retry{width:100%;padding:11px 13px;margin-bottom:10px!important;border:1px solid var(--stp-ui-border,#dce4df);border-radius:12px;background:var(--stp-ui-secondary-bg,#f7f9f8);color:var(--stp-primary,#0f4d3a);font-size:13px}
#stpCheckoutModal .stp-delivery-map .stp-map-terms{accent-color:var(--stp-ui-map-pin,var(--stp-primary,#1769e0))}
#stpCheckoutModal .stp-delivery-map .stp-map-retry{border-color:var(--stp-ui-map-address-border,var(--stp-ui-border,#dce4df));background:var(--stp-ui-map-controls-bg,var(--stp-ui-surface,#fff));color:var(--stp-ui-map-controls-text,var(--stp-ui-text,#2a3b34))}

#stpCheckoutModal .stp-delivery-map{position:fixed;inset:auto;z-index:1100;display:flex;flex-direction:column;box-sizing:border-box;background:#f1f4f2;color:var(--stp-ui-map-text,var(--stp-ui-text,#1f2d27));font-family:inherit;line-height:1.4;isolation:isolate;overflow:hidden;overscroll-behavior:contain}
#stpCheckoutModal .stp-delivery-map *,#stpCheckoutModal .stp-delivery-map *:before,#stpCheckoutModal .stp-delivery-map *:after{box-sizing:border-box}
#stpCheckoutModal .stp-delivery-map [hidden]{display:none!important}
#stpCheckoutModal .stp-delivery-map button{appearance:none;-webkit-appearance:none;margin:0;font-family:inherit;letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:none}
#stpCheckoutModal .stp-delivery-map button:disabled{opacity:.5!important;cursor:default}
#stpCheckoutModal .stp-delivery-map button:focus-visible,#stpCheckoutModal .stp-delivery-map input:focus-visible,#stpCheckoutModal .stp-delivery-map a:focus-visible,#stpCheckoutModal .stp-delivery-map summary:focus-visible{outline:3px solid color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 32%,transparent);outline-offset:2px}

/* Map */
#stpCheckoutModal .stp-delivery-map-body{display:flex;flex:1 1 0;flex-direction:column;min-height:230px;overflow:hidden;background:#eef2ef}
#stpCheckoutModal .stp-delivery-map-canvas-wrap{position:relative;flex:1 1 auto;min-height:250px;width:100%;background:#edf1ef;isolation:isolate;border:0;overflow:hidden}
#stpCheckoutModal .stp-delivery-map-canvas{position:absolute;inset:0;width:100%;height:100%;background:#edf1ef;z-index:0}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-tile-pane{filter:saturate(.88) contrast(.98) brightness(1.035)}
#stpCheckoutModal .stp-delivery-map-head{position:absolute;z-index:700;top:14px;left:14px;right:14px;display:flex;align-items:flex-start;gap:10px;margin:0;padding:0;pointer-events:none}
#stpCheckoutModal .stp-delivery-map-heading{order:2;position:relative;flex:1 1 auto;min-width:0;max-width:min(390px,calc(100% - 58px));min-height:50px;padding:10px 42px 10px 45px;border:1px solid rgba(28,48,39,.07);border-radius:17px;background:color-mix(in srgb,var(--stp-ui-map-header-bg,var(--stp-ui-surface,#fff)) 96%,transparent);box-shadow:0 8px 28px rgba(27,45,37,.12),0 1px 2px rgba(27,45,37,.05);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto}
#stpCheckoutModal .stp-delivery-map-heading:before{content:'';position:absolute;left:14px;top:50%;width:18px;height:18px;border:5px solid var(--stp-ui-map-pin,var(--stp-primary,#1769e0));border-radius:50% 50% 50% 0;transform:translateY(-58%) rotate(-45deg);filter:drop-shadow(0 2px 4px rgba(31,72,125,.16))}
#stpCheckoutModal .stp-delivery-map-heading:after{content:'';position:absolute;left:20px;top:50%;width:6px;height:6px;border-radius:50%;background:#fff;transform:translateY(-84%);pointer-events:none}
#stpCheckoutModal .stp-delivery-map-title{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;margin:0!important;padding:0!important;font-size:14px!important;line-height:1.3!important;font-weight:720!important;color:var(--stp-ui-map-header-text,var(--stp-ui-text,#17231e))!important;letter-spacing:0!important;text-transform:none!important;text-overflow:ellipsis;overflow-wrap:anywhere}
#stpCheckoutModal .stp-delivery-map-district{margin:2px 0 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px!important;line-height:1.3!important;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#6f7a74))!important}
#stpCheckoutModal .stp-delivery-map-close{order:1;display:grid;place-items:center;flex:0 0 48px;width:48px;min-width:48px;height:48px;min-height:48px;padding:0;border:1px solid rgba(28,48,39,.06);border-radius:50%;background:color-mix(in srgb,var(--stp-ui-map-controls-bg,var(--stp-ui-surface,#fff)) 96%,transparent);color:var(--stp-ui-map-controls-text,var(--stp-ui-text,#1c2b24));font-size:22px;font-weight:500;line-height:1;box-shadow:0 8px 24px rgba(27,45,37,.13);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);pointer-events:auto}
#stpCheckoutModal .stp-delivery-map-close:hover{transform:translateY(-1px)}
#stpCheckoutModal .stp-delivery-map-controls{position:absolute;inset:0;z-index:650;pointer-events:none}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate{position:absolute;right:15px;bottom:22px;display:grid;place-items:center;width:52px;height:52px;min-width:52px;min-height:52px;margin:0;padding:0;border:1px solid rgba(28,48,39,.08);border-radius:50%;background:color-mix(in srgb,var(--stp-ui-map-locate-bg,#fff) 97%,transparent);color:var(--stp-ui-map-locate-text,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)));box-shadow:0 8px 24px rgba(27,45,37,.15);pointer-events:auto;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
#stpCheckoutModal .stp-delivery-map-locate:before{content:'';display:block;width:18px;height:18px;border:2px solid currentColor;border-radius:50%;background:radial-gradient(circle,currentColor 0 3px,transparent 3.5px);box-shadow:0 -8px 0 -6px currentColor,0 8px 0 -6px currentColor,-8px 0 0 -6px currentColor,8px 0 0 -6px currentColor}
#stpCheckoutModal .stp-delivery-map-locate[aria-busy="true"]:before{border-top-color:transparent;background:none;box-shadow:none;animation:stpMapSpin .7s linear infinite}
#stpCheckoutModal .stp-delivery-map-control-label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#stpCheckoutModal .stp-delivery-map-canvas img.leaflet-tile{max-width:none!important;max-height:none!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-attribution{font-size:9px;line-height:1.35;background:rgba(255,255,255,.88);color:#5d6963;max-width:100%;white-space:normal;border-radius:8px 0 0 0}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-attribution a{color:#3f6153}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-top.leaflet-left{top:80px;left:auto;right:14px}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-zoom{margin:0;border:0;border-radius:15px;overflow:hidden;box-shadow:0 8px 22px rgba(27,45,37,.12)}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-zoom a{background:color-mix(in srgb,var(--stp-ui-map-controls-bg,var(--stp-ui-surface,#fff)) 96%,transparent);color:var(--stp-ui-map-controls-text,var(--stp-ui-text,#304239));font-family:Arial,sans-serif;width:38px;height:38px;line-height:38px;border-color:rgba(28,48,39,.07);font-size:20px}
#stpCheckoutModal .stp-delivery-map-marker{background:transparent;border:0;filter:drop-shadow(0 7px 10px rgba(25,61,116,.28))}
#stpCheckoutModal .stp-delivery-map-marker>span{display:block;position:absolute;top:1px;left:2px;width:31px;height:31px;border:4px solid #fff;border-radius:50% 50% 50% 0;background:var(--stp-ui-map-pin,var(--stp-primary,#1769e0));transform:rotate(-45deg);box-shadow:0 0 0 8px color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 16%,transparent)}
#stpCheckoutModal .stp-delivery-map-marker>span:after{content:'';position:absolute;top:7px;left:7px;width:9px;height:9px;border-radius:50%;background:#fff}
#stpCheckoutModal .stp-delivery-map-reticle{display:none;position:absolute;z-index:600;top:50%;left:50%;width:20px;height:20px;transform:translate(-50%,-50%);pointer-events:none;border:6px solid var(--stp-ui-map-pin,var(--stp-primary,#1769e0));border-radius:50%;background:#fff;box-shadow:0 0 0 8px color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 16%,transparent),0 7px 16px rgba(25,61,116,.22)}
#stpCheckoutModal .stp-delivery-map-canvas-wrap.is-moving .stp-delivery-map-reticle{display:block}
#stpCheckoutModal .stp-delivery-map-unavailable{position:absolute;inset:78px 34px 78px;display:flex;align-items:center;justify-content:center;padding:16px;border-radius:18px;text-align:center;color:#68746e;font-size:14px;background:rgba(255,255,255,.86);pointer-events:none}
#stpCheckoutModal .stp-delivery-map-canvas-wrap.is-busy{pointer-events:none}
#stpCheckoutModal .stp-delivery-map-canvas-wrap.is-busy .stp-delivery-map-close{pointer-events:auto}

/* Bottom sheet */
#stpCheckoutModal .stp-delivery-map-sheet{position:relative;z-index:2;display:flex;flex-direction:column;flex:0 1 auto;width:100%;min-height:0;max-height:62%;padding-top:0;border:1px solid rgba(29,47,39,.055);border-bottom:0;border-radius:28px 28px 0 0;background:var(--stp-ui-map-surface,var(--stp-ui-surface,#fff));box-shadow:0 -14px 44px rgba(27,45,37,.10);overflow:hidden}
#stpCheckoutModal .stp-delivery-map-sheet:before{content:'';position:absolute;z-index:3;top:10px;left:50%;width:42px;height:5px;border-radius:999px;background:#d5d9d7;transform:translateX(-50%);pointer-events:none}
#stpCheckoutModal .stp-delivery-map-sheet-scroll{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:29px 18px 3px;scrollbar-width:thin}
#stpCheckoutModal .stp-delivery-map-sheet-title{margin:0!important;padding:0!important;font-size:21px!important;line-height:1.28!important;font-weight:760!important;color:var(--stp-ui-map-text,var(--stp-ui-text,#17231e))!important;letter-spacing:-.012em!important}
#stpCheckoutModal .stp-delivery-map-sheet-subtitle{margin:4px 0 13px!important;padding:0!important;font-size:13px!important;line-height:1.45!important;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079))!important}
#stpCheckoutModal .stp-delivery-map-cod-badge{display:inline-flex;align-items:center;gap:7px;margin:2px 0 9px!important;padding:7px 11px;border-radius:999px;background:var(--stp-ui-map-cod-bg,var(--stp-ui-location-bg,#eef7f1));color:var(--stp-ui-map-cod-text,var(--stp-primary,#0f4d3a));font-size:13px!important;line-height:1.3!important;font-weight:760}
#stpCheckoutModal .stp-delivery-map-cod-badge:before{content:'✓';display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:color-mix(in srgb,currentColor 12%,transparent);font-size:11px;font-weight:900}
#stpCheckoutModal .stp-delivery-map-eta{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin:0 0 10px!important;font-size:13px!important;line-height:1.4!important;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079))}
#stpCheckoutModal .stp-delivery-map-eta strong{font-size:13px;font-weight:700;color:var(--stp-ui-map-text,var(--stp-ui-text,#33423a))}

/* Selected address card */
#stpCheckoutModal .stp-delivery-map-current-address{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;margin:9px 0 16px;padding:13px 14px 13px 55px;border:1px solid var(--stp-ui-map-address-border,var(--stp-ui-border,#e2e7e4));border-radius:18px;background:var(--stp-ui-map-address-bg,var(--stp-ui-surface,#fff));box-shadow:0 5px 18px rgba(27,45,37,.055);overflow-wrap:anywhere}
#stpCheckoutModal .stp-delivery-map-current-address:before{content:'';position:absolute;left:13px;top:50%;width:31px;height:31px;border-radius:11px;background:color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 11%,#fff);transform:translateY(-50%)}
#stpCheckoutModal .stp-delivery-map-current-address:after{content:'';position:absolute;left:23px;top:50%;width:11px;height:11px;border:3px solid var(--stp-ui-map-pin,var(--stp-primary,#1769e0));border-radius:50% 50% 50% 0;transform:translateY(-65%) rotate(-45deg)}
#stpCheckoutModal .stp-delivery-map-current-label{grid-column:1;grid-row:1;font-size:11px;font-weight:650;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#78837d));text-transform:uppercase;letter-spacing:.035em}
#stpCheckoutModal .stp-delivery-map-current-value{grid-column:1;grid-row:2;font-size:15px;font-weight:720;line-height:1.35;color:var(--stp-ui-map-text,var(--stp-ui-text,#1e2b25))}
#stpCheckoutModal .stp-delivery-map-current-detail{grid-column:1;grid-row:3;font-size:12px;line-height:1.4;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079))}
#stpCheckoutModal .stp-delivery-map-address-edit{grid-column:2;grid-row:1/4;align-self:center;justify-self:end;min-height:36px;margin:0;padding:8px 10px;border:0;border-radius:10px;background:var(--stp-ui-map-controls-bg,#f5f7f6);color:var(--stp-ui-map-controls-text,var(--stp-ui-text,#33423a));font-size:12px;line-height:1.2;font-weight:700;text-align:center;text-decoration:none}
#stpCheckoutModal .stp-delivery-map-address-attribution{grid-column:1/-1;grid-row:4;margin-top:2px;font-size:10px;line-height:1.35;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#849088))}
#stpCheckoutModal .stp-delivery-map-pin-status{margin:8px 2px 10px!important;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079));font-size:12px!important;line-height:1.45!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pinned):not(.is-manual):not(.is-pickup) .stp-delivery-map-pin-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#stpCheckoutModal .stp-delivery-map.is-pinned .stp-delivery-map-pin-status:before{content:'';display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--stp-ui-map-pin,var(--stp-primary,#1769e0));vertical-align:middle}

/* Saved addresses */
#stpCheckoutModal .stp-delivery-map-saved{margin:12px 0 8px}
#stpCheckoutModal .stp-delivery-map-saved-label{margin:0 2px 8px!important;font-size:14px!important;line-height:1.4!important;font-weight:730!important;color:var(--stp-ui-map-text,var(--stp-ui-text,#26342d))!important}
#stpCheckoutModal .stp-delivery-map-saved-list{display:grid;gap:9px;padding:0}
#stpCheckoutModal .stp-delivery-map-saved-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:0;min-height:72px;padding:0 7px 0 0;border:1px solid var(--stp-ui-map-address-border,var(--stp-ui-border,#e2e7e4));border-radius:17px;background:var(--stp-ui-map-address-bg,var(--stp-ui-surface,#fff));box-shadow:0 4px 14px rgba(27,45,37,.04);overflow:hidden;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
#stpCheckoutModal .stp-delivery-map-saved-row.is-selected{border-color:color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 42%,var(--stp-ui-map-address-border,#e2e7e4));background:var(--stp-ui-map-address-selected-bg,color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 6%,#fff));box-shadow:0 5px 18px color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 8%,transparent)}
#stpCheckoutModal .stp-delivery-map-saved-use{position:relative;display:grid;align-content:center;gap:2px;width:100%;min-width:0;min-height:72px;padding:13px 42px 13px 57px;border:0;background:transparent;color:var(--stp-ui-map-text,var(--stp-ui-text,#24332c));text-align:left;overflow-wrap:anywhere}
#stpCheckoutModal .stp-delivery-map-saved-use:before{content:'';position:absolute;left:13px;top:50%;width:32px;height:32px;border:0;border-radius:11px;background:color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 8%,#f3f5f4);transform:translateY(-50%);box-shadow:inset 0 0 0 1px rgba(28,48,39,.035)}
#stpCheckoutModal .stp-delivery-map-saved-use:after{content:'';position:absolute;right:10px;top:50%;width:18px;height:18px;border:2px solid #aeb7b2;border-radius:50%;background:#fff;transform:translateY(-50%);box-shadow:inset 0 0 0 4px #fff;transition:border-color .16s ease,background .16s ease}
#stpCheckoutModal .stp-delivery-map-saved-use[aria-pressed="true"]:before{background:color-mix(in srgb,var(--stp-ui-map-pin,var(--stp-primary,#1769e0)) 13%,#fff)}
#stpCheckoutModal .stp-delivery-map-saved-use[aria-pressed="true"]:after{border-color:var(--stp-ui-map-pin,var(--stp-primary,#1769e0));background:var(--stp-ui-map-pin,var(--stp-primary,#1769e0))}
#stpCheckoutModal .stp-delivery-map-saved-use strong{font-size:15px;font-weight:690;line-height:1.35;color:var(--stp-ui-map-text,var(--stp-ui-text,#202e27));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stpCheckoutModal .stp-delivery-map-saved-use span{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.4;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079))}
#stpCheckoutModal .stp-delivery-map-saved-row .stp-delivery-map-saved-use strong:before{content:'';position:absolute;left:23px;top:50%;z-index:1;width:10px;height:10px;border:3px solid var(--stp-ui-map-pin,var(--stp-primary,#1769e0));border-radius:50% 50% 50% 0;transform:translateY(-68%) rotate(-45deg)}
#stpCheckoutModal .stp-delivery-map-saved-forget{display:grid;place-items:center;width:30px;min-height:30px;padding:0;border:0;border-radius:50%;background:transparent;color:#9aa49f;font-size:18px;line-height:1;opacity:.72}
#stpCheckoutModal .stp-delivery-map-saved-forget:hover,#stpCheckoutModal .stp-delivery-map-saved-forget:focus-visible{background:#f2f4f3;color:#56635c;opacity:1}

/* Manual address kept secondary/collapsed by default */
#stpCheckoutModal .stp-delivery-map-manual-entry{position:relative;display:flex;align-items:center;width:100%;min-height:52px;margin:10px 0 4px;padding:13px 42px 13px 45px;border:1px solid var(--stp-ui-map-address-border,var(--stp-ui-border,#e4e8e6));border-radius:16px;background:#f7f8f7;color:var(--stp-ui-map-text,var(--stp-ui-text,#34423b));font-size:13px;font-weight:650;line-height:1.35;text-align:left}
#stpCheckoutModal .stp-delivery-map-manual-entry:before{content:'✎';position:absolute;left:16px;top:50%;font-size:18px;font-weight:400;transform:translateY(-52%)}
#stpCheckoutModal .stp-delivery-map-manual-entry:after{content:'⌄';position:absolute;right:16px;top:50%;font-size:18px;font-weight:600;color:#7b8680;transform:translateY(-57%)}
#stpCheckoutModal .stp-delivery-map-address-alternative{margin:10px 0 4px;padding:0;border:1px solid var(--stp-ui-map-address-border,var(--stp-ui-border,#e4e8e6));border-radius:16px;background:#f8f9f8;overflow:hidden}
#stpCheckoutModal .stp-delivery-map-address-toggle{position:relative;display:flex;align-items:center;min-height:52px;padding:13px 42px 13px 45px;font-size:13px;line-height:1.35;font-weight:680;color:var(--stp-ui-map-text,var(--stp-ui-text,#34423b));cursor:pointer;list-style:none}
#stpCheckoutModal .stp-delivery-map-address-toggle::-webkit-details-marker{display:none}
#stpCheckoutModal .stp-delivery-map-address-toggle:before{content:'✎';position:absolute;left:16px;top:50%;font-size:18px;font-weight:400;transform:translateY(-52%)}
#stpCheckoutModal .stp-delivery-map-address-toggle:after{content:'⌄';position:absolute;right:16px;top:50%;font-size:18px;font-weight:600;color:#7b8680;transform:translateY(-57%);transition:transform .16s ease}
#stpCheckoutModal .stp-delivery-map-address-alternative[open] .stp-delivery-map-address-toggle:after{transform:translateY(-40%) rotate(180deg)}
#stpCheckoutModal .stp-delivery-map-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;width:100%;margin:0;padding:2px 14px 14px;border-top:1px solid rgba(28,48,39,.055)}
#stpCheckoutModal .stp-delivery-map-help{margin:11px 0 0!important;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079));font-size:12px!important;line-height:1.4!important}
#stpCheckoutModal .stp-delivery-map-field{display:grid;gap:5px;min-width:0;margin:0;color:var(--stp-ui-map-text,var(--stp-ui-text,#2c3a33))}
#stpCheckoutModal .stp-delivery-map-field>span{font-size:12px;line-height:1.3;font-weight:670}
#stpCheckoutModal .stp-delivery-map-field input{appearance:none;display:block;width:100%;min-width:0;min-height:48px;height:48px;margin:0;padding:11px 13px;border:1px solid var(--stp-ui-map-address-border,var(--stp-ui-border,#dce3df));border-radius:13px;background:var(--stp-ui-map-address-bg,var(--stp-ui-surface,#fff));color:var(--stp-ui-map-text,var(--stp-ui-text,#26362e));box-shadow:0 1px 2px rgba(27,45,37,.025);font-family:inherit;font-size:15px;line-height:1.4}
#stpCheckoutModal .stp-delivery-map-field input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="file"]){background-color:var(--stp-ui-map-address-bg,var(--stp-ui-surface,#fff))!important;color:var(--stp-ui-map-text,var(--stp-ui-text,#26362e))!important;border-color:var(--stp-ui-map-address-border,var(--stp-ui-border,#dce3df))!important}
#stpCheckoutModal .stp-delivery-map-field input::placeholder{color:var(--stp-ui-map-muted,var(--stp-ui-muted,#8a948e));font-size:14px;opacity:1}
#stpCheckoutModal .stp-delivery-map-remove{justify-self:start;min-height:34px;padding:6px 0;border:0;background:transparent;color:var(--stp-ui-map-muted,var(--stp-ui-muted,#65716a));font-size:12px;line-height:1.4;text-decoration:none}

#stpCheckoutModal .stp-delivery-map-pickup-details{margin:0;padding:2px 0 13px;background:transparent;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
#stpCheckoutModal .stp-delivery-map-pickup-details>strong{display:none}
#stpCheckoutModal .stp-delivery-map-pickup-details>p{margin:4px 0 0!important;font-size:15px!important;line-height:1.5!important}
#stpCheckoutModal .stp-delivery-map-pickup-schedule{color:var(--stp-ui-map-muted,var(--stp-ui-muted,#748079))}

/* Footer */
#stpCheckoutModal .stp-delivery-map-footer{flex:0 0 auto;max-height:70%;overflow:auto;width:100%;padding:11px max(18px,env(safe-area-inset-right,0px)) calc(13px + env(safe-area-inset-bottom,0px)) max(18px,env(safe-area-inset-left,0px));border-top:1px solid rgba(28,48,39,.055);background:color-mix(in srgb,var(--stp-ui-map-surface,var(--stp-ui-surface,#fff)) 97%,transparent);box-shadow:0 -7px 20px rgba(27,45,37,.035);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#stpCheckoutModal .stp-delivery-map-footer>*{width:100%;margin-left:auto!important;margin-right:auto!important}
#stpCheckoutModal .stp-delivery-map-notice,#stpCheckoutModal .stp-delivery-map-error{padding:9px 11px;border-radius:11px;font-size:12px!important;line-height:1.45!important}
#stpCheckoutModal .stp-delivery-map-notice{margin:5px 0 8px!important;background:#fff8eb;color:#795b29}
#stpCheckoutModal .stp-delivery-map-error{margin:0 0 8px!important;background:#fff2f0;color:#963b34}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:54px;padding:14px 17px;border:0;border-radius:15px;background:var(--stp-ui-map-continue-bg,var(--stp-primary,#0f4d3a));color:var(--stp-ui-map-continue-text,var(--stp-ui-button-text,#fff));font-size:15px;line-height:1.35;font-weight:760;box-shadow:0 7px 18px color-mix(in srgb,var(--stp-ui-map-continue-bg,var(--stp-primary,#0f4d3a)) 18%,transparent)}
#stpCheckoutModal .stp-delivery-map-continue:after{content:'→';flex:none;font-size:18px;line-height:1;font-weight:500}
#stpCheckoutModal .stp-delivery-map-external-footer:empty{display:none}
#stpCheckoutModal .stp-delivery-map-external-footer .stp-cod-step2-checkout{margin-top:0}

#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-body,#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-canvas-wrap{min-height:120px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-sheet{max-height:calc(100% - 120px)}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-canvas .leaflet-control-zoom{display:none}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-head{top:8px;left:10px;right:10px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-heading{padding-top:8px;padding-bottom:8px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-sheet-scroll{padding-top:24px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-sheet-subtitle{display:none}

@media(min-width:680px){
  #stpCheckoutModal .stp-delivery-map-sheet-scroll{padding-left:22px;padding-right:22px}
  #stpCheckoutModal .stp-delivery-map-footer{padding-left:22px;padding-right:22px}
}
@keyframes stpMapSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#stpCheckoutModal .stp-delivery-map *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* 0.23.8 — refinamiento visual del selector de entrega.
   El mapa sigue usando exactamente la misma cobertura, tarifas y validaciones. */
#stpCheckoutModal .stp-delivery-map{
  --stp-ui-map-text:#151515;
  --stp-ui-map-muted:#6f6f73;
  --stp-ui-map-surface:#fff;
  --stp-ui-map-header-bg:#fff;
  --stp-ui-map-header-text:#111;
  --stp-ui-map-controls-bg:#fff;
  --stp-ui-map-controls-text:#111;
  --stp-ui-map-locate-bg:#fff;
  --stp-ui-map-locate-text:#111;
  --stp-ui-map-address-bg:#fff;
  --stp-ui-map-address-border:#e8e8ea;
  --stp-ui-map-pin:#111827;
  background:#f4f4f5;
  color:#151515;
}
#stpCheckoutModal .stp-open-delivery-map-style{border-color:#e5e5e7;background:#f8f8f8;color:#171717;box-shadow:0 4px 12px rgba(0,0,0,.035)}
#stpCheckoutModal .stp-map-cod-total,#stpCheckoutModal .stp-map-delivery-total{color:#191919}
#stpCheckoutModal .stp-delivery-map .stp-map-cod-total{background:#f5f5f5;color:#191919;border:1px solid #e9e9e9;font-weight:720}
#stpCheckoutModal .stp-delivery-map .stp-map-retry{color:#1c1c1e;background:#fafafa;border-color:#e7e7e8}

/* Cabecera flotante: blanca, compacta y con sombra suave. */
#stpCheckoutModal .stp-delivery-map-head{top:12px;left:12px;right:12px;gap:9px}
#stpCheckoutModal .stp-delivery-map-heading{min-height:52px;padding:10px 42px 10px 46px;border-color:rgba(0,0,0,.055);border-radius:17px;background:rgba(255,255,255,.965);box-shadow:0 8px 26px rgba(0,0,0,.115),0 1px 2px rgba(0,0,0,.04)}
#stpCheckoutModal .stp-delivery-map-heading:before{border-color:#151515;filter:none}
#stpCheckoutModal .stp-delivery-map-title{color:#111!important;font-size:14px!important;font-weight:735!important}
#stpCheckoutModal .stp-delivery-map-district{color:#717176!important;font-weight:520}
#stpCheckoutModal .stp-delivery-map-close{flex-basis:50px;width:50px;min-width:50px;height:50px;min-height:50px;border-color:rgba(0,0,0,.055);background:rgba(255,255,255,.97);color:#111;font-size:27px;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.13)}
#stpCheckoutModal .stp-delivery-map-close:hover{transform:translateY(-1px);background:#fff}

/* El mapa conserva su funcionamiento, pero gana más protagonismo visual. */
#stpCheckoutModal .stp-delivery-map-body{min-height:265px;background:#f1f2f2}
#stpCheckoutModal .stp-delivery-map-canvas-wrap{min-height:285px;background:#f1f2f2}
#stpCheckoutModal .stp-delivery-map-canvas{background:#f1f2f2}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-tile-pane{filter:saturate(.82) contrast(.99) brightness(1.035)}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-attribution{background:rgba(255,255,255,.9);color:#666}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-attribution a{color:#4b4b4d}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-zoom{border-radius:14px;box-shadow:0 7px 20px rgba(0,0,0,.11)}
#stpCheckoutModal .stp-delivery-map-canvas .leaflet-control-zoom a{background:rgba(255,255,255,.97);color:#151515;border-color:#ededee}
#stpCheckoutModal .stp-delivery-map-marker{filter:drop-shadow(0 7px 10px rgba(0,0,0,.22))}

/* CTA de ubicación largo justo al borde inferior del mapa. */
#stpCheckoutModal .stp-delivery-map-controls{left:14px;right:14px;top:auto;bottom:12px;height:58px;inset-block-start:auto;pointer-events:none}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:flex-start;gap:12px;width:auto;height:56px;min-width:0;min-height:56px;padding:0 18px;border:1px solid rgba(0,0,0,.07);border-radius:17px;background:rgba(255,255,255,.97);color:#161616;box-shadow:0 9px 28px rgba(0,0,0,.15),0 1px 2px rgba(0,0,0,.04);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:14px;font-weight:735;line-height:1.25;text-align:left}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate:before{flex:0 0 19px;width:19px;height:19px;border-width:2px;color:#161616}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate.has-location:before{border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:radial-gradient(circle,#161616 0 3px,transparent 3.5px);box-shadow:none}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate.has-location .stp-delivery-map-control-label{font-weight:680}
#stpCheckoutModal .stp-delivery-map-control-label{position:static!important;display:block!important;width:auto!important;height:auto!important;min-width:0!important;margin:0!important;padding:0!important;overflow:hidden!important;clip:auto!important;clip-path:none!important;white-space:nowrap!important;border:0!important;text-overflow:ellipsis;color:#161616!important}
#stpCheckoutModal .stp-delivery-map-locate[aria-busy="true"] .stp-delivery-map-control-label{color:#555!important}

/* Hoja inferior: menos texto y jerarquía más clara. */
#stpCheckoutModal .stp-delivery-map-sheet{max-height:54%;border-color:rgba(0,0,0,.045);border-radius:25px 25px 0 0;background:#fff;box-shadow:0 -14px 42px rgba(0,0,0,.105)}
#stpCheckoutModal .stp-delivery-map-sheet:before{top:9px;width:38px;height:4px;background:#d8d8da}
#stpCheckoutModal .stp-delivery-map-sheet-scroll{padding:25px 16px 4px;background:#fff}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-title{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-subtitle{margin:0 0 10px!important;color:#222!important;font-size:13px!important;font-weight:700!important;line-height:1.4!important}
#stpCheckoutModal .stp-delivery-map-cod-badge{display:none!important}
#stpCheckoutModal .stp-delivery-map-eta{margin:0 0 14px!important;padding:10px 12px;border:1px solid #ececee;border-radius:13px;background:#fafafa;color:#77777c;font-size:12px!important;box-shadow:0 3px 10px rgba(0,0,0,.025)}
#stpCheckoutModal .stp-delivery-map-eta strong{color:#1c1c1e;font-size:13px;font-weight:720}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-pin-status{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important}

/* Últimas entregas: tarjetas blancas, tipografía negra y selección neutra. */
#stpCheckoutModal .stp-delivery-map-saved{margin:4px 0 10px}
#stpCheckoutModal .stp-delivery-map-saved-label{margin:0 2px 9px!important;color:#18181a!important;font-size:14px!important;font-weight:735!important}
#stpCheckoutModal .stp-delivery-map-saved-list{gap:8px}
#stpCheckoutModal .stp-delivery-map-saved-row{min-height:68px;border-color:#e9e9eb;border-radius:16px;background:#fff;box-shadow:0 4px 15px rgba(0,0,0,.035)}
#stpCheckoutModal .stp-delivery-map-saved-row.is-selected{border-color:#1c1c1e;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.065)}
#stpCheckoutModal .stp-delivery-map-saved-use{min-height:68px;padding:12px 40px 12px 55px;color:#18181a}
#stpCheckoutModal .stp-delivery-map-saved-use:before{left:12px;width:32px;height:32px;border-radius:11px;background:#f2f2f3;box-shadow:inset 0 0 0 1px rgba(0,0,0,.025)}
#stpCheckoutModal .stp-delivery-map-saved-use:after{right:9px;border-color:#b5b5b9;background:#fff;box-shadow:inset 0 0 0 4px #fff}
#stpCheckoutModal .stp-delivery-map-saved-use[aria-pressed="true"]:before{background:#efeff0}
#stpCheckoutModal .stp-delivery-map-saved-use[aria-pressed="true"]:after{border-color:#19191b;background:#19191b}
#stpCheckoutModal .stp-delivery-map-saved-use strong{color:#18181a;font-weight:700}
#stpCheckoutModal .stp-delivery-map-saved-use span{color:#77777c}
#stpCheckoutModal .stp-delivery-map-saved-row .stp-delivery-map-saved-use strong:before{border-color:#202023}
#stpCheckoutModal .stp-delivery-map-saved-forget{color:#96969a}
#stpCheckoutModal .stp-delivery-map-saved-forget:hover,#stpCheckoutModal .stp-delivery-map-saved-forget:focus-visible{background:#f3f3f4;color:#3f3f43}

/* Entrada manual única y secundaria, justo antes de pagar/pedir. */
#stpCheckoutModal .stp-delivery-map-manual-entry{display:none!important}
#stpCheckoutModal .stp-delivery-map-address-alternative{margin:0 0 10px!important;border:1px solid #e8e8ea;border-radius:15px;background:#f8f8f8;box-shadow:0 3px 10px rgba(0,0,0,.025);overflow:hidden}
#stpCheckoutModal .stp-delivery-map-address-toggle{min-height:50px;padding:12px 40px 12px 43px;color:#343438;font-size:12.5px;font-weight:660}
#stpCheckoutModal .stp-delivery-map-address-toggle:before{left:15px;color:#303034}
#stpCheckoutModal .stp-delivery-map-address-toggle:after{right:15px;color:#77777c}
#stpCheckoutModal .stp-delivery-map-fields{gap:11px;padding:2px 13px 13px;border-top-color:#e8e8ea;background:#fff}
#stpCheckoutModal .stp-delivery-map-help{color:#77777c!important}
#stpCheckoutModal .stp-delivery-map-field{color:#242426}
#stpCheckoutModal .stp-delivery-map-field>span{color:#333336;font-weight:670}
#stpCheckoutModal .stp-delivery-map-field input{border-color:#e2e2e5!important;border-radius:13px!important;background:#fff!important;color:#171719!important;box-shadow:0 2px 7px rgba(0,0,0,.025)!important}
#stpCheckoutModal .stp-delivery-map-field input::placeholder{color:#99999d}
#stpCheckoutModal .stp-delivery-map-remove{display:none!important}

/* Pie fijo: limpio, blanco y con CTA de alta jerarquía. */
#stpCheckoutModal .stp-delivery-map-footer{padding:10px max(16px,env(safe-area-inset-right,0px)) calc(13px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));border-top:1px solid #eeeeef;background:rgba(255,255,255,.98);box-shadow:0 -8px 24px rgba(0,0,0,.055)}
#stpCheckoutModal .stp-delivery-map-notice{background:#f7f7f8;color:#454549}
#stpCheckoutModal .stp-delivery-map-error{background:#fff2f0;color:#963b34}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{min-height:55px;border-radius:16px;font-size:15px;font-weight:760;box-shadow:0 8px 20px color-mix(in srgb,var(--stp-ui-map-continue-bg,var(--stp-primary,#111)) 17%,transparent)}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue:disabled{background:#e9e9eb!important;color:#a0a0a4!important;box-shadow:none!important}
#stpCheckoutModal .stp-map-terms-label{color:#343438}

#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-head{top:7px;left:9px;right:9px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-controls{left:10px;right:10px;bottom:8px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-locate{min-height:50px;height:50px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-sheet-scroll{padding-top:22px}
#stpCheckoutModal .stp-delivery-map.is-compact .stp-delivery-map-sheet-subtitle{display:block}

@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map-heading{padding-right:34px}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-locate{height:54px;min-height:54px;padding-left:16px;padding-right:16px;border-radius:16px}
  #stpCheckoutModal .stp-delivery-map-sheet{max-height:55%}
  #stpCheckoutModal .stp-delivery-map-sheet-scroll{padding-left:14px;padding-right:14px}
  #stpCheckoutModal .stp-delivery-map-footer{padding-left:max(14px,env(safe-area-inset-left,0px));padding-right:max(14px,env(safe-area-inset-right,0px))}
}
/* Mantener visible la atribución del proveedor del mapa por encima del CTA flotante. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:76px}

/* v0.23.9 — mapa más visible, dirección detectada compacta y CTA principal reforzado. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-district{display:none!important}
#stpCheckoutModal .stp-delivery-map-header-eta{display:flex;align-items:center;gap:6px;margin:3px 0 0!important;padding:0!important;color:#68686d!important;font-size:11.5px!important;line-height:1.25!important;font-weight:500!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stpCheckoutModal .stp-delivery-map-header-eta[hidden]{display:none!important}
#stpCheckoutModal .stp-delivery-map-header-eta strong{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#1b1b1d;font-size:11.5px;font-weight:680}
#stpCheckoutModal .stp-delivery-map-header-clock{position:relative;flex:0 0 14px;width:14px;height:14px;border:1.7px solid #5c5c61;border-radius:50%}
#stpCheckoutModal .stp-delivery-map-header-clock:before{content:'';position:absolute;left:5.2px;top:2.6px;width:1.5px;height:4px;border-radius:2px;background:#5c5c61}
#stpCheckoutModal .stp-delivery-map-header-clock:after{content:'';position:absolute;left:5.2px;top:6px;width:3.6px;height:1.5px;border-radius:2px;background:#5c5c61;transform:rotate(25deg);transform-origin:left center}

/* El mapa conserva la mayor parte de la pantalla. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet{max-height:45%!important;border-radius:23px 23px 0 0!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{padding:18px 14px 2px!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet:before{top:7px!important;width:34px!important;height:3px!important;background:#dedee1!important}

/* Indicación fina sobre el borde inferior del mapa, sin consumir alto del panel. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint{position:absolute;z-index:690;left:16px;right:16px;bottom:77px;margin:0!important;padding:6px 10px!important;border:1px solid rgba(0,0,0,.035);border-radius:11px;background:rgba(255,255,255,.90);color:#303034!important;box-shadow:0 4px 13px rgba(0,0,0,.055);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:14px!important;line-height:1.25!important;font-weight:430!important;text-align:center;pointer-events:none}

/* Ubicación: CTA azul diferenciado, con texto siempre claro. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls{left:14px!important;right:14px!important;bottom:11px!important;height:56px!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{height:54px!important;min-height:54px!important;padding:0 18px!important;border:0!important;border-radius:16px!important;background:#1769e0!important;color:#fff!important;box-shadow:0 9px 24px rgba(23,105,224,.28)!important;font-size:14px!important;font-weight:720!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate:before{color:#fff!important;border-color:#fff!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate.has-location:before{background:radial-gradient(circle,#fff 0 3px,transparent 3.5px)!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{color:#fff!important;font-size:14px!important;font-weight:720!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate[aria-busy="true"] .stp-delivery-map-control-label{color:#fff!important;opacity:.92}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate:hover{transform:translateY(-1px);background:#125fcf!important}

/* Dirección detectada: una fila compacta como resultado del pin/GPS. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:1px!important;min-height:54px;margin:0 0 2px!important;padding:8px 7px 8px 40px!important;border:0!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:before{left:9px!important;width:22px!important;height:22px!important;border-radius:50%!important;background:#f2f2f4!important;box-shadow:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:after{left:16px!important;width:8px!important;height:8px!important;border-width:2px!important;border-color:#4b4b50!important}
#stpCheckoutModal .stp-delivery-map-current-label{grid-column:1!important;grid-row:auto!important;color:#77777c!important;font-size:10px!important;font-weight:560!important;letter-spacing:0!important;text-transform:none!important}
#stpCheckoutModal .stp-delivery-map-current-value{grid-column:1!important;grid-row:auto!important;color:#171719!important;font-size:14px!important;font-weight:590!important;line-height:1.25!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stpCheckoutModal .stp-delivery-map-current-detail{grid-column:1!important;grid-row:auto!important;color:#737378!important;font-size:11.5px!important;line-height:1.25!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stpCheckoutModal .stp-delivery-map-address-edit{display:none!important}
#stpCheckoutModal .stp-delivery-map-address-attribution{grid-column:1!important;grid-row:auto!important;margin:1px 0 0!important;color:#929297!important;font-size:9px!important;line-height:1.2!important}

/* Historial de direcciones: máximo dos, igual de liviano que la referencia visual. */
#stpCheckoutModal .stp-delivery-map-saved{margin:1px 0 3px!important}
#stpCheckoutModal .stp-delivery-map-saved-label{display:none!important}
#stpCheckoutModal .stp-delivery-map-saved-list{display:grid!important;gap:0!important;padding:0!important}
#stpCheckoutModal .stp-delivery-map-saved-row{display:block!important;min-height:52px!important;padding:0!important;border:0!important;border-radius:11px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}
#stpCheckoutModal .stp-delivery-map-saved-row+.stp-delivery-map-saved-row{border-top:1px solid #f0f0f2!important;border-radius:0 0 11px 11px!important}
#stpCheckoutModal .stp-delivery-map-saved-row.is-selected{background:#f7f7f8!important;border-color:transparent!important;box-shadow:none!important}
#stpCheckoutModal .stp-delivery-map-saved-use{display:grid!important;align-content:center!important;gap:1px!important;min-height:52px!important;padding:7px 8px 7px 40px!important;color:#171719!important}
#stpCheckoutModal .stp-delivery-map-saved-use:before{left:10px!important;top:50%!important;width:17px!important;height:17px!important;border:1.7px solid #66666b!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;transform:translateY(-50%)!important}
#stpCheckoutModal .stp-delivery-map-saved-use:after{display:none!important}
#stpCheckoutModal .stp-delivery-map-saved-use strong{color:#171719!important;font-size:14px!important;font-weight:560!important;line-height:1.25!important}
#stpCheckoutModal .stp-delivery-map-saved-use span{color:#747479!important;font-size:11.5px!important;line-height:1.25!important}
#stpCheckoutModal .stp-delivery-map-saved-row .stp-delivery-map-saved-use strong:before{content:''!important;position:absolute!important;left:18px!important;top:50%!important;width:4px!important;height:5px!important;border:0!important;border-left:1.6px solid #66666b!important;border-bottom:1.6px solid #66666b!important;border-radius:0!important;transform:translateY(-64%)!important}
#stpCheckoutModal .stp-delivery-map-saved-forget{display:none!important}

/* Manual queda como salida secundaria y muy discreta. */
#stpCheckoutModal .stp-delivery-map-address-alternative{margin:0 0 8px!important;border:0!important;border-radius:12px!important;background:#fafafa!important;box-shadow:none!important}
#stpCheckoutModal .stp-delivery-map-address-toggle{min-height:42px!important;padding:9px 32px 9px 34px!important;color:#55555a!important;font-size:11.8px!important;font-weight:560!important}
#stpCheckoutModal .stp-delivery-map-address-toggle:before{left:11px!important;font-size:15px!important;color:#55555a!important}
#stpCheckoutModal .stp-delivery-map-address-toggle:after{right:11px!important;font-size:15px!important;color:#7d7d82!important}

/* El total vive dentro del CTA principal; se retiran las líneas separadas redundantes. */
#stpCheckoutModal .stp-map-cod-total,#stpCheckoutModal .stp-map-delivery-total{display:none!important}
#stpCheckoutModal .stp-delivery-map-footer{padding:7px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))!important;border-top:1px solid #f0f0f1!important;box-shadow:0 -6px 18px rgba(0,0,0,.045)!important}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:66px!important;padding:12px 18px!important;border-radius:18px!important;font-size:17px!important;font-weight:760!important;box-shadow:0 9px 24px color-mix(in srgb,var(--stp-ui-map-continue-bg,var(--stp-primary,#111)) 22%,transparent)!important;text-align:left!important}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue:after{display:none!important}
#stpCheckoutModal .stp-delivery-map-continue-text{min-width:0;line-height:1.2;font-size:16px;font-weight:760}
#stpCheckoutModal .stp-delivery-map-continue-amount{flex:0 0 auto;white-space:nowrap;font-size:19px;font-weight:820;letter-spacing:-.01em}
#stpCheckoutModal .stp-map-terms-label{margin:0 0 6px!important;font-size:11.5px!important;line-height:1.3!important;color:#55555a!important}

/* Evitar que atribución, instrucción y CTA se pisen dentro del mapa. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:118px!important}

#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{max-height:49%!important}
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-edge-hint{bottom:70px;font-size:13px!important;padding:5px 8px!important}
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-controls{bottom:8px!important}
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-locate{height:50px!important;min-height:50px!important}
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:108px!important}

@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet{max-height:46%!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{padding-left:12px!important;padding-right:12px!important}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{min-height:64px!important;padding-left:16px!important;padding-right:16px!important}
  #stpCheckoutModal .stp-delivery-map-continue-text{font-size:15.5px}
  #stpCheckoutModal .stp-delivery-map-continue-amount{font-size:18px}
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address[hidden]{display:none!important}

/* v0.23.10 — selector de ubicación más directo y compacto. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading{
  max-width:calc(100% - 58px)!important;
  min-height:58px!important;
  padding:10px 12px 10px 45px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-title{
  -webkit-line-clamp:1!important;
  font-size:14px!important;
  line-height:1.25!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{
  display:grid!important;
  grid-template-columns:14px auto minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:6px!important;
  row-gap:1px!important;
  width:100%!important;
  max-width:100%!important;
  margin:4px 0 0!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  color:#626266!important;
  font-size:11.5px!important;
  line-height:1.25!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta-label{
  white-space:nowrap!important;
  font-weight:540!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta strong{
  min-width:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  color:#171719!important;
  font-size:11.5px!important;
  font-weight:690!important;
  line-height:1.25!important;
}
#stpCheckoutModal .stp-delivery-map-close{
  font-size:25px!important;
  font-weight:760!important;
}

/* Acciones dentro del mapa: dirección manual a la izquierda y GPS a la derecha. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls{
  left:12px!important;
  right:12px!important;
  bottom:10px!important;
  height:52px!important;
  display:grid!important;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  gap:8px!important;
  pointer-events:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 12px!important;
  border-radius:15px!important;
  pointer-events:auto!important;
  font-size:13px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{
  border:1px solid rgba(22,22,24,.09)!important;
  background:rgba(255,255,255,.96)!important;
  color:#232326!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  font-weight:620!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual:before{
  content:'✎';
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  flex:0 0 20px;
  font-size:18px;
  font-weight:500;
  line-height:1;
  color:#39393d;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual[aria-expanded="true"]{
  background:#f2f2f4!important;
  box-shadow:0 5px 16px rgba(0,0,0,.08)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{
  border:0!important;
  background:#1769e0!important;
  color:#fff!important;
  box-shadow:0 9px 24px rgba(23,105,224,.28)!important;
  font-weight:720!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate:before{
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  color:#fff!important;
  border-color:#fff!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  clip:auto!important;
  white-space:nowrap!important;
  border:0!important;
  color:inherit!important;
  font-size:13px!important;
  font-weight:inherit!important;
  line-height:1.15!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint{
  left:50%!important;
  right:auto!important;
  bottom:69px!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  transform:translateX(-50%)!important;
  padding:5px 9px!important;
  border:0!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.90)!important;
  color:#323236!important;
  box-shadow:0 4px 12px rgba(0,0,0,.05)!important;
  font-size:14.5px!important;
  line-height:1.2!important;
  font-weight:420!important;
  white-space:nowrap!important;
}
#stpCheckoutModal .stp-delivery-map.is-manual-open .stp-delivery-map-edge-hint{display:none!important}

/* El formulario manual vive sobre el mapa y no ensucia la parte inferior. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{
  position:absolute!important;
  z-index:730!important;
  left:12px!important;
  right:12px!important;
  bottom:70px!important;
  display:none!important;
  max-height:min(270px,46%)!important;
  margin:0!important;
  padding:0!important;
  overflow:auto!important;
  border:1px solid rgba(0,0,0,.08)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.16)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative[open]{display:block!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-toggle{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-fields{
  display:grid!important;
  gap:9px!important;
  padding:12px!important;
  border:0!important;
  background:transparent!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-help{
  margin:0 1px 2px!important;
  color:#6f6f74!important;
  font-size:11px!important;
  line-height:1.35!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field>span{
  margin-bottom:4px!important;
  color:#252529!important;
  font-size:11px!important;
  font-weight:650!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field input{
  min-height:45px!important;
  padding:10px 12px!important;
  border:1px solid #dedee2!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#161618!important;
  font-size:14px!important;
}

/* Resumen de destino destacado. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet{
  max-height:40%!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{
  padding:14px 13px 2px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address{
  display:grid!important;
  gap:2px!important;
  min-height:78px!important;
  margin:0 0 5px!important;
  padding:11px 10px 11px 46px!important;
  border:1px solid #ececef!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 4px 15px rgba(0,0,0,.035)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:before{
  left:11px!important;
  top:14px!important;
  width:26px!important;
  height:26px!important;
  background:#f1f1f3!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:after{
  left:19px!important;
  top:22px!important;
}
#stpCheckoutModal .stp-delivery-map-current-label{
  color:#6f6f74!important;
  font-size:10.5px!important;
  font-weight:590!important;
}
#stpCheckoutModal .stp-delivery-map-current-value{
  color:#141416!important;
  font-size:16px!important;
  font-weight:690!important;
  line-height:1.28!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
#stpCheckoutModal .stp-delivery-map-current-detail{
  color:#6f6f74!important;
  font-size:12px!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
#stpCheckoutModal .stp-delivery-map-address-attribution{
  margin-top:2px!important;
  color:#99999e!important;
  font-size:8.8px!important;
}

/* Historial mínimo, como lista de direcciones recientes. */
#stpCheckoutModal .stp-delivery-map-saved{margin:0 0 2px!important}
#stpCheckoutModal .stp-delivery-map-saved-list{gap:0!important}
#stpCheckoutModal .stp-delivery-map-saved-row{min-height:48px!important;border-radius:0!important}
#stpCheckoutModal .stp-delivery-map-saved-row:first-child{border-radius:11px 11px 0 0!important}
#stpCheckoutModal .stp-delivery-map-saved-row:last-child{border-radius:0 0 11px 11px!important}
#stpCheckoutModal .stp-delivery-map-saved-row:only-child{border-radius:11px!important}
#stpCheckoutModal .stp-delivery-map-saved-use{min-height:48px!important;padding:6px 7px 6px 39px!important}
#stpCheckoutModal .stp-delivery-map-saved-use strong{font-size:13.5px!important;font-weight:570!important}
#stpCheckoutModal .stp-delivery-map-saved-use span{font-size:11px!important}

/* CTA final: protagonista y fácil de tocar. */
#stpCheckoutModal .stp-delivery-map-footer{
  padding:7px max(13px,env(safe-area-inset-right,0px)) calc(9px + env(safe-area-inset-bottom,0px)) max(13px,env(safe-area-inset-left,0px))!important;
}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{
  min-height:70px!important;
  padding:13px 18px!important;
  border-radius:18px!important;
}
#stpCheckoutModal .stp-delivery-map-continue-text{font-size:16.5px!important;font-weight:780!important}
#stpCheckoutModal .stp-delivery-map-continue-amount{font-size:20px!important;font-weight:840!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:108px!important}

@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading{padding-right:10px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{grid-template-columns:14px auto minmax(0,1fr)!important;font-size:11px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta strong{font-size:11px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls{left:9px!important;right:9px!important;gap:7px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual,
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{padding:0 9px!important;font-size:12.3px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{font-size:12.3px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint{font-size:13.5px!important;max-width:calc(100% - 18px)!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{left:9px!important;right:9px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet{max-height:42%!important}
  #stpCheckoutModal .stp-delivery-map-current-value{font-size:15px!important}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{min-height:68px!important}
  #stpCheckoutModal .stp-delivery-map-continue-text{font-size:15.5px!important}
  #stpCheckoutModal .stp-delivery-map-continue-amount{font-size:19px!important}
}

/* v0.23.10b — ETA siempre legible y parte inferior aún más limpia. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{
  grid-template-columns:14px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:7px!important;
  row-gap:0!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-clock{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta-label{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  white-space:normal!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta strong{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-district{
  margin-top:4px!important;
}
/* El botón manual del mapa ya sirve para editar; evitamos repetir acciones/texto abajo. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-edit,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-pin-status{
  display:none!important;
}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{
    grid-template-columns:13px minmax(0,1fr)!important;
  }
}

/* v0.23.11 — Google Maps opcional por tienda + layout estable estilo app. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup){
  --stp-map-blue:#1769e0;
  background:#fff!important;
}

/* El mapa conserva exactamente la misma altura antes y después de elegir ubicación. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-body{
  flex:0 0 56%!important;
  height:56%!important;
  min-height:0!important;
  max-height:56%!important;
  overflow:hidden!important;
  background:#eef1f4!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas-wrap{
  flex:1 1 100%!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  background:#eef1f4!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{
  flex:1 1 44%!important;
  height:44%!important;
  min-height:0!important;
  max-height:none!important;
  border-radius:24px 24px 0 0!important;
  background:#fff!important;
  box-shadow:0 -12px 34px rgba(0,0,0,.08)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  padding:18px 14px 3px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll::-webkit-scrollbar{display:none!important}

/* Cabecera flotante: flecha grande y ETA azul, completa en móvil. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-head{
  top:13px!important;
  left:13px!important;
  right:13px!important;
  gap:10px!important;
  align-items:stretch!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-close{
  flex:0 0 58px!important;
  width:58px!important;
  min-width:58px!important;
  height:58px!important;
  min-height:58px!important;
  border:1px solid rgba(0,0,0,.055)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.975)!important;
  color:#111216!important;
  font-size:34px!important;
  font-weight:820!important;
  line-height:1!important;
  box-shadow:0 8px 24px rgba(0,0,0,.14)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading{
  flex:1 1 auto!important;
  max-width:calc(100% - 68px)!important;
  min-height:58px!important;
  padding:9px 13px 9px 45px!important;
  border:1px solid rgba(0,0,0,.05)!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.975)!important;
  box-shadow:0 8px 26px rgba(0,0,0,.12)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading:before{border-color:var(--stp-map-blue)!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-title{
  color:#151518!important;
  font-size:14px!important;
  font-weight:710!important;
  line-height:1.22!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{
  display:grid!important;
  grid-template-columns:15px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:7px!important;
  row-gap:0!important;
  width:100%!important;
  max-width:100%!important;
  margin:4px 0 0!important;
  color:var(--stp-map-blue)!important;
  overflow:visible!important;
  white-space:normal!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-clock{
  grid-column:1!important;
  grid-row:1 / span 2!important;
  align-self:center!important;
  width:15px!important;
  height:15px!important;
  border-color:var(--stp-map-blue)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-clock:before,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-clock:after{background:var(--stp-map-blue)!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta-label{
  grid-column:2!important;
  grid-row:1!important;
  color:#4b7fc9!important;
  font-size:11.5px!important;
  font-weight:570!important;
  line-height:1.2!important;
  white-space:normal!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta strong{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  color:var(--stp-map-blue)!important;
  font-size:12px!important;
  font-weight:720!important;
  line-height:1.24!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
  text-overflow:clip!important;
}

/* Mapa limpio, sin controles de zoom que compitan con las acciones propias. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-control-zoom{display:none!important}
#stpCheckoutModal .stp-delivery-map-canvas .gm-style img{max-width:none!important}
#stpCheckoutModal .stp-delivery-map-canvas-wrap.is-loading-google:after{
  content:'Cargando mapa…';position:absolute;z-index:50;left:50%;top:50%;transform:translate(-50%,-50%);
  padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.94);color:#55565b;font-size:12px;font-weight:620;box-shadow:0 5px 18px rgba(0,0,0,.10);pointer-events:none
}

/* Acciones del mapa siempre del mismo tamaño. Google deja su atribución visible debajo. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-controls{
  left:12px!important;
  right:12px!important;
  bottom:25px!important;
  height:52px!important;
  display:grid!important;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;
  gap:8px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-manual,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-locate{
  height:52px!important;
  min-height:52px!important;
  max-height:52px!important;
  padding:0 12px!important;
  border-radius:16px!important;
  transform:none!important;
  flex:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{
  background:rgba(255,255,255,.98)!important;
  color:#202126!important;
  border:1px solid rgba(0,0,0,.07)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{
  background:var(--stp-map-blue)!important;
  color:#fff!important;
  box-shadow:0 8px 22px rgba(23,105,224,.27)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-edge-hint{
  bottom:84px!important;
  max-width:calc(100% - 28px)!important;
  padding:4px 9px!important;
  border:0!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.91)!important;
  color:#292a2f!important;
  box-shadow:0 4px 12px rgba(0,0,0,.05)!important;
  font-size:14.5px!important;
  font-weight:420!important;
  line-height:1.22!important;
  white-space:normal!important;
}

/* Escribir dirección se abre como tarjeta flotante: no comprime ni cambia la altura del mapa. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{
  position:absolute!important;
  z-index:760!important;
  left:12px!important;
  right:12px!important;
  bottom:88px!important;
  display:none!important;
  width:auto!important;
  height:auto!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border:1px solid rgba(0,0,0,.07)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.17)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative[open]{display:block!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-toggle{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-fields{
  position:relative!important;
  display:grid!important;
  gap:9px!important;
  width:100%!important;
  padding:11px!important;
  overflow:visible!important;
  border:0!important;
  background:transparent!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-help{display:none!important}
#stpCheckoutModal .stp-delivery-map-address-field-wrap{position:relative;min-width:0}
#stpCheckoutModal .stp-delivery-map-address-field-wrap>.stp-delivery-map-field{width:100%}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field input{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  padding:11px 13px!important;
  border:1px solid #dfe1e5!important;
  border-radius:13px!important;
  background:#fff!important;
  color:#17181c!important;
  font-size:15px!important;
  box-shadow:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field input:focus{
  border-color:#90b8ee!important;
  box-shadow:0 0 0 3px rgba(23,105,224,.10)!important;
  outline:none!important;
}

/* Sugerencias de Places, sin scrollbar lateral ni saltos de tamaño. */
#stpCheckoutModal .stp-delivery-map-address-suggestions{
  position:absolute;
  z-index:30;
  left:0;
  right:0;
  top:calc(100% + 6px);
  overflow:hidden;
  padding:5px;
  border:1px solid #e4e6e9;
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
#stpCheckoutModal .stp-delivery-map-address-suggestion{
  position:relative;
  display:grid!important;
  grid-template-columns:25px minmax(0,1fr)!important;
  align-items:center!important;
  width:100%!important;
  min-height:42px!important;
  padding:6px 8px!important;
  border:0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#17181c!important;
  text-align:left!important;
}
#stpCheckoutModal .stp-delivery-map-address-suggestion:hover,
#stpCheckoutModal .stp-delivery-map-address-suggestion:focus-visible{background:#f4f7fb!important}
#stpCheckoutModal .stp-delivery-map-address-suggestion strong{min-width:0;font-size:12.5px;font-weight:590;line-height:1.3;white-space:normal}
#stpCheckoutModal .stp-delivery-map-address-suggestion-pin{position:relative;width:18px;height:18px}
#stpCheckoutModal .stp-delivery-map-address-suggestion-pin:before{content:'';position:absolute;left:4px;top:2px;width:8px;height:8px;border:2px solid #64707c;border-radius:50% 50% 50% 0;transform:rotate(-45deg)}
#stpCheckoutModal .stp-delivery-map-google-credit{display:block;padding:4px 8px 2px;text-align:right;color:#8a8d93;font-size:8.5px;font-weight:540}

/* Dirección reconocida: grande, legible y sin cortar el nombre de la calle. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address{
  gap:2px!important;
  min-height:72px!important;
  margin:0 0 4px!important;
  padding:10px 10px 10px 45px!important;
  border:1px solid #eceef1!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 3px 13px rgba(0,0,0,.035)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:before{left:10px!important;top:14px!important;width:26px!important;height:26px!important;background:#edf4ff!important;transform:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address:after{left:18px!important;top:22px!important;border-color:var(--stp-map-blue)!important;transform:rotate(-45deg)!important}
#stpCheckoutModal .stp-delivery-map-current-label{color:#6e7178!important;font-size:10.5px!important;font-weight:570!important}
#stpCheckoutModal .stp-delivery-map-current-value{
  color:#17181c!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.24!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
#stpCheckoutModal .stp-delivery-map-current-detail{color:#73767d!important;font-size:11.5px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}

/* CTA principal: estado de espera claro; al haber ubicación vuelve al color configurado por la tienda. */
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{
  min-height:72px!important;
  padding:13px 18px!important;
  border-radius:19px!important;
}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue-text{font-size:16.5px!important;font-weight:780!important;line-height:1.18!important}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue-amount{font-size:20px!important;font-weight:850!important}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue.is-waiting:disabled{
  opacity:1!important;
  border:1px solid #dce7f6!important;
  background:#edf4ff!important;
  color:#4f77aa!important;
  box-shadow:none!important;
}
#stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue.is-waiting .stp-delivery-map-continue-text{width:100%;text-align:center;font-weight:690!important}

/* Atribución: dejar libre el borde inferior del mapa para Google/OSM. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:84px!important}

@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-body{flex-basis:55%!important;height:55%!important;max-height:55%!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
  #stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{flex-basis:45%!important;height:45%!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-head{left:10px!important;right:10px!important;top:10px!important;gap:8px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-close{flex-basis:56px!important;width:56px!important;min-width:56px!important;height:56px!important;min-height:56px!important;font-size:32px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading{max-width:calc(100% - 64px)!important;padding-left:43px!important;padding-right:10px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta-label{font-size:11px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta strong{font-size:11.5px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls{left:9px!important;right:9px!important;gap:7px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual,
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{padding:0 9px!important;font-size:12px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{font-size:12px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint{font-size:13.5px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{left:9px!important;right:9px!important}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue{min-height:70px!important}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue-text{font-size:15.5px!important}
  #stpCheckoutModal .stp-delivery-map .stp-delivery-map-continue-amount{font-size:19px!important}
}

/* 0.24.5 · método elegido visible y mapa centrado en el distrito */
#stpCheckoutModal .stp-delivery-map-method-chip{
  display:flex;
  align-items:center;
  gap:9px;
  width:max-content;
  max-width:100%;
  margin:5px 0 3px;
  padding:6px 10px 6px 7px;
  border:1px solid #dbe7f8;
  border-radius:14px;
  background:rgba(244,249,255,.98);
  box-shadow:0 4px 12px rgba(23,105,224,.07);
}
#stpCheckoutModal .stp-delivery-map-method-chip.is-cod{
  border-color:#d8eedf;
  background:rgba(244,252,247,.98);
  box-shadow:0 4px 12px rgba(22,163,74,.07);
}
#stpCheckoutModal .stp-delivery-map-method-icon{
  flex:0 0 31px;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#e9f2ff;
  color:#0b57d0;
  overflow:hidden;
}
#stpCheckoutModal .stp-delivery-map-method-chip.is-cod .stp-delivery-map-method-icon{
  background:#eaf7ee;
  color:#138a4b;
}
#stpCheckoutModal .stp-delivery-map-method-icon img{max-width:27px;max-height:27px;object-fit:contain}
#stpCheckoutModal .stp-delivery-map-method-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#stpCheckoutModal .stp-delivery-map-method-copy{display:grid;gap:1px;min-width:0}
#stpCheckoutModal .stp-delivery-map-method-copy strong{font-size:11.5px;line-height:1.18;font-weight:800;color:#171a18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stpCheckoutModal .stp-delivery-map-method-copy small{font-size:9.5px;line-height:1.15;font-weight:760;color:#0b57d0}
#stpCheckoutModal .stp-delivery-map-method-chip.is-cod .stp-delivery-map-method-copy small{color:#138a4b}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint{
  max-width:calc(100% - 24px)!important;
  padding:7px 11px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.94)!important;
  color:#20242a!important;
  font-size:13.5px!important;
  font-weight:620!important;
  box-shadow:0 6px 16px rgba(0,0,0,.08)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map-method-chip{gap:7px;padding:5px 8px 5px 6px;border-radius:12px}
  #stpCheckoutModal .stp-delivery-map-method-icon{width:28px;height:28px;flex-basis:28px;border-radius:9px}
  #stpCheckoutModal .stp-delivery-map-method-copy strong{font-size:10.8px}
  #stpCheckoutModal .stp-delivery-map-method-copy small{font-size:9px}
}

/* 0.24.6 · método integrado en la cabecera del mapa (sin pastilla insertada) */
#stpCheckoutModal .stp-delivery-map-method-chip{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading.has-method{
  max-width:min(430px,calc(100% - 64px))!important;
  min-height:104px!important;
  padding:11px 13px 11px 13px!important;
  border-radius:21px!important;
  border:1px solid rgba(11,87,208,.12)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.985) 0%,rgba(245,249,255,.97) 100%)!important;
  box-shadow:0 12px 30px rgba(15,29,48,.13),0 1px 2px rgba(15,29,48,.04)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading.has-method.is-cod{
  border-color:rgba(22,163,74,.14)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.99) 0%,rgba(244,252,247,.97) 100%)!important;
  box-shadow:0 12px 30px rgba(19,92,51,.11),0 1px 2px rgba(19,92,51,.04)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading.has-method:before,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading.has-method:after{display:none!important}
#stpCheckoutModal .stp-delivery-map-method-hero{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}
#stpCheckoutModal .stp-delivery-map-method-icon{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#eaf3ff 0%,#dceaff 100%)!important;
  color:#0b57d0!important;
  box-shadow:inset 0 0 0 1px rgba(11,87,208,.07)!important;
  overflow:hidden!important;
}
#stpCheckoutModal .stp-delivery-map-heading.is-cod .stp-delivery-map-method-icon{
  background:linear-gradient(180deg,#eefaf2 0%,#def3e5 100%)!important;
  color:#138a4b!important;
  box-shadow:inset 0 0 0 1px rgba(19,138,75,.08)!important;
}
#stpCheckoutModal .stp-delivery-map-method-icon img{max-width:38px!important;max-height:38px!important;object-fit:contain!important}
#stpCheckoutModal .stp-delivery-map-method-icon svg{width:26px!important;height:26px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
#stpCheckoutModal .stp-delivery-map-method-copy{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
#stpCheckoutModal .stp-delivery-map-method-kicker{
  font-size:8.5px!important;
  line-height:1.1!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  color:#0b57d0!important;
}
#stpCheckoutModal .stp-delivery-map-heading.is-cod .stp-delivery-map-method-kicker{color:#138a4b!important}
#stpCheckoutModal .stp-delivery-map-method-copy>strong{
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:820!important;
  color:#151918!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#stpCheckoutModal .stp-delivery-map-method-facts{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
  margin-top:2px!important;
}
#stpCheckoutModal .stp-delivery-map-method-price{
  font-size:11px!important;
  line-height:1.15!important;
  font-weight:830!important;
  color:#0b57d0!important;
  white-space:nowrap!important;
}
#stpCheckoutModal .stp-delivery-map-heading.is-cod .stp-delivery-map-method-price{color:#138a4b!important}
#stpCheckoutModal .stp-delivery-map-method-eta{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  font-weight:720!important;
  color:#59635e!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#stpCheckoutModal .stp-delivery-map-method-eta[hidden]{display:none!important}
#stpCheckoutModal .stp-delivery-map-method-clock{
  position:relative!important;
  flex:0 0 13px!important;
  width:13px!important;
  height:13px!important;
  border:1.6px solid currentColor!important;
  border-radius:50%!important;
}
#stpCheckoutModal .stp-delivery-map-method-clock:before{
  content:''!important;
  position:absolute!important;
  left:5px!important;
  top:2px!important;
  width:1.4px!important;
  height:4px!important;
  border-radius:2px!important;
  background:currentColor!important;
}
#stpCheckoutModal .stp-delivery-map-method-clock:after{
  content:''!important;
  position:absolute!important;
  left:5px!important;
  top:5.5px!important;
  width:3.5px!important;
  height:1.4px!important;
  border-radius:2px!important;
  background:currentColor!important;
  transform:rotate(25deg)!important;
  transform-origin:left center!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-title{
  margin:8px 0 0!important;
  padding:8px 0 0!important;
  border-top:1px solid rgba(0,0,0,.065)!important;
  color:#343a37!important;
  font-size:11.5px!important;
  line-height:1.3!important;
  font-weight:660!important;
  -webkit-line-clamp:1!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-district{
  display:block!important;
  margin:3px 0 0!important;
  color:#747b77!important;
  font-size:10.5px!important;
  line-height:1.25!important;
  font-weight:560!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-header-eta{display:none!important}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-heading.has-method{
    max-width:calc(100% - 61px)!important;
    min-height:98px!important;
    padding:9px 10px!important;
    border-radius:18px!important;
  }
  #stpCheckoutModal .stp-delivery-map-method-hero{grid-template-columns:40px minmax(0,1fr)!important;gap:8px!important}
  #stpCheckoutModal .stp-delivery-map-method-icon{width:40px!important;height:40px!important;min-width:40px!important;border-radius:13px!important}
  #stpCheckoutModal .stp-delivery-map-method-icon img{max-width:33px!important;max-height:33px!important}
  #stpCheckoutModal .stp-delivery-map-method-icon svg{width:23px!important;height:23px!important}
  #stpCheckoutModal .stp-delivery-map-method-copy>strong{font-size:13.6px!important}
  #stpCheckoutModal .stp-delivery-map-method-price{font-size:10.4px!important}
  #stpCheckoutModal .stp-delivery-map-method-eta{font-size:9.8px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-title{font-size:10.8px!important;margin-top:7px!important;padding-top:7px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-district{font-size:10px!important}
}

/* 0.24.8 · mapa completo con una sola acción de ubicación y panel inferior mínimo */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup){
  background:#eef3f0!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-body{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  flex:none!important;
  overflow:hidden!important;
  background:#edf2ef!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas-wrap{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{
  position:absolute!important;
  z-index:880!important;
  left:12px!important;
  right:12px!important;
  bottom:12px!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:min(46%,360px)!important;
  flex:none!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  border:1px solid rgba(18,35,28,.07)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.965)!important;
  box-shadow:0 18px 44px rgba(12,26,21,.17),0 2px 7px rgba(12,26,21,.05)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet:before{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{
  flex:1 1 auto!important;
  overflow:auto!important;
  min-height:0!important;
  padding:12px 12px 4px!important;
  background:transparent!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-footer{
  flex:0 0 auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding:8px 12px 12px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
/* El mapa queda limpio: la instrucción y las entregas anteriores ya no flotan encima. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-edge-hint,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-saved,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-pin-status,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-current-address{
  display:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-controls{
  display:none!important;
}
/* Botón principal de ubicación: primero invita a usar GPS; luego muestra la dirección marcada. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:10px!important;
  width:100%!important;
  height:auto!important;
  min-height:62px!important;
  max-height:none!important;
  margin:0!important;
  padding:9px 13px!important;
  border:1px solid rgba(11,87,208,.12)!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#1769e0 0%,#0b57d0 62%,#1098f7 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(11,87,208,.23)!important;
  text-align:left!important;
  white-space:normal!important;
  pointer-events:auto!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate:before{
  content:''!important;
  display:block!important;
  justify-self:center!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  border:2px solid currentColor!important;
  border-radius:50%!important;
  background:radial-gradient(circle,#fff 0 3px,transparent 3.5px)!important;
  box-shadow:0 -9px 0 -7px #fff,0 9px 0 -7px #fff,-9px 0 0 -7px #fff,9px 0 0 -7px #fff!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate[aria-busy="true"]:before{
  border-top-color:transparent!important;
  background:none!important;
  box-shadow:none!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate.has-location{
  border-color:#d9e5f8!important;
  background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%)!important;
  color:#17202b!important;
  box-shadow:0 8px 22px rgba(16,34,58,.10)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate.has-location:before{
  width:24px!important;
  height:24px!important;
  border:0!important;
  border-radius:50% 50% 50% 0!important;
  background:radial-gradient(circle,#fff 0 4px,transparent 4.5px),#1769e0!important;
  box-shadow:0 0 0 6px rgba(23,105,224,.10)!important;
  transform:rotate(-45deg)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{
  position:static!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  clip:auto!important;
  white-space:normal!important;
  border:0!important;
  color:inherit!important;
  font-size:13.2px!important;
  line-height:1.28!important;
  font-weight:780!important;
  text-overflow:ellipsis!important;
}
/* Datos esenciales del método, sin repetir toda la cabecera. */
#stpCheckoutModal .stp-delivery-map-bottom-facts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:9px 0 0!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
  padding:8px 9px!important;
  border:1px solid #e8edf0!important;
  border-radius:13px!important;
  background:#f8fafb!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact small{
  font-size:8.8px!important;
  line-height:1.1!important;
  color:#79817d!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.035em!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact strong{
  min-width:0!important;
  font-size:11px!important;
  line-height:1.22!important;
  color:#1a1d1b!important;
  font-weight:790!important;
  overflow-wrap:anywhere!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact.is-cod{
  border-color:#dcefe3!important;
  background:#f4fbf6!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact.is-cod strong{color:#137a42!important}
#stpCheckoutModal .stp-delivery-map-bottom-fact.is-price{
  border-color:#dce8f8!important;
  background:#f5f9ff!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-fact.is-price strong{color:#0b57d0!important}
#stpCheckoutModal .stp-delivery-map-free-hint{
  grid-column:1/-1!important;
  margin:0!important;
  padding:8px 10px!important;
  border-radius:12px!important;
  background:#fff7e7!important;
  color:#8a6114!important;
  font-size:10.5px!important;
  line-height:1.3!important;
  font-weight:720!important;
}
#stpCheckoutModal .stp-delivery-map-free-hint.is-reached{
  background:#eef9f1!important;
  color:#147a43!important;
}
/* Dirección manual queda como alternativa secundaria debajo de la ubicación. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  width:100%!important;
  height:auto!important;
  min-height:40px!important;
  max-height:none!important;
  margin:7px 0 0!important;
  padding:6px 10px!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#555f5a!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:680!important;
  pointer-events:auto!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual:before{
  content:'✎'!important;
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  font-size:15px!important;
  color:#68736d!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-height:none!important;
  margin:7px 0 0!important;
  padding:0!important;
  border:1px solid #e5e9e7!important;
  border-radius:15px!important;
  background:#fafbfa!important;
  box-shadow:none!important;
  overflow:visible!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-toggle{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-fields{
  padding:10px!important;
  border:0!important;
  gap:9px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-help{display:none!important}
/* CTA final siempre abajo, grande y sin otros elementos que compitan. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map .stp-delivery-map-continue,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue{
  min-height:58px!important;
  padding:12px 16px!important;
  border-radius:17px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-text{
  font-size:14.5px!important;
  font-weight:800!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-amount{
  font-size:17px!important;
  font-weight:850!important;
}
/* Libera el borde del mapa; la atribución queda encima del panel inferior. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:210px!important}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
  #stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{
    left:9px!important;
    right:9px!important;
    bottom:9px!important;
    max-height:min(48%,340px)!important;
    border-radius:21px!important;
  }
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{padding:10px 10px 3px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-footer{padding:7px 10px 10px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{min-height:58px!important;grid-template-columns:38px minmax(0,1fr)!important;padding:8px 11px!important;border-radius:16px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-control-label{font-size:12.4px!important}
  #stpCheckoutModal .stp-delivery-map-bottom-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-top:7px!important}
  #stpCheckoutModal .stp-delivery-map-bottom-fact{padding:7px 8px!important;border-radius:12px!important}
  #stpCheckoutModal .stp-delivery-map-bottom-fact small{font-size:8.3px!important}
  #stpCheckoutModal .stp-delivery-map-bottom-fact strong{font-size:10.5px!important}
  #stpCheckoutModal .stp-delivery-map-free-hint{font-size:10px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{min-height:36px!important;margin-top:5px!important;font-size:10.5px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue{min-height:56px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-text{font-size:14px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-amount{font-size:16px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:198px!important}
}

/* 0.24.9 · pin fijo al centro, mapa protagonista y panel inferior mínimo */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-reticle{
  display:block!important;
  position:absolute!important;
  z-index:720!important;
  top:50%!important;
  left:50%!important;
  width:44px!important;
  height:54px!important;
  transform:translate(-50%,-50%)!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 8px 10px rgba(20,65,135,.28));
  pointer-events:none!important;
  transition:transform .16s ease,filter .16s ease,opacity .16s ease;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-reticle:before{
  content:'';
  position:absolute;
  left:6px;
  top:1px;
  width:32px;
  height:32px;
  border:3px solid #fff;
  border-radius:50% 50% 50% 0;
  background:linear-gradient(135deg,#1a73e8 0%,#0b57d0 100%);
  transform:rotate(-45deg);
  box-shadow:0 0 0 7px rgba(23,105,224,.10),0 2px 5px rgba(0,0,0,.10);
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-reticle:after{
  content:'';
  position:absolute;
  left:17px;
  top:12px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 3px rgba(11,87,208,.18);
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas-wrap.is-moving .stp-delivery-map-reticle{
  transform:translate(-50%,calc(-50% - 7px))!important;
  filter:drop-shadow(0 12px 14px rgba(20,65,135,.34));
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup).is-manual .stp-delivery-map-reticle{opacity:.18!important}
/* El pin real del mapa se reemplaza por el indicador fijo del centro. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-marker{display:none!important}

/* Panel inferior: ubicación/dirección, horario y CTA. Nada de tarjetas cuadradas. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{
  left:12px!important;
  right:12px!important;
  bottom:12px!important;
  max-height:min(34%,270px)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.975)!important;
  box-shadow:0 18px 44px rgba(11,28,22,.16),0 2px 7px rgba(11,28,22,.05)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup).is-manual-open .stp-delivery-map-sheet{
  max-height:min(56%,460px)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{
  padding:11px 12px 3px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-footer{
  padding:7px 12px 12px!important;
}
#stpCheckoutModal .stp-delivery-map-bottom-facts{display:none!important}

/* Botón ubicación/dirección principal. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{
  min-height:64px!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  padding:9px 13px!important;
  border-radius:19px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate.is-adjusting{
  background:linear-gradient(135deg,#eef5ff 0%,#e3efff 100%)!important;
  color:#0b57d0!important;
  border-color:#c9dcfa!important;
  box-shadow:0 8px 22px rgba(11,87,208,.11)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate.is-adjusting:before{
  border-color:#0b57d0!important;
  background:radial-gradient(circle,#0b57d0 0 3px,transparent 3.5px)!important;
  box-shadow:0 -9px 0 -7px #0b57d0,0 9px 0 -7px #0b57d0,-9px 0 0 -7px #0b57d0,9px 0 0 -7px #0b57d0!important;
}

/* Única información adicional: horario de entrega con reloj. */
#stpCheckoutModal .stp-delivery-map-schedule{
  display:grid;
  grid-template-columns:36px minmax(0,1fr);
  align-items:center;
  gap:10px;
  margin:8px 2px 0;
  padding:8px 10px;
  border-radius:14px;
  background:linear-gradient(180deg,#f7faf8 0%,#f3f8f5 100%);
  border:1px solid #e4ece7;
}
#stpCheckoutModal .stp-delivery-map-schedule[hidden]{display:none!important}
#stpCheckoutModal .stp-delivery-map-schedule-clock{
  position:relative;
  width:30px;
  height:30px;
  border:2px solid #14824a;
  border-radius:50%;
  background:#eef9f2;
}
#stpCheckoutModal .stp-delivery-map-schedule-clock:before,
#stpCheckoutModal .stp-delivery-map-schedule-clock:after{
  content:'';
  position:absolute;
  left:50%;
  top:50%;
  width:2px;
  border-radius:999px;
  background:#14824a;
  transform-origin:50% 100%;
}
#stpCheckoutModal .stp-delivery-map-schedule-clock:before{height:8px;transform:translate(-50%,-100%) rotate(0deg)}
#stpCheckoutModal .stp-delivery-map-schedule-clock:after{height:6px;transform:translate(-50%,-100%) rotate(125deg)}
#stpCheckoutModal .stp-delivery-map-schedule-copy{display:grid;gap:1px;min-width:0}
#stpCheckoutModal .stp-delivery-map-schedule-copy small{
  font-size:9px;
  line-height:1.15;
  color:#758079;
  font-weight:720;
  text-transform:uppercase;
  letter-spacing:.035em;
}
#stpCheckoutModal .stp-delivery-map-schedule-copy strong{
  font-size:12px;
  line-height:1.28;
  color:#1b211e;
  font-weight:790;
  white-space:normal;
}

/* Dirección manual: opcional y sin búsqueda/autocompletado en el mapa. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{
  min-height:38px!important;
  margin-top:6px!important;
  color:#5b655f!important;
  font-size:10.8px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-suggestions{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-address-alternative{
  margin-top:6px!important;
  border-radius:16px!important;
  background:#fafcfb!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-fields{padding:11px!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field>span{
  font-size:10.5px!important;
  font-weight:760!important;
  color:#3f4844!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-field input{
  min-height:45px!important;
  border-radius:13px!important;
  background:#fff!important;
}

/* El CTA sigue al final y es el único botón de avance. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue{
  min-height:58px!important;
  border-radius:18px!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:178px!important}

@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
  #stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet{
    left:9px!important;
    right:9px!important;
    bottom:9px!important;
    max-height:min(35%,250px)!important;
    border-radius:21px!important;
  }
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup).is-manual-open .stp-delivery-map-sheet{max-height:min(60%,430px)!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{padding:9px 10px 3px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-footer{padding:6px 10px 10px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-locate{min-height:60px!important;grid-template-columns:38px minmax(0,1fr)!important;padding:8px 11px!important;border-radius:16px!important}
  #stpCheckoutModal .stp-delivery-map-schedule{grid-template-columns:32px minmax(0,1fr);gap:8px;margin-top:7px;padding:7px 9px;border-radius:13px}
  #stpCheckoutModal .stp-delivery-map-schedule-clock{width:27px;height:27px}
  #stpCheckoutModal .stp-delivery-map-schedule-copy small{font-size:8.5px}
  #stpCheckoutModal .stp-delivery-map-schedule-copy strong{font-size:11.3px}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-manual{min-height:34px!important;margin-top:4px!important;font-size:10.3px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:162px!important}
}

/* 0.24.10 · CTA principal más visible y sin decisiones duplicadas debajo del checkout */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue{
  min-height:76px!important;
  padding:14px 18px!important;
  border-radius:20px!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--stp-ui-map-continue-bg,var(--stp-primary,#111)) 24%,transparent)!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-text{
  font-size:18px!important;
  line-height:1.16!important;
  font-weight:840!important;
  letter-spacing:-.01em!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-amount{
  font-size:22px!important;
  line-height:1!important;
  font-weight:880!important;
  letter-spacing:-.015em!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue.is-waiting .stp-delivery-map-continue-text{
  font-size:17px!important;
  font-weight:760!important;
}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue{
    min-height:72px!important;
    padding:13px 16px!important;
    border-radius:19px!important;
  }
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-text{font-size:17px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue-amount{font-size:21px!important}
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-continue.is-waiting .stp-delivery-map-continue-text{font-size:16.5px!important}
}

/* 0.24.11 · entrega hoy/mañana destacada */
#stpCheckoutModal .stp-delivery-map-schedule{
  grid-template-columns:40px minmax(0,1fr)!important;
  gap:11px!important;
  margin-top:9px!important;
  padding:10px 12px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#f7fbff 0%,#f3f9ff 100%)!important;
  border:1px solid #dce8f8!important;
  box-shadow:0 7px 18px rgba(11,87,208,.06)!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-today{
  background:linear-gradient(135deg,#effcf5 0%,#f7fff9 100%)!important;
  border-color:#cfeeda!important;
  box-shadow:0 8px 20px rgba(22,163,74,.09)!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-tomorrow{
  background:linear-gradient(135deg,#fff9eb 0%,#fffdf6 100%)!important;
  border-color:#f1dfae!important;
  box-shadow:0 8px 20px rgba(196,137,19,.08)!important;
}
#stpCheckoutModal .stp-delivery-map-schedule-clock{
  width:34px!important;
  height:34px!important;
  border-color:#1769e0!important;
  background:#edf4ff!important;
}
#stpCheckoutModal .stp-delivery-map-schedule-clock:before,
#stpCheckoutModal .stp-delivery-map-schedule-clock:after{background:#1769e0!important}
#stpCheckoutModal .stp-delivery-map-schedule.is-today .stp-delivery-map-schedule-clock{
  border-color:#169653!important;
  background:#eaf8ef!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-today .stp-delivery-map-schedule-clock:before,
#stpCheckoutModal .stp-delivery-map-schedule.is-today .stp-delivery-map-schedule-clock:after{background:#169653!important}
#stpCheckoutModal .stp-delivery-map-schedule.is-tomorrow .stp-delivery-map-schedule-clock{
  border-color:#b77a00!important;
  background:#fff3d8!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-tomorrow .stp-delivery-map-schedule-clock:before,
#stpCheckoutModal .stp-delivery-map-schedule.is-tomorrow .stp-delivery-map-schedule-clock:after{background:#b77a00!important}
#stpCheckoutModal .stp-delivery-map-schedule-copy{gap:3px!important}
#stpCheckoutModal .stp-delivery-map-schedule-badge{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:23px!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#eaf2ff!important;
  color:#0b57d0!important;
  font-size:9.5px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-today .stp-delivery-map-schedule-badge{
  background:#daf4e4!important;
  color:#10753f!important;
}
#stpCheckoutModal .stp-delivery-map-schedule.is-tomorrow .stp-delivery-map-schedule-badge{
  background:#ffebbd!important;
  color:#8d6200!important;
}
#stpCheckoutModal .stp-delivery-map-schedule-copy strong{
  font-size:13.2px!important;
  line-height:1.3!important;
  font-weight:820!important;
  color:#171b19!important;
}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map-schedule{grid-template-columns:36px minmax(0,1fr)!important;padding:9px 10px!important;gap:9px!important}
  #stpCheckoutModal .stp-delivery-map-schedule-clock{width:31px!important;height:31px!important}
  #stpCheckoutModal .stp-delivery-map-schedule-badge{font-size:8.8px!important;min-height:21px!important;padding:0 8px!important}
  #stpCheckoutModal .stp-delivery-map-schedule-copy strong{font-size:12.2px!important}
}

/* 0.24.12 · panel inferior sin scroll interno ni contenido escondido */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
#stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet,
#stpCheckoutModal .stp-delivery-map:not(.is-pickup).is-manual-open .stp-delivery-map-sheet{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet-scroll{
  flex:0 0 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-footer{
  flex:0 0 auto!important;
}
/* Si el contenido inferior crece, ocupa parte del mapa, pero nunca se recorta dentro de una caja desplazable. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup){
  overflow:hidden!important;
}
@media(max-width:420px){
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-sheet,
  #stpCheckoutModal .stp-delivery-map.is-compact:not(.is-pickup) .stp-delivery-map-sheet,
  #stpCheckoutModal .stp-delivery-map:not(.is-pickup).is-manual-open .stp-delivery-map-sheet{
    max-height:none!important;
  }
}

/* 0.24.25: one always-visible instruction box, only inside delivery maps. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-map-instructions{display:block!important;margin:10px 0 0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#stpCheckoutModal .stp-map-instructions .stp-delivery-map-address-field-wrap{display:none!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-map-instructions .stp-delivery-map-fields{display:block!important;padding:0!important;border:0!important;background:transparent!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-map-instructions .stp-delivery-map-field>span{display:block;margin:0 2px 7px;font-size:13px!important;font-weight:600!important;color:var(--stp-ui-map-text,#26362e)!important}
#stpCheckoutModal .stp-map-instructions textarea.stp-delivery-map-reference{display:block;box-sizing:border-box;width:100%;height:78px;min-height:78px;max-height:120px;margin:0;padding:12px 14px;border:1px solid var(--stp-ui-map-address-border,#dce3df);border-radius:14px;background:var(--stp-ui-map-address-bg,#fff);color:var(--stp-ui-map-text,#26362e);font-weight:400;font-family:inherit;font-size:16px;line-height:1.5;resize:none;box-shadow:0 2px 8px #173d2f08;scroll-margin:12px;}
#stpCheckoutModal .stp-map-instructions textarea.stp-delivery-map-reference::placeholder{color:var(--stp-ui-map-muted,#748079);opacity:1;font-size:14px}
#stpCheckoutModal .stp-map-instructions textarea.stp-delivery-map-reference:focus{outline:2px solid var(--stp-ui-map-pin,#1769e0);outline-offset:2px;box-shadow:0 0 0 4px #1769e010}
#stpCheckoutModal .stp-delivery-map.is-editing-instructions:not(.is-pickup) .stp-delivery-map-sheet{max-height:calc(100% - 70px)!important;overflow:hidden!important}
#stpCheckoutModal .stp-delivery-map.is-editing-instructions:not(.is-pickup) .stp-delivery-map-sheet-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain!important}
#stpCheckoutModal .stp-delivery-map.is-editing-instructions:not(.is-pickup) .stp-delivery-map-heading{display:none!important}
#stpCheckoutModal .stp-delivery-map.is-editing-instructions:not(.is-pickup) .stp-delivery-map-footer{flex:0 0 auto!important;max-height:40%!important}

/* 0.24.26: the geographical center and its pin share the visible map surface. */
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas{bottom:auto;height:var(--stp-map-visible-height,100%)}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-reticle{top:var(--stp-map-center-y,50%)!important}
#stpCheckoutModal .stp-delivery-map:not(.is-pickup) .stp-delivery-map-canvas .leaflet-bottom.leaflet-right{bottom:2px!important}
