/* ============================================
   樱花瓣飘落特效  仅在 sakura 主题下生效
   ============================================ */

.sakura-petals-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    pointer-events: none;
    z-index: 9998;
    overflow: hidden;
    display: none;
}

[data-theme="sakura"] .sakura-petals-container {
    display: block;
}

/* 花瓣外层：负责下落 + 漂移 */
.sakura-petal {
    position: absolute;
    top: -40px;
    font-size: 20px;
    line-height: 1;
    user-select: none;
    animation: sakura-fall linear infinite;
    will-change: transform, opacity;
}

/* 花瓣内层：负责自旋 */
.sakura-petal-inner {
    display: inline-block;
    animation: sakura-spin ease-in-out infinite alternate;
    will-change: transform;
    transform-origin: center;
}

/* 下落 + 漂移 */
@keyframes sakura-fall {
    0% {
        transform: translateY(-40px) translateX(0);
        opacity: 0;
    }
    8% { opacity: 1; }
    92% { opacity: 0.8; }
    100% {
        transform: translateY(110vh) translateX(var(--drift, 80px));
        opacity: 0;
    }
}

/* 左右摇摆翻转 */
@keyframes sakura-spin {
    0%   { transform: rotate(-25deg) scaleX(1); }
    50%  { transform: rotate(15deg) scaleX(0.4); }
    100% { transform: rotate(25deg) scaleX(1); }
}

/* 移动端减少数量 */
@media (max-width: 768px) {
    .sakura-petal:nth-child(n+14) { display: none; }
}
