/* Non-critical styles for register page (below-the-fold, loaded async) */
.form-container { max-width: 600px; margin: 0 auto; background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,0.07); padding: 40px 30px; }
.form-group label { font-weight: 500; }
.form-control.is-invalid, .form-control:invalid { border-color: #dc3545; }
.invalid-feedback { color: #dc3545; font-size: 0.95em; margin-top: 2px; }
.toggle-password { color: #888; }
.btn-block { width: 100%; }
.card, .card-body, .card-title, .card-text, .card h3, .card h4, .card ol, .card label, .form-control {
    color: #1a1a1a !important;
}
.card {
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.card.bg-light {
    background: #f5f5f5 !important;
}
.card-title, .card h3, .card h4 {
    color: #c62828 !important;
    font-weight: 700;
}
.btn-primary, button.btn-primary, .btn.btn-primary {
    background: #c62828 !important;
    color: #fff !important;
    border: none;
    font-weight: 700;
    box-shadow: 0 1px 4px rgba(198,40,40,0.10);
    outline: none;
}
.btn-primary:hover, .btn-primary:focus {
    background: #8e24aa !important;
    color: #fff !important;
}
.btn-link, a.btn-link, a {
    color: #8e24aa;
    text-decoration: underline;
}
a.btn-link:hover, a:hover, a:focus {
    color: #c62828;
    text-decoration: underline;
}
@media (max-width: 768px) {
    .enhanced-header {
        min-height: 80px;
        border-radius: 0 0 10px 10px;
        margin-bottom: 0.7rem;
        padding: 0 6px;
    }
    .enhanced-header h1 {
        font-size: 1.15rem;
    }
    .enhanced-header p.lead {
        font-size: 0.95rem;
    }
}
@media (max-width: 480px) {
    .enhanced-header {
        min-height: 60px;
        border-radius: 0 0 6px 6px;
        margin-bottom: 0.4rem;
        padding: 0 2px;
    }
    .enhanced-header h1 {
        font-size: 0.95rem;
    }
    .enhanced-header p.lead {
        font-size: 0.85rem;
    }
}
