*{
    font-family: 'Sofia Sans';
    scroll-behavior: smooth;
} 

[x-cloak] {
    display: none !important;
}
.iti {
    width: 100% !important;
    display: flex !important;
} 
.iti__flag-container {
    border-radius: 0.5rem 0 0 0.5rem !important;
    border: 1px solid #d1d5db !important;
    border-right: none !important;
    background-color: #f9fafb !important;
}

.iti__selected-flag {
    padding: 12px 8px 12px 12px !important;
    border-radius: 0.5rem 0 0 0.5rem !important;
    background-color: transparent !important;
    border: none !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
}

.iti__arrow {
    border-left: 4px solid transparent !important;
    border-right: 4px solid transparent !important;
    border-top: 4px solid #6b7280 !important;
    border-bottom: none !important;
    margin-left: 6px !important;
}

.iti--allow-dropdown input {
    border-radius: 0 0.5rem 0.5rem 0 !important;
    border-left: none !important;
    padding: 12px 16px 12px 16px !important;
    height: auto !important;
    min-height: 44px !important;
}

.iti__country-list {
    border-radius: 0.5rem !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #d1d5db !important;
    background-color: white !important;
    z-index: 9999 !important;
    max-height: 200px !important;
    overflow-y: auto !important;
    position: absolute !important;
}

.iti__country {
    padding: 8px 12px !important;
    border-bottom: 1px solid #f3f4f6 !important;
    cursor: pointer !important;
    color: #374151 !important;
}

.iti__country:hover,
.iti__country.iti__highlight {
    background-color: #f3f4f6 !important;
}

.iti__country-name {
    color: #374151 !important;
    margin-left: 8px !important;
}

.iti__dial-code {
    color: #6b7280 !important;
}

/* Error state */
.phone-input-error .iti__flag-container {
    border-color: #ef4444 !important;
    background-color: #fef2f2 !important;
}

.phone-input-error .iti--allow-dropdown input {
    border-color: #ef4444 !important;
}

/* Success state */
.phone-input-success .iti__flag-container {
    border-color: #10b981 !important;
    background-color: #f0fdf4 !important;
}

.phone-input-success .iti--allow-dropdown input {
    border-color: #10b981 !important;
}

/* Dark mode support */
.dark .iti__flag-container {
    background-color: #374151 !important;
    border-color: #4b5563 !important;
}

.dark .iti__country-list {
    background-color: #374151 !important;
    border-color: #4b5563 !important;
}

.dark .iti__country {
    color: #f3f4f6 !important;
    border-bottom-color: #4b5563 !important;
}

.dark .iti__country:hover,
.dark .iti__country.iti__highlight {
    background-color: #4b5563 !important;
}

.dark .iti__country-name {
    color: #f3f4f6 !important;
}

.dark .iti__dial-code {
    color: #9ca3af !important;
}

.dark .iti__arrow {
    border-top-color: #9ca3af !important;
}

/* Disabled state */
.iti--disabled .iti__flag-container {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

.iti--disabled input {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

/* ===== Choices.js minimal dark/light styling ===== */

/* Outer container width */
.choices {
  width: 100%;
}

/* Inner container (visible select box) */
.choices__inner {
  background-color: rgb(249 250 251); /* bg-gray-50 */
  border: 1px solid rgb(209 213 219); /* border-gray-300 */
  color: rgb(17 24 39); /* text-gray-900 */
}

/* Dark mode inner */
.dark .choices__inner {
  background-color: rgb(55 65 81); /* dark:bg-gray-700 */
  border-color: rgb(75 85 99); /* dark:border-gray-600 */
  color: rgb(255 255 255); /* dark:text-white */
}

/* Dropdown list container */
.choices__list--dropdown {
  background-color: rgb(255 255 255); /* bg-white */
  color: rgb(17 24 39); /* text-gray-900 */
}

/* Dark mode dropdown list */
.dark .choices__list--dropdown {
  background-color: rgb(31 41 55); /* dark:bg-gray-800 */
  color: rgb(243 244 246); /* dark:text-gray-100 */
}

/* Search input inside dropdown */
.choices__list--dropdown .choices__input {
  background-color: rgb(243 244 246); /* gray-100 */
  color: rgb(17 24 39);
}

.dark .choices__list--dropdown .choices__input {
  background-color: rgb(55 65 81); /* dark gray */
  color: rgb(243 244 246);
}

/* Each selectable option */
.choices__item--selectable {
  color: inherit; /* inherit from parent dropdown */
}

/* Highlighted option */
.choices__item--selectable.is-highlighted {
  background-color: var(--brand-accent-100, rgb(233 222 255));
  color: var(--brand-accent-700, rgb(126 34 206));
}

.dark .choices__item--selectable.is-highlighted {
  background-color: var(--brand-accent-900, rgb(76 29 149));
  color: var(--brand-accent-300, rgb(192 132 252));
}

/* Placeholder text */
.choices__placeholder {
  color: rgb(107 114 128); /* gray-500 */
}

.dark .choices__placeholder {
  color: rgb(156 163 175); /* dark gray placeholder */
}

/* Input inside main select box */
.choices__input {
  background: transparent;
  border: 0;
  color: inherit;
}