.phone-order-fields { border: 0; margin: 0; padding: 0; min-width: 0; }
.phone-order-form label { min-width: 0; }
.phone-order-form [hidden] { display: none !important; }
.phone-order-form input, .phone-order-form select, .phone-order-form textarea { scroll-margin: 90px 0 110px; }
.phone-order-form [aria-invalid="true"] { border-color: #ac3434; box-shadow: 0 0 0 1px #ac3434; }
.phone-field-error { display: block; color: #ac3434; font-size: .85rem; line-height: 1.45; margin-top: 5px; }
.phone-order-error { scroll-margin: 90px 0 110px; }
.phone-order-error:empty { display: none; }
.phone-order-error:not(:empty) { padding: 12px; border: 1px solid currentColor; border-radius: 8px; }
.phone-order-line { grid-template-columns: minmax(180px, 2fr) 85px 140px 110px 72px; align-items: start; padding: 14px 0; border-bottom: 1px solid var(--line); }
.phone-product-picker { min-width: 0; }
.phone-product-status { font-size: .85rem; line-height: 1.5; margin: 6px 0; overflow-wrap: anywhere; }
.phone-product-status:empty { display: none; }
.phone-product-choices { display: grid; gap: 5px; max-height: 260px; overflow-y: auto; overscroll-behavior: contain; margin-top: 7px; }
.phone-order-form .phone-product-option { display: block; width: 100%; min-height: 48px; padding: 10px; background: var(--surface, white); color: var(--ink, #203950); border: 1px solid var(--line, #d5dce5); text-align: left; white-space: normal; overflow-wrap: anywhere; font-size: .9rem; line-height: 1.5; font-weight: 400; }
.phone-product-option:hover, .phone-product-option:focus-visible { border-color: var(--orange, #b94e00); background: var(--orange-pale, #fff1e5); }
.phone-order-form .phone-remove-line { min-height: 44px; margin-top: 22px; padding: 8px; }
.phone-order-form input:disabled { opacity: .6; }
.mobile-view .phone-order-line { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.mobile-view .phone-product-picker { grid-column: 1 / -1; }
.mobile-view .phone-order-form .phone-product-option { grid-column: auto; justify-self: stretch; }
@media (max-width: 760px) {
  .phone-order-line { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .phone-product-picker { grid-column: 1 / -1; }
  .phone-order-form .phone-order-line label { grid-column: auto; }
  .phone-order-form .phone-product-option { grid-column: auto; justify-self: stretch; }
  .phone-order-form .phone-remove-line { grid-column: 2; margin-top: 0; }
  .phone-order-form input, .phone-order-form select, .phone-order-form textarea { font-size: max(16px, 1rem); min-height: 44px; }
  .phone-order-form .total-box { gap: 12px; flex-wrap: wrap; }
}

.address-choices { display:grid; gap:4px; max-height:210px; overflow-y:auto; overscroll-behavior:contain; margin:6px 0; }
.address-choices[hidden] {display:none;}
.address-choices button { text-align:left; background:var(--surface); color:var(--ink); border:1px solid var(--line); min-height:44px; padding:9px; white-space:normal; overflow-wrap:anywhere; font:inherit; }
.address-choices button:hover,.address-choices button:focus-visible {border-color:var(--orange);}
.address-hint {display:block; font-size:.8rem; line-height:1.4; margin-top:6px;}
