#zipcode_frame.us-shared-postcode-dialog {
    position:fixed!important; inset:16px 16px auto!important; transform:none!important;
    margin:0 auto!important; width:calc(100vw - 32px)!important; max-width:460px!important;
    height:auto!important; min-height:0!important; max-height:calc(100dvh - 32px)!important;
    overflow:auto!important; padding:20px!important; box-sizing:border-box;
    border:1px solid #dfe3e8; border-radius:14px; background:#fff!important; color:#303843!important;
}
#zipcode_frame.us-shared-postcode-dialog:not([open]) { display:none!important; }
#zipcode_frame.us-shared-postcode-dialog::backdrop { background:rgb(20 26 34 / .5); }
#zipcode_frame.us-shared-postcode-dialog header { display:flex!important; align-items:center; justify-content:space-between; gap:12px; padding:0!important; background:transparent!important; border:0!important; }
#zipcode_frame.us-shared-postcode-dialog h2 { margin:0!important; padding:0!important; color:#303843!important; background:transparent!important; font-size:20px!important; line-height:1.5; }
#zipcode_frame.us-shared-postcode-dialog p { margin:16px 0; color:#4e5866!important; font-size:15px; line-height:1.8; }
#zipcode_frame.us-shared-postcode-dialog [hidden] { display:none!important; }
#zipcode_frame.us-shared-postcode-dialog button { min-width:44px; min-height:44px; padding:10px 16px; border:1px solid #b9c1cb; border-radius:8px; background:#fff!important; color:#303843!important; font-size:15px; cursor:pointer; }
#zipcode_frame.us-shared-postcode-dialog .us-postcode-close { padding:0; border:0; font-size:28px; }
#zipcode_frame.us-shared-postcode-dialog footer { margin-top:16px; padding:0!important; background:transparent!important; }
#zipcode_frame.us-shared-postcode-dialog footer button { width:100%; background:#f5ce36!important; border-color:#dcb62a; }
#zipcode_frame.us-shared-postcode-dialog button:focus-visible { outline:3px solid #2967c8!important; outline-offset:2px; }
#zipcode_frame.us-shared-postcode-dialog #zipcode_provider { max-width:100%; overflow:auto; }
#zipcode_frame.us-shared-postcode-dialog #zipcode_provider:empty { display:none; }
#zipcode_frame.us-shared-postcode-dialog iframe { max-width:100%!important; }
/* The provider requires at least 300px; keep the search controls visible on narrow phones. */
@media (max-width:480px) {
  #zipcode_frame.us-shared-postcode-dialog {
    inset:0 0 auto!important; width:100%!important; max-width:none!important;
    max-height:100dvh!important; padding:12px 0!important; border:0; border-radius:0 0 16px 16px;
  }
  #zipcode_frame.us-shared-postcode-dialog :is(header,footer,p) { margin-inline:12px; }
}
