/* Event illustrations from the active template's event artwork set. */
.ev-card .ev-art{height:185px;background-image:url('../img/events/cathedral.webp');background-position:center 30%;background-size:cover}
.ev-art-blood .ev-art{background-image:url('../img/events/event-blood.webp')}
.ev-art-devil .ev-art{background-image:url('../img/events/event-devil.webp')}
.ev-art-chaos .ev-art{background-image:url('../img/events/event-chaos.webp')}
.ev-art-battle .ev-art{background-image:url('../img/events/event-battle.webp')}
.ev-art-king .ev-art{background-image:url('../img/events/event-king.webp')}
.ev-art-skeleton .ev-art{background-image:url('../img/events/event-skeleton.webp')}
.ev-art-dragon .ev-art{background-image:url('../img/events/event-dragon.webp')}
.ev-art-golden .ev-art{background-image:url('../img/events/event-golden.webp')}
.ev-art-wizard .ev-art{background-image:url('../img/events/event-wizard.webp')}
.ev-art-rabbits .ev-art{background-image:url('../img/events/event-rabbits.webp');background-position:65% 35%}
.ev-art-kundun .ev-art{background-image:url('../img/events/event-kundun.webp')}
.ev-card .ev-art:after{inset:0;height:auto;background:linear-gradient(180deg,var(--theme-color-03091133,rgba(3,9,17,.2)),transparent 35%,var(--theme-color-030911a6,rgba(3,9,17,.65)));pointer-events:none}
.ev-card .ev-art>i{position:absolute;right:14px;bottom:14px;display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--gb-line);border-radius:12px;background:var(--gb-panel);font-size:18px;filter:none}
.ev-card .ev-art>span{font-size:9px;backdrop-filter:blur(6px)}
@media(max-width:580px){.ev-card .ev-art{height:200px}}

/* Runtime state is distinct from enabling an event in the admin calendar. */
.ev-card.ev-active{border-color:#69dbb7;box-shadow:0 10px 28px var(--theme-color-0000003b,rgba(0,0,0,.23)),0 0 18px rgba(105,219,183,.14)}
.ev-card .ev-art>.ev-live-badge{left:auto;right:10px;display:inline-flex;align-items:center;gap:6px;border-color:rgba(105,219,183,.5);background:var(--gb-bg);color:#8ae6c6;font-size:9px}
.ev-live-badge>i{font-size:6px}.ev-live-badge[hidden]{display:none!important}
.ev-active .ev-body time{border-color:rgba(105,219,183,.35)}.ev-active .ev-body time span,.ev-active .ev-body time b{color:#8ae6c6}
.ev-legend{flex-wrap:wrap;gap:8px}.ev-legend a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--gb-line);border-radius:999px;background:var(--gb-panel);color:var(--gb-muted);font-size:11px;font-weight:700;text-decoration:none}
.ev-legend a:hover,.ev-legend a.is-selected{border-color:var(--gb-cyan);background:var(--gb-panel-2);color:var(--gb-text);text-decoration:none}.ev-legend a>i{color:var(--gb-cyan)}.ev-legend a[data-event-filter="invasion"]>i{color:#ffc45f}.ev-legend a[data-event-filter="boss"]>i{color:#ff8791}
.ev-legend a:focus-visible{outline:2px solid var(--gb-cyan);outline-offset:3px}.ev-card[hidden],.ev-empty[hidden]{display:none!important}.ev-empty{margin:0;padding:20px;border:1px solid var(--gb-line);border-radius:7px;background:var(--gb-panel);color:var(--gb-muted);font-size:13px}

/* The calendar shares the information page, so the clock and filters share one row. */
.ev-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.ev-toolbar .ev-legend{flex:1;justify-content:flex-end}
.ev-toolbar .ev-clock{min-width:170px}
@media(max-width:720px){.ev-toolbar{flex-direction:column;align-items:stretch}.ev-toolbar .ev-legend{justify-content:center}.ev-toolbar .ev-clock{width:100%}}
