.kw-phone-control { display: flex; align-items: stretch; flex: 1; min-width: 0; background: var(--kp-bg-soft, #fff); border: 1px solid var(--kp-border, #6f7888); border-radius: 6px; }
.kw-phone-country { position: relative; display: flex; align-items: center; flex: 0 0 124px; padding: 12px 25px 12px 12px; border-right: 1px solid var(--kp-border, #b2b7bf); border-radius: 5px 0 0 5px; }
.kw-phone-country-summary { display: inline-flex; align-items: center; gap: 8px; font-size: 16px; line-height: 1.4; white-space: nowrap; pointer-events: none; }
.kw-phone-country-summary img { width: 24px; height: 18px; object-fit: contain; flex-shrink: 0; }
.kw-phone-country::after { content: "▾"; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); font-size: 16px; pointer-events: none; }
.kw-phone-country select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 1; color: transparent; background: transparent; appearance: none; border: 0; border-radius: inherit; font: inherit; cursor: pointer; }
.kw-phone-country select option { background: #fff; color: #202124; }
.kw-phone-country:focus-within { outline: 3px solid #245ffc; outline-offset: -3px; }
.kw-phone-control input { min-width: 0; flex: 1; width: 100%; }
.kw-waitlist .kw-phone-control input, .kw-portal-phone .kw-portal-input { border: 0; border-radius: 0 5px 5px 0; background: transparent; font-size: 16px; }
.kw-portal-phone .kw-portal-input { padding-inline: 12px; }
.kw-phone-hint { font-size: 14px; line-height: 1.5; color: var(--kp-text-2, #414b5c); margin-top: 8px; }
@media (max-width: 480px) { .kw-phone-control { width: 100%; } .kw-phone-country { flex-basis: 116px; padding-left: 10px; } }
