/* ============================================
   HOLIDAYS
   ============================================ */

/* ─── HOLIDAYS & TOOLTIPS ───────────────────────── */
.day-cell.holiday-public { background: rgba(239,68,68,0.12); }
.day-cell.holiday-public .day-num { color: var(--red); font-weight: 700; }
.day-cell.holiday-other { background: rgba(239,68,68,0.06); }
.day-cell.holiday-other .day-num { color: #f87171; }
.day-cell.blocked-day { background: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(100,100,120,0.08) 5px, rgba(100,100,120,0.08) 10px); }
.day-cell.blocked-day::after {
    content: '🚫'; position: absolute; bottom: 4px; right: 6px; font-size: 12px; opacity: 0.5;
}
.holiday-dot {
    display: inline-block; width: 6px; height: 6px; border-radius: 50%; margin-right: 2px;
}
.holiday-dot-public { background: var(--red); }
.holiday-dot-catholic { background: #f472b6; }
.holiday-dot-orthodox { background: #fbbf24; }
.holiday-dot-muslim { background: #34d399; }

/* Tooltip */
.cal-tooltip {
    display: none; position: absolute; z-index: 500;
    background: var(--bg-1); border: 1px solid var(--border-light);
    border-radius: var(--radius); padding: 12px 16px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.5); max-width: 280px;
    font-size: 13px; pointer-events: none;
    animation: fadeUp 0.15s ease;
}
.cal-tooltip-title { font-weight: 700; font-size: 14px; margin-bottom: 6px; }
.cal-tooltip-row { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; }
.cal-tooltip-type {
    font-size: 10px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.5px; padding: 1px 6px; border-radius: 3px;
}
.tt-public { background: var(--red-dim); color: var(--red); }
.tt-catholic { background: rgba(244,114,182,0.15); color: #f472b6; }
.tt-orthodox { background: var(--yellow-dim); color: #fbbf24; }
.tt-muslim { background: var(--green-dim); color: #34d399; }
.tt-blocked { background: var(--bg-3); color: var(--text-2); }
.cal-tooltip-desc { font-size: 12px; color: var(--text-2); margin-top: 2px; }

/* Block day modal */
.block-bar {
    display: flex; gap: 8px; margin-bottom: 20px; padding: 12px 16px;
    background: var(--bg-1); border: 1px solid var(--border); border-radius: var(--radius);
    align-items: center; flex-wrap: wrap;
}
.block-bar label { font-size: 12px; font-weight: 600; color: var(--text-2); text-transform: uppercase; letter-spacing: 0.5px; }
.block-bar input, .block-bar select { width: auto; min-width: 120px; padding: 7px 10px; font-size: 13px; }

