.input-halo:focus {
    box-shadow: 0 0 0 2px rgba(0, 60, 144, 0.2);
}

/* App-like behavior: disable text selection and text cursors globally */
body {
    user-select: none;
    -webkit-user-select: none;
    cursor: default;
}

/* Re-enable selection and text cursors for inputs */
input[type="text"], 
input[type="tel"], 
input[type="email"], 
input[type="number"], 
textarea {
    user-select: text;
    -webkit-user-select: text;
    cursor: text;
}

/* Toaster Animation */
@keyframes slideInRight {
    from { transform: translateX(100%); opacity: 0; }
    to { transform: translateX(0); opacity: 1; }
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

.toast-enter { 
    animation: slideInRight 0.3s ease-out forwards; 
}

.toast-exit { 
    animation: fadeOut 0.3s ease-in forwards; 
}

/* Dropdown Options Styling */
option {
    background-color: #0f172a; /* slate-900 */
    color: #f8fafc; /* slate-50 */
    padding: 12px;
}

/* Ensure earlier sections stack higher than later ones to prevent dropdown overlap */
#registrationForm > div.space-y-6 {
    position: relative;
}
#registrationForm > div.space-y-6:nth-of-type(1) { z-index: 50; }
#registrationForm > div.space-y-6:nth-of-type(2) { z-index: 40; }
#registrationForm > div.space-y-6:nth-of-type(3) { z-index: 30; }
#registrationForm > div.space-y-6:nth-of-type(4) { z-index: 20; }
#registrationForm > div.space-y-6:nth-of-type(5) { z-index: 10; }
