/* student_reg_app/public_html/assets/css/style.css */

body {
    font-family: 'Inter', sans-serif;
    background-color: #f0f2f5;
    display: flex; /* Enables Flexbox for centering */
    justify-content: center; /* Horizontally centers content */
    align-items: center; /* Vertically centers content */
    min-height: 100vh; /* Ensures the body takes up the full viewport height */
    margin: 0;
} 

.card {
    border-radius: 1rem;
    width: 100%;
    max-width: 900px;
    /* ADDED: Centering the card */
    margin: auto;
    position: relative;
}

.form-step-container {
    position: relative;
    max-height: 60vh;
    overflow-y: auto;
    padding-right: 1rem;
    overflow-x: hidden;
}

.form-step {
    /* REMOVED: Absolute positioning to allow the container to expand */
    /* position: absolute; */
    width: 100%;
    /* top: 0; */
    /* left: 100%; */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    display: none; /* ADDED: To hide the form step initially */
    box-sizing: border-box;
    padding: 0 1rem;
}

.form-step.active {
    /* REMOVED: left: 0; */
    opacity: 1;
    visibility: visible;
    display: block; /* ADDED: To display the active form step */
}

.fade-in {
    animation: fadeIn 0.5s ease-in-out;
}

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

.progress-bar {
    transition: width 0.3s ease;
}

.schedule-grid .card-header {
    font-weight: 600;
}

.btn-primary, .btn-success {
    font-weight: 600;
}

#summary-preview p {
    margin-bottom: 0.5rem;
}

#summary-preview h6 {
    font-weight: 700;
    color: #495057;
    border-bottom: 1px solid #dee2e6;
    padding-bottom: 0.25rem;
    margin-bottom: 1rem;
}

.alert-link {
    font-weight: 600;
}
