.country-control { position: relative; min-width: 0; }
.country-trigger {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  width: 100%; height: 48px; min-width: 0; padding: 0 15px;
  border: 1px solid var(--edge); border-radius: var(--r-md, 12px);
  background: var(--white, var(--paper)); color: var(--deep, var(--ink));
  font: inherit; font-size: 0.92rem; cursor: pointer; text-align: left;
}
.country-trigger-value { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.country-trigger svg { flex: none; color: var(--muted); transition: transform 0.18s; }
.country-trigger[aria-expanded="true"] svg { transform: rotate(180deg); }
.country-trigger[aria-invalid="true"] { border-color: #b3261e; }
.country-trigger:focus-visible {
  outline: none; border-color: var(--teal, var(--brand-teal));
  box-shadow: 0 0 0 3px rgba(8,170,149,0.18);
}
.country-picker-popover {
  position: absolute; left: 0; top: calc(100% + 6px); z-index: 60;
  width: max(100%, 290px); overflow: hidden;
  background: var(--white, var(--paper)); border: 1px solid var(--edge);
  border-radius: var(--r-md, 12px); box-shadow: 0 14px 30px -14px rgba(13,27,42,0.35);
}
.country-search-wrap { padding: 10px; border-bottom: 1px solid var(--edge); }
.country-search-wrap input {
  width: 100%; padding: 10px 12px; border: 1px solid var(--edge);
  border-radius: var(--r-sm, 10px); background: var(--white, var(--paper));
  color: var(--deep, var(--ink)); font: inherit; font-size: 0.88rem;
}
.country-list { list-style: none; max-height: 250px; overflow-y: auto; margin: 0; padding: 0; }
.country-option { padding: 10px 14px; font-size: 0.88rem; cursor: pointer; border-bottom: 1px solid var(--edge); }
.country-option:last-child { border-bottom: 0; }
.country-option:hover, .country-option.is-active,
.country-option[aria-selected="true"] { background: rgba(8,170,149,0.09); }
.country-empty { padding: 12px 14px; color: var(--muted); font-size: 0.88rem; }
