#delivery-view { display:flex;flex-direction:column;height:calc(100dvh - var(--topbar-height,64px));min-height:480px;padding:0;overflow:hidden;background:#fff; }
.delivery-search-wrap .search { width:100%; }
.delivery-results { position:absolute;left:0;right:0;top:calc(100% + 8px);max-height:min(420px,65dvh);min-height:0;overflow:auto;box-shadow:0 8px 30px #18281c20;border-radius:12px;background:#fff; }
.delivery-results .zone-item { width:100%;text-align:left; }
.delivery-results .zone-search-state { padding:16px; }
.delivery-canvas { position:relative;flex:1;min-height:0; }
#delivery-view .delivery-map { height:100%;width:100%;min-height:0; }
.delivery-map-note { position:absolute;bottom:30px;left:20px;z-index:450;max-width:min(530px,calc(100% - 40px));border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#fffffff5;box-shadow:0 2px 12px #18281c0a;pointer-events:none; }
.delivery-map-note p { margin:0;color:var(--ink-2);font-size:12px;line-height:18px; }
.delivery-map-note>span { display:block;font-size:11px;color:var(--muted);margin-top:3px; }
.delivery-address-card,.delivery-add-card { position:absolute;top:20px;left:20px;z-index:460;width:340px;max-width:calc(100% - 80px);max-height:calc(100% - 40px);overflow:auto;padding:20px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 24px #18281c20; }
.delivery-address-card>h2,.delivery-card-heading h2 { font-size:18px;line-height:26px;font-weight:500; }
.delivery-address-card>p { font-size:13px;line-height:20px;color:var(--muted);margin:8px 0 16px; }
.delivery-address-card>.icon-button { position:absolute;top:9px;right:9px; }
.delivery-address-card>.delivery-eyebrow { text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600;color:var(--brand-ink);padding-right:25px;margin-top:0; }
.delivery-address-card>.delivery-eyebrow.is-removed { color:var(--danger-ink); }
.delivery-address-card>.button { width:100%; }
.delivery-card-heading { display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px; }
.delivery-add-card label { display:block;margin-bottom:12px;font-size:12px;font-weight:500; }
.delivery-add-card input,.delivery-add-card select { display:block;width:100%;margin-top:6px;min-height:42px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-size:14px; }
.delivery-point-status { margin:8px 0 16px;padding:10px;border-radius:8px;background:var(--brand-50);color:var(--brand-ink);font-size:12px;line-height:18px; }
.delivery-add-card>.button { width:100%; }
#delivery-map.is-picking { cursor:crosshair; }
.delivery-address-card .error,.delivery-add-card .error { font-size:12px;margin:10px 0; }
@media(max-width:850px) {
 .delivery-address-card,.delivery-add-card { top:12px;left:12px;width:310px;padding:16px; }
 .delivery-map-note { left:12px;bottom:24px;padding:8px 10px; }
 #delivery-view:has(.delivery-add-card:not([hidden])) .delivery-map-note,#delivery-view:has(.delivery-address-card:not([hidden])) .delivery-map-note { display:none; }
}
.delivery-entry-modes { display:flex;padding:4px;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:9px;margin-bottom:18px; }
.delivery-entry-modes button { flex:1;border:0;padding:9px 6px;border-radius:6px;background:transparent;font-size:12px;color:var(--muted); }
.delivery-entry-modes button.selected { background:#fff;color:var(--brand-ink);box-shadow:0 1px 3px #15281b14;font-weight:500; }
.delivery-lookup-input { display:flex;border:1px solid var(--line);border-radius:8px;margin-top:6px;align-items:center;background:#fff; }
.delivery-lookup-input:focus-within { outline:2px solid var(--brand);outline-offset:2px; }
.delivery-add-card .delivery-lookup-input input { min-width:0;margin:0;border:0;background:transparent;outline:none;box-shadow:none; }
.delivery-lookup-input button { border:0;background:transparent;flex-shrink:0;width:38px;min-height:42px;padding:10px;color:var(--brand-ink); }
.delivery-lookup-input .icon { width:18px;height:18px; }
.delivery-lookup-results { max-height:230px;overflow:auto;margin:-4px 0 10px;border:1px solid var(--line);border-radius:8px; }
.delivery-lookup-results button { display:block;width:100%;padding:12px;text-align:left;background:#fff;border:0;border-bottom:1px solid var(--line);color:var(--ink); }
.delivery-lookup-results button:last-child { border-bottom:0; }
.delivery-lookup-results button:hover,.delivery-lookup-results button:focus-visible { background:var(--brand-50); }
.delivery-lookup-results strong { display:block;font-size:12px;line-height:18px;font-weight:500; }
.delivery-lookup-results small { display:block;font-size:11px;color:var(--muted);margin-top:3px; }
.delivery-lookup-status { font-size:12px;color:var(--muted);line-height:18px;margin:8px 0; }
.delivery-source { display:inline-block;font-size:10px;color:var(--muted);margin:0 0 16px;text-decoration:underline;text-underline-offset:3px; }
.delivery-add-card input[readonly] { background:#f6f8f5;color:var(--muted); }
.delivery-add-card.is-lookup #delivery-address-fields>label:not(:last-child) { display:none; }
.delivery-resolved-address { margin:0 0 14px;padding:12px;border-radius:8px;background:var(--bg);font-size:13px;line-height:20px;color:var(--ink);overflow-wrap:anywhere; }
.delivery-map-title { position:absolute;z-index:450;top:20px;left:20px;margin:0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fffffff2;box-shadow:0 2px 12px #18281c0a;font-size:19px;font-weight:500;line-height:26px;pointer-events:none; }
.delivery-address-card,.delivery-add-card { top:88px;max-height:calc(100% - 108px); }
@media(max-width:850px) { .delivery-map-title{top:12px;left:12px;padding:10px 14px;font-size:17px;line-height:24px}.delivery-address-card,.delivery-add-card{top:72px;max-height:calc(100% - 88px)} }
@media(max-width:500px) { .delivery-add-card { width:285px;max-width:calc(100% - 74px); } }
