/* ===== Sakura Petals ===== */
.sakura-container {
    position: fixed;
    top: 0; left: 0;
    width: 100%; height: 100%;
    pointer-events: none;
    z-index: 100;
    overflow: hidden;
}

.sakura {
    position: absolute;
    top: -30px;
    width: 14px;
    height: 14px;
    background: radial-gradient(ellipse at 30% 30%, #ffb7d5, #ff69b4);
    border-radius: 50% 0 50% 50%;
    opacity: 0.7;
    filter: blur(0.3px);
    animation: sakuraFall linear infinite;
}

.sakura::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at 70% 70%, rgba(255,255,255,0.4), transparent);
    border-radius: inherit;
}

.s1  { left:  5%; animation-duration: 10s; animation-delay: 0s;   width: 12px; height: 12px; opacity: 0.6; }
.s2  { left: 15%; animation-duration: 13s; animation-delay: 1s;   width: 16px; height: 16px; opacity: 0.8; }
.s3  { left: 25%; animation-duration: 9s;  animation-delay: 3s;   width: 10px; height: 10px; opacity: 0.5; }
.s4  { left: 35%; animation-duration: 12s; animation-delay: 0.5s; width: 14px; height: 14px; opacity: 0.7; }
.s5  { left: 45%; animation-duration: 11s; animation-delay: 2s;   width: 11px; height: 11px; opacity: 0.6; }
.s6  { left: 55%; animation-duration: 14s; animation-delay: 4s;   width: 15px; height: 15px; opacity: 0.75; }
.s7  { left: 65%; animation-duration: 10s; animation-delay: 1.5s; width: 13px; height: 13px; opacity: 0.55; }
.s8  { left: 75%; animation-duration: 12s; animation-delay: 3.5s; width: 12px; height: 12px; opacity: 0.65; }
.s9  { left: 85%; animation-duration: 11s; animation-delay: 0.8s; width: 16px; height: 16px; opacity: 0.8; }
.s10 { left: 92%; animation-duration: 13s; animation-delay: 2.5s; width: 10px; height: 10px; opacity: 0.5; }
.s11 { left: 10%; animation-duration: 15s; animation-delay: 5s;   width: 14px; height: 14px; opacity: 0.6; }
.s12 { left: 40%; animation-duration: 9s;  animation-delay: 6s;   width: 11px; height: 11px; opacity: 0.7; }
.s13 { left: 60%; animation-duration: 14s; animation-delay: 4.5s; width: 15px; height: 15px; opacity: 0.55; }
.s14 { left: 30%; animation-duration: 12s; animation-delay: 7s;   width: 13px; height: 13px; opacity: 0.65; }
.s15 { left: 80%; animation-duration: 10s; animation-delay: 5.5s; width: 12px; height: 12px; opacity: 0.5; }

@keyframes sakuraFall {
    0%   { transform: translateY(-20px) rotate(0deg) translateX(0); opacity: 0; }
    10%  { opacity: 0.8; }
    90%  { opacity: 0.6; }
    100% { transform: translateY(105vh) rotate(720deg) translateX(80px); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .sakura {
        animation: none;
        opacity: 0.5;
        transform: none;
    }
}
