@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

:root {
    --primary: #001F54;
    --secondary: #005DFF;
    --accent: #FFFFFF;
    --text: #111111;
    --bg: #F8F9FA;
}

body {
    font-family: 'Poppins', sans-serif;
    color: var(--text);
    background-color: var(--bg);
    overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
}

.bg-primary-custom { background-color: var(--primary) !important; color: white !important; }
.text-primary-custom { color: var(--primary) !important; }
.bg-secondary-custom { background-color: var(--secondary) !important; color: white !important; }
.text-secondary-custom { color: var(--secondary) !important; }

.btn-primary-custom {
    background-color: var(--primary);
    color: white;
    border: none;
    transition: all 0.3s ease;
    border-radius: 8px;
}
.btn-primary-custom:hover {
    background-color: #00153d;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 31, 84, 0.3);
}

.btn-secondary-custom {
    background-color: var(--secondary);
    color: white;
    border: none;
    transition: all 0.3s ease;
    border-radius: 8px;
}
.btn-secondary-custom:hover {
    background-color: #004ecc;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 93, 255, 0.3);
}

.modern-card {
    background: white;
    border: none;
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    overflow: hidden;
}
.modern-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
}

.skeleton {
    background: #e2e5e7;
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0));
    background-size: 40px 100%;
    background-repeat: no-repeat;
    background-position: left -40px top 0;
    animation: shine 1.2s ease infinite;
}
@keyframes shine {
    to { background-position: right -40px top 0; }
}
.skel-text { width: 100%; height: 20px; border-radius: 4px; margin-bottom: 8px; }
.skel-title { width: 70%; height: 24px; border-radius: 4px; margin-bottom: 12px; }
.skel-img { width: 100%; height: 200px; border-radius: 16px 16px 0 0; }
