/* Auth Module - Desktop Styles */
@media (min-width: 1200px) {
    /* Container adjustments */
    .auth-container {
        padding: 3rem 0;
    }
    
    .container {
        max-width: 1140px;
    }
    
    /* Typography adjustments */
    .section-title {
        font-size: 2.75rem;
        margin-bottom: 1rem;
    }
    
    .section-subtitle {
        font-size: 1.25rem;
        margin-bottom: 3rem;
    }
    
    /* Card adjustments */
    .auth-card {
        margin-bottom: 2.5rem;
    }
    
    .registration-card .card-body {
        padding: 4rem;
    }
    
    .registration-card .card-title {
        font-size: 1.6rem;
        margin-bottom: 1.25rem;
    }
    
    .registration-icon {
        font-size: 4.5rem;
        margin-bottom: 1.5rem;
    }
    
    /* Form adjustments */
    .auth-form {
        padding: 3rem;
    }
    
    .form-section {
        margin-bottom: 3rem;
        padding-bottom: 2.5rem;
    }
    
    .section-header {
        font-size: 1.2rem;
        margin-bottom: 1.5rem;
    }
    
    .section-header i {
        font-size: 1.4rem;
    }
    
    /* Form controls */
    .form-control, .form-select {
        padding: 0.875rem 1.25rem;
        font-size: 1.05rem;
    }
    
    /* Button adjustments */
    .btn-auth {
        padding: 1rem 2.5rem;
        font-size: 1.15rem;
    }
    
    /* Grid adjustments */
    .col-lg-6 {
        margin-bottom: 2rem;
    }
    
    /* Feature list adjustments */
    .feature-list li {
        font-size: 1rem;
        padding: 0.6rem 0;
    }
    
    .feature-list i {
        font-size: 1.15rem;
        margin-right: 0.8rem;
    }
    
    /* Terms and conditions */
    .terms-check {
        margin: 2.5rem 0;
    }
    
    .terms-check .form-check-label {
        font-size: 1rem;
        line-height: 1.5;
    }
    
    /* Alert adjustments */
    .alert {
        padding: 1.25rem 1.75rem;
        margin-bottom: 1.75rem;
        font-size: 1rem;
    }
    
    /* Enhanced hover effects for desktop */
    .registration-card:hover {
        transform: translateY(-15px);
        box-shadow: 0 2rem 5rem rgba(0, 0, 0, 0.15);
    }
    
    .btn-auth:hover {
        transform: translateY(-3px);
        box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.15);
    }
    
    .btn-back:hover {
        transform: translateX(-8px);
    }
    
    /* Enhanced form interactions */
    .form-control:focus, .form-select:focus {
        box-shadow: 0 0 0 0.3rem rgba(0, 123, 255, 0.25);
        transform: translateY(-1px);
    }
    
    /* Spacing adjustments */
    .mb-4 {
        margin-bottom: 2rem !important;
    }
    
    .mb-3 {
        margin-bottom: 1.5rem !important;
    }
    
    .py-5 {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }
}

/* Large desktop screens (1400px and up) */
@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }
    
    .section-title {
        font-size: 3rem;
    }
    
    .section-subtitle {
        font-size: 1.3rem;
    }
    
    .registration-card .card-body {
        padding: 5rem;
    }
    
    .registration-card .card-title {
        font-size: 1.75rem;
    }
    
    .registration-icon {
        font-size: 5rem;
    }
    
    .auth-form {
        padding: 4rem;
    }
    
    .btn-auth {
        padding: 1.1rem 3rem;
        font-size: 1.2rem;
    }
    
    .form-control, .form-select {
        padding: 1rem 1.5rem;
        font-size: 1.1rem;
    }
}

/* Ultra-wide screens (1920px and up) */
@media (min-width: 1920px) {
    .container {
        max-width: 1600px;
    }
    
    .section-title {
        font-size: 3.5rem;
    }
    
    .section-subtitle {
        font-size: 1.4rem;
    }
    
    .registration-card .card-body {
        padding: 6rem;
    }
    
    .auth-form {
        padding: 5rem;
    }
}

/* Desktop-specific enhancements */
@media (min-width: 1200px) {
    /* Better spacing for registration cards */
    .user-type-selection .row {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
    }
    
    .user-type-selection .col-lg-6 {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    
    /* Improved form layout for desktop */
    .auth-form .row {
        margin-left: -1rem;
        margin-right: -1rem;
    }
    
    .auth-form .col-md-6 {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    /* Enhanced animations for desktop */
    .registration-card {
        transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }
    
    .btn-auth {
        transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }
    
    /* Better focus states for keyboard navigation */
    .registration-card:focus-within {
        outline: 2px solid var(--primary-color);
        outline-offset: 4px;
    }
    
    .btn-auth:focus {
        outline: 2px solid var(--primary-color);
        outline-offset: 2px;
    }
    
    /* Improved loading states */
    .btn-loading {
        opacity: 0.7;
    }
    
    /* Better error states */
    .form-control.is-invalid {
        border-color: var(--danger-color);
        box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
    }
    
    .form-control.is-valid {
        border-color: var(--success-color);
        box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
    }
}

/* Print styles for desktop */
@media print {
    .auth-container {
        background: white !important;
        padding: 0 !important;
    }
    
    .auth-card {
        box-shadow: none !important;
        border: 1px solid #000 !important;
    }
    
    .btn-auth, .btn-back {
        display: none !important;
    }
    
    .registration-card:hover {
        transform: none !important;
    }
}
