#gms-diwali-float {
    position: fixed;
    inset: 0;
    z-index: 9990;
    pointer-events: none;
}

#gms-diwali-float[hidden],
#gms-diwali-float .gms-diwali-decoration[hidden] {
    display: none !important;
}

#gms-diwali-float .gms-diwali-decoration,
#gms-diwali-float canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

#gms-diwali-float .gms-diwali-lantern {
    position: absolute;
    top: var(--wp-admin--admin-bar--height, 0px);
    width: clamp(44px, 6.5vw, 87px);
    height: auto;
    margin: 0;
    border: 0;
    pointer-events: none;
    filter: drop-shadow(0 2px 3px rgb(85 33 25 / 24%));
    transform-origin: 50% 0;
    animation: gms-diwali-swing 4.4s ease-in-out infinite alternate;
}

#gms-diwali-float .gms-diwali-lantern-left {
    left: max(10px, env(safe-area-inset-left));
}

#gms-diwali-float .gms-diwali-lantern-right {
    right: max(10px, env(safe-area-inset-right));
    animation-delay: -2.2s;
}

#gms-diwali-float .gms-diwali-toggle {
    position: absolute;
    bottom: max(14px, env(safe-area-inset-bottom));
    left: max(12px, env(safe-area-inset-left));
    padding: 6px 11px;
    min-height: 34px;
    margin: 0;
    border: 1px solid #b25425;
    border-radius: 20px;
    background: #fff8ec;
    color: #65290d;
    font: 600 12px/1.2 system-ui, sans-serif;
    text-transform: none;
    cursor: pointer;
    pointer-events: auto;
}

#gms-diwali-float .gms-diwali-toggle:focus-visible {
    outline: 2px solid #65290d;
    outline-offset: 2px;
}

@keyframes gms-diwali-swing {
    from { transform: rotate(-9deg); }
    to { transform: rotate(9deg); }
}

@media (max-width: 600px) {
    #gms-diwali-float .gms-diwali-lantern { width: 40px; }
}

@media (prefers-reduced-motion: reduce), print {
    #gms-diwali-float { display: none !important; }
}
