@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600&family=Source+Sans+3:wght@400;600&family=Varela+Round&display=swap');

body {
    font-family: 'Source Sans 3', sans-serif;
}

.font-varela {
    font-family: 'Varela Round', sans-serif;
}

.font-playfair {
    font-family: 'Playfair Display', serif;
}

.checkbox-item {
    transition: all 0.3s ease;
}

.checkbox-item:hover {
    transform: scale(1.05);
}

input[type="checkbox"]:checked + label,
input[type="radio"]:checked + label {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #ffffff;
    border-color: #667eea;
}

.gradient-bg-child {
    background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 50%, #fab1a0 100%);
}

.section-card {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.gradient-bg-parent {
    background: linear-gradient(135deg, #e0c3fc 0%, #8ec5fc 100%);
}

.gradient-bg-admin {
    background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 50%, #e17055 100%);
}

.gradient-bg-success {
    background: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
}

.hero-bg-login {
    background: radial-gradient(circle at top left, #ffecd2 0%, #fcb69f 35%, #f6d365 70%, #fda085 100%);
}

.hero-bg-register {
    background: radial-gradient(circle at bottom right, #cfd9df 0%, #e2ebf0 45%, #fbc2eb 100%);
}

.hero-bg-register-parent {
    background: radial-gradient(circle at top right, #fef9ef 0%, #fcd5ce 45%, #f9dcc4 100%);
}

.hero-bg-reset-request {
    background: radial-gradient(circle at top, #fdfbfb 0%, #ebedee 50%, #f9f7f1 100%);
}

.hero-bg-reset-form {
    background: radial-gradient(circle at bottom, #fff1eb 0%, #ace0f9 100%);
}

.hero-bg-verify-parent {
    background: radial-gradient(circle at center, #e9f5db 0%, #cfe1b9 45%, #b5c99a 100%);
}

.hero-bg-config-error {
    background: linear-gradient(135deg, #fdfbfb 0%, #f8dcdc 100%);
}

.hero-bg-admin-users {
    background: linear-gradient(120deg, #fdfbfb 0%, #ebedee 40%, #f9f7f1 100%);
}

.table-shadow {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.bounce {
    animation: bounce 1s infinite;
}

@keyframes bounce {
    0%,
    100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-20px);
    }
}

@media print {
    .no-print {
        display: none;
    }
    body {
        background: #ffffff;
    }
}
