.iti { width: 100%; min-width: 0; --iti-border-color: #d5e2dc; --iti-country-selector-bg: var(--color-base-100, #f7f9f8); --iti-hover-color: #e0efe7; --iti-spacer-horizontal: .65rem; }
.iti > input[data-phone-input] { width: 100%; }
.gp-field-display.gp-phone-display { display: flex; padding-left: 0; gap: 6px; }
.gp-phone-display-prefix { position: relative; display: flex; align-items: center; flex-shrink: 0; align-self: stretch; gap: var(--iti-spacer-horizontal); min-width: 5.75rem; padding-left: var(--iti-spacer-horizontal); padding-right: .6rem; }
.gp-phone-display-prefix::after { content: ''; position: absolute; right: 0; top: 0; height: 100%; width: 1px; background: var(--iti-border-color); }
.gp-phone-display-prefix .iti__flag { flex-shrink: 0; }
/* Reserve room for a flag and +43 even in the empty state. Longer prefixes may
   expand the segment; the surrounding field keeps its full available width. */
.iti .iti__selected-country { min-width: 5.75rem; border-radius: .85rem 0 0 .85rem; color: inherit; background: transparent; border: 0; padding-right: .6rem; }
.iti .iti__selected-country::after { content: ''; position: absolute; right: 0; top: 25%; height: 50%; width: 1px; background: var(--iti-border-color); }
.iti .iti__selected-country-primary { border-radius: inherit; background: transparent !important; }
.iti .iti__selected-country:focus-visible { outline: 2px solid var(--color-primary, #299568); outline-offset: -3px; }
.iti__selected-dial-code { min-width: 3ch; font-size: .875rem; font-variant-numeric: tabular-nums; }
.iti .iti__country-selector { color: var(--color-base-content, #253c31); border: 1px solid var(--iti-border-color); border-radius: .85rem; box-shadow: 0 6px 20px #143c2820; overflow: hidden; padding: .4rem; }
.iti .iti__search-input-wrapper { border: 0; margin-bottom: .35rem; }
.iti .iti__search-input { min-height: 2.5rem; background: var(--color-base-200, #eef2f0); color: inherit; font-family: inherit; font-size: .875rem; border: 1px solid transparent; border-radius: .65rem; transition: border-color .15s, box-shadow .15s; }
.iti .iti__search-input:focus, .iti .iti__search-input:focus-visible { outline: none; border-color: var(--color-primary, #299568); box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary, #299568) 18%, transparent); }
.iti .iti__country-list { max-height: 15rem; overflow-y: auto; }
.iti .iti__country { font-size: .875rem; padding: .6rem .65rem; border-radius: .4rem; }
.iti .iti__country:hover, .iti .iti__country.iti__highlight { background: var(--iti-hover-color); color: #156340; }
.iti--detached-country-selector { z-index: 10050; }
.gp-phone-note { margin-top: .35rem; color: #65736b; font-size: .75rem; }
.gp-phone-note:empty { display: none; }
.gp-phone-note--error { color: #b42318; }
input[data-phone-input][aria-invalid=true] { outline: 1px solid #b42318; outline-offset: -1px; }
