/* ── Shared event-state classes (calendar & timeline) ── */
.ev-past{opacity:0.35}
.ev-ongoing{opacity:0.55}
.ev-stage-hidden{opacity:0.35;border-left-color:color-mix(in srgb,var(--card-color) 50%,#4466aa)!important;border-top:1px dashed rgba(255,255,255,0.15);border-right:1px dashed rgba(255,255,255,0.15);border-bottom:1px dashed rgba(255,255,255,0.15);overflow:visible!important}
.ev-stage-hidden b,.ev-stage-hidden .ev-spk{position:relative;z-index:2}
.ev-stage-hidden::after{content:"";position:absolute;left:-3px;top:-1px;width:calc(100% + 4px);height:calc(100% + 2px);background:repeating-linear-gradient(135deg,transparent,transparent 4px,rgba(0,0,0,0.25) 4px,rgba(0,0,0,0.25) 8px);pointer-events:none;z-index:1;border-radius:4px}

/* ── Star-dimmed (non-starred in "starred only" mode, calendar/timeline) ── */
.star-dimmed{opacity:0.15!important;filter:grayscale(0.5)}
.star-dimmed:hover{opacity:0.4!important;filter:none}

/* ── Hidden sessions ── */
.card.hidden-session,.tl-card.hidden-session,.cal-ev.hidden-session,.tl-ev.hidden-session{opacity:0.3;border-style:dashed}
.card.hidden-session .card-title,.tl-card.hidden-session .card-title{text-decoration:line-through}

/* ── Highlighted sessions ── */
.card.highlighted-session{border-left-width:4px;box-shadow:0 0 8px rgba(255,215,0,0.3);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}
.card.highlighted-session:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface));box-shadow:0 4px 12px rgba(255,215,0,0.25)}
.cal-ev.highlighted-session,.tl-ev.highlighted-session{outline:2px solid var(--accent);outline-offset:-1px;z-index:var(--z-highlight);filter:brightness(1.3)}
