/* Herda o tema e a cor do perfil; controles nativos continuam acessíveis no celular. */
.pt-input-assist-help {
    display: block;
    margin-top: .4rem;
    color: var(--pt-text-muted, #64748b);
    font-size: .78rem;
    font-weight: 400;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
select.pt-assisted-state {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    padding-right: 2rem;
    appearance: auto;
}
.pt-locality-state-filter select {
    display: block;
    min-height: 44px;
    padding: .7rem .8rem;
    border: 1px solid var(--pt-border, #dbe3ed);
    border-radius: .7rem;
    background-color: var(--pt-surface, #fff);
    color: var(--pt-text, #152037);
    font: inherit;
}
.pt-locality-state-filter select:focus-visible {
    outline: 2px solid var(--pt-primary, #265dff);
    outline-offset: 2px;
}
.pt-locality-field { display: grid; align-content: start; gap: .55rem; min-width: 0; }
.pt-locality-state-filter { display: grid; gap: .3rem; margin-bottom: .5rem; min-width: 0; font-size: .8rem; }
.pt-code-lookup { display: grid; gap: .55rem; min-width: 0; margin-bottom: .75rem; }
.pt-code-lookup > label { display: grid; gap: .3rem; min-width: 0; font-size: .85rem; }
.pt-postcode-assist { display: grid; align-content: start; gap: .35rem; min-width: 0; margin: .3rem 0 .75rem; }
.pt-postcode-field { min-width: 0; }
.pt-postcode-field > label { display: grid; gap: .4rem; min-width: 0; }
.pt-postcode-assist .pt-input-assist-help { margin: 0; }
.pt-postcode-assist__search, .pt-postcode-assist__apply {
    justify-self: start;
    min-height: 44px;
    padding: .55rem .8rem;
    border: 1px solid var(--pt-border, #dbe3ed);
    border-radius: .7rem;
    color: var(--pt-primary, #265dff);
    background: var(--pt-surface, #fff);
    font: inherit;
    font-size: .85rem;
    font-weight: 650;
    text-align: left;
}
.pt-postcode-assist button:focus-visible { outline: 2px solid var(--pt-primary, #265dff); outline-offset: 2px; }
.pt-postcode-assist button:disabled { opacity: .6; cursor: wait; }
.pt-postcode-assist__preview {
    margin: .2rem 0;
    padding: .65rem .8rem;
    border-radius: .65rem;
    background: var(--pt-primary-soft, #edf3ff);
    color: var(--pt-text, #152037);
    font-size: .85rem;
    overflow-wrap: anywhere;
}
.pt-postcode-assist [hidden] { display: none !important; }
html[data-theme="dark"] .pt-input-assist-help { color: #a6b5ca; }
@media (max-width: 767px) {
    select.pt-assisted-state { font-size: 16px; min-height: 48px; }
}
