/* ---------- Admin · Calendario de eventos (vista tipo Google Calendar) ---------- */
.cal-nav { display: flex; gap: 0.5rem; align-items: center; margin-bottom: 1rem; flex-wrap: wrap; }

.cal-grid-wrap { overflow-x: auto; }
.cal-grid {
    display: grid;
    grid-template-columns: repeat(7, minmax(120px, 1fr));
    gap: 1px;
    background: var(--color-border);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}
.cal-weekday {
    background: var(--color-bg-input);
    color: var(--color-text-muted);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: center;
    padding: 0.5rem 0;
}
.cal-day {
    background: var(--color-bg-elev);
    min-height: 110px;
    min-width: 0;
    padding: 0.35rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}
.cal-day-outside { background: var(--color-bg); opacity: 0.55; }
.cal-day-today { box-shadow: inset 0 0 0 2px var(--color-gold); }
.cal-day-head { display: flex; justify-content: space-between; align-items: center; }
.cal-day-num { font-size: 0.8rem; font-weight: 600; color: var(--color-text); }
.cal-day-today .cal-day-num { color: var(--color-gold); }
.cal-day-add {
    display: none;
    width: 18px; height: 18px; line-height: 16px; text-align: center;
    border-radius: 50%; border: 1px solid var(--color-border-strong);
    color: var(--color-text-muted); font-size: 0.85rem; text-decoration: none;
}
.cal-day:hover .cal-day-add { display: inline-block; }

.cal-day-events { display: flex; flex-direction: column; gap: 2px; }
.cal-chip {
    display: block;
    font-size: 0.68rem;
    line-height: 1.25;
    padding: 1px 5px;
    border-radius: 4px;
    color: #0b1220;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: pointer;
}
.cal-chip-time { font-weight: 700; margin-right: 3px; }
.cal-chip-taller        { background: #f9a8d4; }
.cal-chip-entrenamiento { background: #7dd3fc; }
.cal-chip-oportunidad   { background: #fcd34d; }
.cal-chip-draft { opacity: 0.55; border: 1px dashed #0b1220; }
.cal-chip-more {
    background: transparent; color: var(--color-text-muted);
    border: 1px dashed var(--color-border-strong); text-align: center;
}
.cal-more-toggle:checked ~ .cal-day-extra { display: flex; }
.cal-day-extra { display: none; flex-direction: column; gap: 2px; }

.cal-legend { display: flex; flex-wrap: wrap; gap: 0.9rem; margin-top: 1rem; font-size: 0.78rem; color: var(--color-text-muted); }
.cal-legend-item { display: inline-flex; align-items: center; gap: 0.35rem; }
.cal-legend-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
