.delivery-location-field { padding: .85rem 1rem; border: 1px solid var(--line); border-radius: .9rem; background: var(--theme-raised); }
.delivery-location-field[hidden], .delivery-location-field [hidden] { display: none; }
.delivery-location-heading { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 1.5rem; margin-bottom: .6rem; }
.delivery-location-field h3 { margin: 0; font: 650 .95rem/1.5 "DM Sans", "Noto Sans Arabic", sans-serif; letter-spacing: 0; }
.location-current-action { display: flex; align-items: center; justify-content: center; gap: .55rem; width: 100%; min-height: 48px; padding: .65rem .8rem; border: 1px solid #1685b0; border-radius: .7rem; background: #0d719c; color: #fff; font: 700 .95rem/1.5 "DM Sans", "Noto Sans Arabic", sans-serif; cursor: pointer; transition: background .18s, border-color .18s; }
.location-current-action:hover:not(:disabled) { background: #095e86; }
.location-current-action svg { width: 21px; height: 21px; flex: 0 0 auto; }
.location-current-action:disabled { cursor: default; }
.location-current-action[aria-busy="true"] { cursor: progress; }
.location-current-action[aria-busy="true"] svg { animation: location-pulse 1.2s ease-in-out infinite; }
.location-current-action[data-state="success"] { background: #196f52; border-color: #288563; opacity: 1; }
.delivery-location-field p { margin: .4rem 0 0; color: var(--muted); font-size: .8rem; line-height: 1.5; }
.delivery-location-field .delivery-location-status[data-state="error"] { color: var(--theme-danger); }
.location-remove { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: -.3rem -.25rem -.3rem 0; padding: .5rem; border: 0; border-radius: 50%; background: transparent; color: var(--muted); cursor: pointer; }
.location-remove:hover { background: var(--theme-surface); color: var(--ink); }
.location-remove svg { width: 18px; height: 18px; }
.location-current-action:focus-visible, .location-remove:focus-visible { outline: 3px solid #168fb7; outline-offset: 3px; }
@keyframes location-pulse { 50% { opacity: .45; transform: scale(.9); } }
@media(prefers-reduced-motion:reduce) { .location-current-action { transition: none; } .location-current-action[aria-busy="true"] svg { animation: none; } }
