.page[data-v-d72fada9]{padding-bottom:8px;padding-top:24px}.cal-hero[data-v-d72fada9]{align-items:center;display:grid;gap:28px;grid-template-columns:minmax(0,1.4fr) auto;margin-bottom:20px;padding:28px 32px}.cal-hero .si-section-title[data-v-d72fada9]{margin-bottom:4px}.cal-hero .si-section-desc[data-v-d72fada9]{margin-bottom:0}.cal-stats[data-v-d72fada9]{display:flex;gap:10px}.stat[data-v-d72fada9]{background:hsla(0,0%,100%,.4);border:1px solid var(--si-glass-border-soft);border-radius:16px;box-shadow:inset 0 1px #ffffffd9;min-width:84px;padding:14px 16px;text-align:center}.stat strong[data-v-d72fada9]{color:var(--si-ink);display:block;font-size:26px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.stat em[data-v-d72fada9]{color:var(--si-muted);display:block;font-size:12px;font-style:normal;font-weight:600;margin-top:4px}.stat.accent strong[data-v-d72fada9]{color:var(--si-accent)}.stat.navy strong[data-v-d72fada9]{color:var(--si-navy)}.cal-toolbar[data-v-d72fada9]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.filter-chip[data-v-d72fada9]{align-items:center;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:hsla(0,0%,100%,.4);border:1px solid var(--si-glass-border-soft);border-radius:999px;box-shadow:inset 0 1px #ffffffd9;color:var(--si-ink-2);cursor:pointer;display:inline-flex;font-size:13px;font-weight:650;gap:6px;min-height:36px;padding:0 14px;transition:background var(--si-transition),color var(--si-transition),border-color var(--si-transition)}.filter-chip span[data-v-d72fada9]{background:rgba(15,23,42,.05);border-radius:999px;color:var(--si-muted);font-size:11px;font-weight:700;padding:1px 7px}.filter-chip[data-v-d72fada9]:hover{background:hsla(0,0%,100%,.7);color:var(--si-accent)}.filter-chip.active[data-v-d72fada9]{background:linear-gradient(180deg,#3b82f6,var(--si-accent));border-color:transparent;box-shadow:0 8px 20px #2563eb47;color:#fff}.filter-chip.active span[data-v-d72fada9]{background:hsla(0,0%,100%,.22);color:#fff}.cal-empty[data-v-d72fada9],.cal-loading[data-v-d72fada9]{color:var(--si-muted);padding:40px 28px;text-align:center}.cal-empty strong[data-v-d72fada9],.cal-loading strong[data-v-d72fada9]{color:var(--si-ink);display:block;font-size:16px;margin-bottom:8px}.cal-empty p[data-v-d72fada9],.cal-loading p[data-v-d72fada9]{font-size:13px;margin:0 0 18px}.cal-months[data-v-d72fada9]{display:flex;flex-direction:column;gap:8px}.month-block[data-v-d72fada9]{display:grid;gap:14px;grid-template-columns:28px minmax(0,1fr)}.month-rail[data-v-d72fada9]{align-items:center;display:flex;flex-direction:column;padding-top:10px;position:relative}.month-dot[data-v-d72fada9]{background:#fff;border:2px solid var(--si-accent);border-radius:999px;box-shadow:0 0 0 4px #2563eb1f;height:12px;width:12px;z-index:1}.month-line[data-v-d72fada9]{background:linear-gradient(180deg,rgba(37,99,235,.35),rgba(37,99,235,.05));border-radius:2px;flex:1;margin-top:6px;width:2px}.month-block:last-child .month-line[data-v-d72fada9]{opacity:.35}.month-head[data-v-d72fada9]{gap:12px;justify-content:space-between;margin-bottom:12px}.month-head[data-v-d72fada9],.month-head h2[data-v-d72fada9]{align-items:baseline;display:flex}.month-head h2[data-v-d72fada9]{gap:8px;margin:0}.month-head h2 .y[data-v-d72fada9]{color:var(--si-muted);font-size:13px;font-weight:650}.month-head h2 .m[data-v-d72fada9]{color:var(--si-navy);font-size:22px;font-weight:800;letter-spacing:-.03em}.month-head em[data-v-d72fada9]{color:var(--si-faint);font-size:12px;font-style:normal;font-weight:600}.event-list[data-v-d72fada9]{display:grid;gap:10px;list-style:none;margin:0 0 28px;padding:0}.event-card[data-v-d72fada9]{align-items:center;backdrop-filter:var(--si-glass-blur-sm);-webkit-backdrop-filter:var(--si-glass-blur-sm);background:var(--si-glass-highlight),var(--si-glass);border:1px solid var(--si-glass-border-soft);border-radius:var(--si-radius-sm,14px);box-shadow:var(--si-glass-shadow);color:inherit;cursor:pointer;display:grid;gap:14px;grid-template-columns:64px minmax(0,1fr) auto;padding:14px 16px;text-decoration:none;transition:transform var(--si-transition),box-shadow var(--si-transition)}.event-card[data-v-d72fada9]:hover{box-shadow:var(--si-glass-glow);transform:translateY(-2px)}.event-card:hover .go[data-v-d72fada9],.event-card:hover .name[data-v-d72fada9]{color:var(--si-accent)}.event-card:hover .go[data-v-d72fada9]{transform:translate(2px)}.event-card[data-v-d72fada9]:focus-visible{outline:2px solid var(--si-accent);outline-offset:2px}.date-badge[data-v-d72fada9]{align-items:center;background:rgba(37,99,235,.1);border-radius:16px;color:var(--si-accent);display:flex;flex-direction:column;height:64px;justify-content:center;width:64px}.date-badge .d[data-v-d72fada9]{font-size:22px;font-weight:800;letter-spacing:-.04em;line-height:1}.date-badge .w[data-v-d72fada9]{font-size:11px;font-weight:650;margin-top:4px;opacity:.85}.date-badge.exam[data-v-d72fada9]{background:rgba(30,64,175,.12);color:var(--si-navy)}.event-top[data-v-d72fada9]{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.type-pill[data-v-d72fada9]{background:rgba(37,99,235,.1);border-radius:999px;color:var(--si-accent);font-size:11px;font-weight:700;padding:2px 8px}.type-pill.exam[data-v-d72fada9]{background:rgba(30,64,175,.1);color:var(--si-navy)}.live[data-v-d72fada9]{background:rgba(234,88,12,.1);border-radius:999px;color:#ea580c;font-size:11px;font-weight:700;padding:2px 8px}.countdown[data-v-d72fada9]{color:var(--si-muted);font-size:12px;font-weight:650}.name[data-v-d72fada9]{color:var(--si-ink);font-size:15px;font-weight:750;line-height:1.35;transition:color var(--si-transition)}.name[data-v-d72fada9],time[data-v-d72fada9]{display:block}time[data-v-d72fada9]{color:var(--si-muted);font-size:12px;margin-top:4px}.go[data-v-d72fada9]{color:#cbd5e1;font-size:22px;transition:transform var(--si-transition),color var(--si-transition)}@media (max-width:800px){.cal-hero[data-v-d72fada9]{grid-template-columns:1fr;padding:22px}.cal-stats[data-v-d72fada9]{width:100%}.cal-stats .stat[data-v-d72fada9]{flex:1}}@media (max-width:560px){.event-card[data-v-d72fada9]{grid-template-columns:56px minmax(0,1fr)}.event-card .go[data-v-d72fada9]{display:none}.date-badge[data-v-d72fada9]{height:56px;width:56px}.date-badge .d[data-v-d72fada9]{font-size:18px}}
