/* Global Fonts */
body {
    font-family: 'Inter', sans-serif;
    background-color: #f3f4f6;
}

.font-serif {
    font-family: 'Merriweather', serif;
}

/* View Switching Logic */
.view-section {
    display: none;
}

/* Dashboard Views (Admin/Student) - Fixed Height App Feel */
#view-admin.active,
#view-student.active {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
    /* Prevent body scroll, use internal scroll */
}

/* Landing Page - Normal Website Scroll */
#view-auth.active {
    display: block !important;
    height: auto !important;
    min-height: 100vh;
    overflow-y: visible !important;
    /* Enable page scroll */
    position: relative;
    width: 100%;
}

/* Ensure Landing Page Children Stack Correctly */
#view-auth.active>div {
    width: 100%;
}

/* Animation Utilities */
.fade-in {
    animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

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

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 3px;
}

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

/* Seat Button Interactive */
.seat-btn {
    transition: transform 0.1s;
    cursor: pointer;
}

.seat-btn:active {
    transform: scale(0.90);
}

/* Footer & Features Fixes */
#features-section {
    position: relative;
    z-index: 20;
    background-color: #f8fafc;
}

footer {
    position: relative;
    z-index: 30;
    background-color: #0f172a;
}