.password-checklist li {
    margin-bottom: 5px;
    font-size: 0.9em;
}

.password-checklist .fa-check {
    color: #28a745;
}

.password-checklist .fa-times {
    color: #dc3545;
}

.animate__animated {
    animation-duration: 0.5s;
}

.noUi-connect {
    background: #007bff;
}

.noUi-handle {
    background: #007bff;
    border: 1px solid #0056b3;
}

.noUi-handle:after, .noUi-handle:before {
    background: #fff;
}

.card {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.table th {
    border-top: none;
    font-weight: 600;
}

.navbar-brand {
    font-weight: 600;
}

.progress {
    background-color: #e9ecef;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .container-fluid {
        padding: 0 10px;
    }
    
    .card-body {
        padding: 1rem;
    }
    
    .table-responsive {
        font-size: 0.875rem;
    }
    
    .btn-group .btn {
        font-size: 0.875rem;
    }
}

/* Roundcube-inspired styling */
body {
    background-color: #f8f9fa;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.navbar-dark {
    background-color: #2c3e50 !important;
}

.card-header {
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    font-weight: 600;
}

.form-control:focus {
    border-color: #2c3e50;
    box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
}

.btn-primary {
    background-color: #2c3e50;
    border-color: #2c3e50;
}

.btn-primary:hover {
    background-color: #1a252f;
    border-color: #1a252f;
}