/* General Font Settings */
body {
    font-family: 'Inter', sans-serif;
}

/* Material Symbols Settings */
.material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.material-symbols-filled {
    font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: #D1D8D4;
    border-radius: 4px;
}

/* FAQ Accordion Animation */
details > summary {
    list-style: none;
}

details > summary::-webkit-details-marker {
    display: none;
}

details[open] summary ~ * {
    animation: sweep .3s ease-in-out;
}

@keyframes sweep {
    0% {
        opacity: 0;
        transform: translateY(-10px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

/* -------------------------------------------------------------------------- */
/* Login & Signup Toggle Logic                                                */
/* -------------------------------------------------------------------------- */

/* Active State for Switcher Labels */
/* Matches both Login (#login-...) and Signup (#reg-...) radios */
#login-mobile-radio:checked ~ .space-y-2 .toggle-wrapper label[for="login-mobile-radio"],
#login-email-radio:checked ~ .space-y-2 .toggle-wrapper label[for="login-email-radio"],
#reg-mobile-radio:checked ~ .space-y-2 .toggle-wrapper label[for="reg-mobile-radio"],
#reg-email-radio:checked ~ .space-y-2 .toggle-wrapper label[for="reg-email-radio"] {
    background-color: white;
    color: #0A8F6A; /* Primary Color */
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

/* Dark Mode Overrides */
.dark #login-mobile-radio:checked ~ .space-y-2 .toggle-wrapper label[for="login-mobile-radio"],
.dark #login-email-radio:checked ~ .space-y-2 .toggle-wrapper label[for="login-email-radio"],
.dark #reg-mobile-radio:checked ~ .space-y-2 .toggle-wrapper label[for="reg-mobile-radio"],
.dark #reg-email-radio:checked ~ .space-y-2 .toggle-wrapper label[for="reg-email-radio"] {
    background-color: #2A3A34; /* Card Dark */
    color: #0A8F6A;
}

/* --- Section Visibility Logic (Login Page) --- */
#login-mobile-radio:checked ~ .form-content-wrapper #mobile-section { display: block; }
#login-mobile-radio:checked ~ .form-content-wrapper #email-section { display: none; }

#login-email-radio:checked ~ .form-content-wrapper #email-section { display: block; }
#login-email-radio:checked ~ .form-content-wrapper #mobile-section { display: none; }

/* --- Section Visibility Logic (Signup Page) --- */
#reg-mobile-radio:checked ~ .form-content-wrapper #mobile-section { display: block; }
#reg-mobile-radio:checked ~ .form-content-wrapper #email-section { display: none; }

#reg-email-radio:checked ~ .form-content-wrapper #email-section { display: block; }
#reg-email-radio:checked ~ .form-content-wrapper #mobile-section { display: none; }
/* -------------------------------------------------------------------------- */
/* FAQ Click Fix                                                               */
/* -------------------------------------------------------------------------- */

/* Ensure summary is clickable */
details > summary {
    cursor: pointer;
    pointer-events: auto;
    user-select: none;
}

/* Ensure children do not block clicks */
details > summary * {
    pointer-events: none;
}

/* Restore pointer events for summary itself */
details > summary {
    pointer-events: auto;
}

/* Optional: smoother icon rotation support */
details summary svg,
details summary .material-symbols-outlined {
    transition: transform 0.25s ease;
}

details[open] summary svg,
details[open] summary .material-symbols-outlined {
    transform: rotate(180deg);
}
.material-symbols-outlined {
    transition: transform 0.25s ease;
}

.rotate-180 {
    transform: rotate(180deg);
}