.checkout-delivery-dialog { box-sizing:border-box; width:min(620px, calc(100% - 24px)); max-height:85vh; padding:0; border:1px solid #cbd5e1; border-radius:16px; background:var(--theme-shade-panel,#fff); color:#172536; box-shadow:0 20px 70px #0006; }
.checkout-delivery-dialog::backdrop { background:#02061799; backdrop-filter:blur(3px); }
.checkout-delivery-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 22px; border-bottom:1px solid #cbd5e1; }
.checkout-delivery-header h2 { font:inherit; font-size:20px; font-weight:700; margin:0; }
.checkout-delivery-close { border:0; border-radius:8px; background:transparent; color:inherit; font-size:28px; cursor:pointer; }
.checkout-delivery-body { padding:4px 22px 12px; }
.checkout-delivery-address { font-weight:600; overflow-wrap:anywhere; }
.checkout-delivery-message, .checkout-delivery-note { font-size:13px; line-height:1.45; }
.checkout-delivery-list { display:grid; gap:10px; }
.checkout-delivery-option { display:flex; align-items:center; gap:12px; padding:14px; border:1px solid #cbd5e1; border-radius:10px; cursor:pointer; }
.checkout-delivery-option:has(input:checked) { border-color:var(--focus-color,#1767a7); outline:1px solid var(--focus-color,#1767a7); background:color-mix(in srgb,var(--focus-color,#1767a7) 10%,transparent); }
.checkout-delivery-copy { display:grid; gap:5px; flex:1; min-width:0; overflow-wrap:anywhere; }
.checkout-delivery-badges { display:flex; flex-wrap:wrap; gap:5px; }
.checkout-delivery-badges span { font-size:11px; font-weight:600; padding:3px 7px; border-radius:12px; background:color-mix(in srgb,var(--focus-color,#1767a7) 15%,transparent); }
.checkout-delivery-eta { font-size:12px; }
.checkout-delivery-price { font-size:20px; white-space:nowrap; }
.checkout-delivery-footer { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; padding:14px 22px; border-top:1px solid #cbd5e1; }
.checkout-delivery-footer > :first-child { margin-right:auto; }
.checkout-delivery-button { font:inherit; font-size:14px; font-weight:600; padding:9px 13px; border:1px solid #cbd5e1; border-radius:8px; background:transparent; color:inherit; cursor:pointer; }
.checkout-delivery-button.is-primary { background:var(--focus-color,#1767a7); border-color:var(--focus-color,#1767a7); color:#fff; }
.checkout-delivery-button:disabled { opacity:.5; cursor:default; }
.checkout-delivery-tip { border:0; padding:0; margin:18px 0 0; min-width:0; }
.checkout-delivery-tip legend { font-size:15px; font-weight:700; margin-bottom:10px; }
.checkout-delivery-tip-choices { display:flex; flex-wrap:wrap; gap:8px; }
.checkout-delivery-tip-choice { display:inline-flex; align-items:center; gap:6px; padding:8px 11px; border:1px solid #cbd5e1; border-radius:8px; cursor:pointer; font-size:14px; }
.checkout-delivery-tip-choice:has(input:checked) { border-color:var(--focus-color,#1767a7); background:color-mix(in srgb,var(--focus-color,#1767a7) 15%,transparent); }
.checkout-delivery-tip-choice input { accent-color:var(--focus-color,#1767a7); margin:0; }
.checkout-delivery-tip-custom { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:12px; font-size:14px; }
.checkout-delivery-tip-custom input { width:120px; max-width:100%; box-sizing:border-box; font:inherit; color:inherit; background:transparent; border:1px solid #cbd5e1; border-radius:8px; padding:8px; }
.checkout-delivery-tip-error { color:#b91c1c; font-size:13px; }
.checkout-delivery-tip-error:empty { display:none; }
.checkout-delivery-total { font-size:14px; font-weight:700; }
.checkout-delivery-dialog [hidden] { display:none !important; }
body.theme-dark .checkout-delivery-dialog { background:var(--theme-shade-panel,#0f172a); color:#e5e7eb; border-color:#475569; }
body.theme-dark .checkout-delivery-header, body.theme-dark .checkout-delivery-footer, body.theme-dark .checkout-delivery-option, body.theme-dark .checkout-delivery-button { border-color:#475569; }
body.theme-dark .checkout-delivery-tip-choice, body.theme-dark .checkout-delivery-tip-custom input { border-color:#475569; }
body.theme-dark .checkout-delivery-tip-error { color:#fca5a5; }
