/* =======================================================
   Custom Kid-Friendly Styles & Animations
   Sun Moon Play School, Kota
   ======================================================= */

:root {
    --sun-yellow: #F59E0B;
    --sun-orange: #F97316;
    --moon-blue: #0284C7;
    --moon-navy: #1E3A8A;
    --mint-green: #10B981;
    --coral-pink: #F43F5E;
    --pastel-peach: #FFF1F2;
    --pastel-mint: #ECFDF5;
    --pastel-sky: #F0F9FF;
    --pastel-yellow: #FFFBEB;
    --pastel-purple: #FAF5FF;
}

body {
    font-family: 'Poppins', sans-serif;
    color: #334155;
    background-color: #F8FAFC;
    overflow-x: hidden;
}

.font-heading {
    font-family: 'Fredoka', cursive, sans-serif;
}

/* Organic Soft Shadows */
.shadow-play {
    box-shadow: 0 10px 30px -5px rgba(2, 132, 199, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
}

.shadow-card-hover:hover {
    box-shadow: 0 20px 35px -5px rgba(249, 115, 22, 0.15), 0 8px 10px -3px rgba(0, 0, 0, 0.05);
}

/* Floating Animations */
@keyframes gentleBounce {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-8px); }
}

@keyframes gentleFloat {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-12px) rotate(2deg); }
}

@keyframes pulseSlow {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.85; transform: scale(1.04); }
}

.animate-gentle-bounce {
    animation: gentleBounce 3s ease-in-out infinite;
}

.animate-float {
    animation: gentleFloat 4s ease-in-out infinite;
}

.animate-pulse-slow {
    animation: pulseSlow 2s ease-in-out infinite;
}

/* Wavy Section SVG Dividers */
.wave-divider {
    position: relative;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.wave-divider svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 60px;
}

@media (min-width: 768px) {
    .wave-divider svg {
        height: 90px;
    }
}

/* Badge Styling */
.badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 0.85rem;
    border-radius: 9999px;
    font-size: 0.825rem;
    font-weight: 600;
}

/* Print Receipt Styles */
@media print {
    .no-print, header, footer, #mobile-bar, .sticky {
        display: none !important;
    }
    body {
        background: white !important;
        color: black !important;
    }
    .print-only {
        display: block !important;
    }
}
