/**
 * Custom CSS for Tryout Results Management System
 * Project-specific styles and overrides for SB Admin 2 template
 */

/* Login page background gradient */
.bg-login-image {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    background-size: cover;
    background-position: center;
}

/* Custom color scheme for project */
:root {
    --primary-color: #4e73df;
    --secondary-color: #858796;
    --success-color: #1cc88a;
    --info-color: #36b9cc;
    --warning-color: #f6c23e;
    --danger-color: #e74a3b;
    --light-color: #f8f9fc;
    --dark-color: #5a5c69;
}

/* Custom card styles */
.card-custom {
    border-left: 4px solid var(--primary-color);
}

/* Flash message styles */
.alert {
    border-radius: 0.35rem;
    margin-bottom: 1rem;
}

/* Dashboard cards */
.dashboard-card {
    transition: transform 0.2s ease-in-out;
}

.dashboard-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

/* Custom button styles */
.btn-custom {
    border-radius: 0.35rem;
    font-weight: 600;
}

/* Loading spinner */
.loading-spinner {
    display: inline-block;
    width: 1rem;
    height: 1rem;
    border: 2px solid #f3f3f3;
    border-top: 2px solid var(--primary-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Form enhancements */
.form-control-user {
    border-radius: 10rem;
    padding: 0.75rem 1rem;
    font-size: 0.9rem;
}

.form-control-user::placeholder {
    color: #d1d3e2;
}

/* Sidebar customization */
.sidebar .nav-item .nav-link {
    padding: 0.85rem 1rem;
}

.sidebar .nav-item .nav-link[data-toggle="collapse"]::after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    float: right;
}

.sidebar .nav-item .nav-link[data-toggle="collapse"].collapsed::after {
    content: "\f105";
}

/* Profile dropdown */
.dropdown-menu {
    box-shadow: 0 0.15rem 1.75rem 0 rgba(58, 59, 69, 0.15);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .sidebar {
        width: 6.5rem;
    }

    .sidebar .nav-item .nav-link span {
        display: none;
    }
}

/* Print styles */
@media print {
    .sidebar,
    .topbar,
    .btn,
    .no-print {
        display: none !important;
    }
}
