/* Общие стили календаря (страница /calendar/ и embed на главной) */

@keyframes pulse-featured {
    0% { box-shadow: 0 0 0 0 rgba(255, 215, 0, 0.7); transform: scale(1); }
    70% { box-shadow: 0 0 0 10px rgba(255, 215, 0, 0); transform: scale(1.02); }
    100% { box-shadow: 0 0 0 0 rgba(255, 215, 0, 0); transform: scale(1); }
}
@keyframes glow-featured {
    0% { box-shadow: 0 0 5px gold, 0 0 10px gold; }
    50% { box-shadow: 0 0 20px gold, 0 0 30px orange; }
    100% { box-shadow: 0 0 5px gold, 0 0 10px gold; }
}
@keyframes sparkle-featured {
    0% { background-position: 0% 0%; }
    100% { background-position: 100% 100%; }
}
@keyframes rainbow-featured {
    0% { border-color: red; }
    25% { border-color: orange; }
    50% { border-color: yellow; }
    75% { border-color: green; }
    100% { border-color: blue; }
}

.event-pulse { animation: pulse-featured 1.5s ease-in-out infinite; border: 2px solid gold !important; }
.event-glow { animation: glow-featured 1.5s ease-in-out infinite; border: 1px solid gold !important; }
.event-sparkle { position: relative; overflow: hidden; border: 2px solid gold !important; }
.event-sparkle::before {
    content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 215, 0, 0.3) 50%, transparent 70%);
    animation: sparkle-featured 2s linear infinite; pointer-events: none;
}
.event-rainbow { animation: rainbow-featured 3s linear infinite; border-width: 2px !important; border-style: solid !important; }

.featured-badge {
    position: absolute; top: -8px; left: -8px;
    background: linear-gradient(135deg, gold, orange); color: black;
    font-size: 10px; font-weight: bold; padding: 2px 6px;
    border-radius: 20px; z-index: 10; white-space: nowrap;
}

.event-form-field { margin-bottom: 1rem; }
.event-form-field > label {
    display: block; font-size: 0.75rem; font-weight: 600;
    letter-spacing: 0.02em; margin-bottom: 0.375rem; color: var(--text-muted);
}
.event-form-grid {
    display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-bottom: 1rem;
}
@media (max-width: 520px) {
    .event-form-grid { grid-template-columns: 1fr; }
}

/* Стили для datetime-local */
input[type="datetime-local"]::-webkit-calendar-picker-indicator {
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    pointer-events: none !important;
}
input[type="datetime-local"]::-webkit-inner-spin-button { display: none !important; }
input[type="datetime-local"] { -moz-appearance: textfield !important; }
