.event.svelte-da0xff{gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--border);grid-template-columns:5.5rem minmax(0,1fr);display:grid}.event[data-status=peruttu].svelte-da0xff .event-title:where(.svelte-da0xff) a:where(.svelte-da0xff){color:var(--text-muted);text-decoration:line-through}.event-date.svelte-da0xff{align-content:start;justify-items:center;gap:var(--space-1);border-inline-end:2px solid oklch(70% .13 var(--event-hue));font-family:var(--font-heading);font-variant-numeric:tabular-nums;text-align:center;padding-inline-end:var(--space-2);display:grid}.event-date.svelte-da0xff strong:where(.svelte-da0xff){font-size:var(--text-2xl);line-height:1}.event-date.svelte-da0xff>span:where(.svelte-da0xff):not(.tag),.event-date.svelte-da0xff small:where(.svelte-da0xff){color:var(--text-muted);font-family:var(--font-body);font-size:var(--text-xs)}.event-date.svelte-da0xff>span:where(.svelte-da0xff):not(.tag){text-transform:uppercase;font-weight:700}.event-date.svelte-da0xff small:where(.svelte-da0xff){text-align:center}.event-content.svelte-da0xff{min-width:0}.event-title.svelte-da0xff{font-size:var(--text-lg);line-height:var(--leading-tight);margin:0}.event-title.svelte-da0xff a:where(.svelte-da0xff){color:var(--text)}.event-title.svelte-da0xff a:where(.svelte-da0xff):hover{color:var(--primary)}.tag.svelte-da0xff{border:1px solid color-mix(in oklch, oklch(70% .13 var(--event-hue)) 55%, var(--border));width:fit-content;min-width:0;max-width:calc(7ch + 1rem);min-height:1.55rem;color:oklch(78% .13 var(--event-hue));font-size:var(--text-xs);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.1rem .5rem;line-height:1.2;display:inline-flex;overflow:hidden}.tag-label.svelte-da0xff{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tag.cancelled.svelte-da0xff{border-color:var(--danger);color:var(--danger)}.icon-action.svelte-da0xff{width:2.6rem;height:2.6rem;color:var(--text-subtle);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:0 0 2.6rem;place-items:center;text-decoration:none;display:grid}.favourite.svelte-da0xff:hover,.favourite[aria-pressed=true].svelte-da0xff{color:var(--warning)}.calendar-download.svelte-da0xff{color:var(--text-subtle)}.calendar-download.svelte-da0xff:hover{color:var(--primary)}.favourite[aria-pressed=true].svelte-da0xff{background:color-mix(in oklch, var(--warning) 12%, var(--surface))}.where.svelte-da0xff{margin:var(--space-1) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.registration.svelte-da0xff{justify-content:space-between;gap:var(--space-1) var(--space-3);max-width:38rem;margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.registration.svelte-da0xff strong:where(.svelte-da0xff){color:var(--success)}.registration.urgent.svelte-da0xff strong:where(.svelte-da0xff){color:var(--warning)}.registration.closed.svelte-da0xff{color:var(--text-subtle)}.details-toggle.svelte-da0xff{justify-content:center;align-items:center;gap:var(--space-2);min-height:2.75rem;margin:var(--space-2) auto;padding:0 var(--space-2);color:var(--text-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;display:flex}.details-toggle.svelte-da0xff:hover{color:var(--primary)}.details-toggle.svelte-da0xff svg:where(.svelte-da0xff){fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;transition:rotate .16s}.details-toggle.svelte-da0xff svg.expanded:where(.svelte-da0xff){rotate:180deg}.details-body[hidden].svelte-da0xff{display:none}.details-body.svelte-da0xff{gap:var(--space-3);padding:0 0 var(--space-2);display:grid}.detail-grid.svelte-da0xff{gap:var(--space-3) var(--space-5);padding-top:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));margin:0;display:grid}.detail-grid.svelte-da0xff div:where(.svelte-da0xff){align-content:start;gap:.1rem;display:grid}.detail-grid.svelte-da0xff dt:where(.svelte-da0xff){color:var(--text-subtle);font-size:var(--text-xs)}.detail-grid.svelte-da0xff dd:where(.svelte-da0xff){font-size:var(--text-sm);margin:0}.class-list.svelte-da0xff table:where(.svelte-da0xff){border-collapse:collapse;width:100%;font-size:var(--text-sm)}.class-list.svelte-da0xff caption:where(.svelte-da0xff){padding-bottom:var(--space-2);color:var(--text);font-family:var(--font-heading);font-size:var(--text-lg);text-align:left;font-weight:700}.class-list.svelte-da0xff th:where(.svelte-da0xff),.class-list.svelte-da0xff td:where(.svelte-da0xff){padding:var(--space-2) var(--space-3) var(--space-2) 0;text-align:left;vertical-align:top}.class-list.svelte-da0xff thead:where(.svelte-da0xff) th:where(.svelte-da0xff){border-bottom:1px solid var(--border);color:var(--text-subtle);font-size:var(--text-xs);font-weight:600}.class-list.svelte-da0xff tbody:where(.svelte-da0xff) th:where(.svelte-da0xff){color:var(--text-muted);font-weight:600}.class-list.svelte-da0xff tbody:where(.svelte-da0xff) tr:where(.svelte-da0xff)+tr:where(.svelte-da0xff){border-top:1px solid var(--border)}.actions.svelte-da0xff{gap:var(--space-2);flex-wrap:wrap;display:flex}.action.svelte-da0xff{border:1px solid var(--border);min-height:2.75rem;color:var(--text);font-size:var(--text-sm);border-radius:8px;align-items:center;padding:.45rem .75rem;display:inline-flex}.action.svelte-da0xff:hover{border-color:var(--primary);color:var(--primary)}.notes-frame.svelte-da0xff{background:var(--surface);border-radius:var(--radius);position:relative}.notes-frame.svelte-da0xff:after{background:linear-gradient(transparent, var(--surface));content:"";pointer-events:none;height:1.5rem;position:absolute;bottom:0;left:0;right:0}.notes-frame.scrolled.svelte-da0xff:before{z-index:1;background:linear-gradient(var(--surface), transparent);content:"";pointer-events:none;height:1.5rem;position:absolute;top:0;left:0;right:0}.notes.svelte-da0xff{max-height:18rem;padding:var(--space-3) var(--space-3) 1.5rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-sm);overflow:auto}.notes.svelte-da0xff a{color:var(--primary)}:focus-visible{outline:2px solid var(--primary);outline-offset:3px}@media (width>=48rem){.event.svelte-da0xff{gap:var(--space-4);grid-template-columns:5.5rem minmax(0,1fr)}}.filters.svelte-1sdzj74{gap:var(--space-3);padding:var(--space-3) 0;border-block:1px solid var(--border);display:grid}.search.svelte-1sdzj74{align-items:center;gap:var(--space-2);min-height:2.9rem;padding:0 var(--space-3);border:1px solid var(--border);background:var(--surface);border-radius:8px;display:flex}.search.svelte-1sdzj74:focus-within{border-color:var(--primary)}.search.svelte-1sdzj74 svg:where(.svelte-1sdzj74){fill:none;stroke:currentColor;stroke-width:1.7px;width:1.2rem;color:var(--text-subtle)}.search.svelte-1sdzj74 input:where(.svelte-1sdzj74){width:100%;color:var(--text);font:inherit;background:0 0;border:0;outline:0}.search.svelte-1sdzj74 input:where(.svelte-1sdzj74)::placeholder{color:var(--text-muted);opacity:1}.filter-row.svelte-1sdzj74{gap:var(--space-2);flex-wrap:wrap;display:flex}.control.svelte-1sdzj74,.select-wrap.svelte-1sdzj74 select:where(.svelte-1sdzj74){border:1px solid var(--border);background:var(--surface);min-height:2.75rem;color:var(--text);font:inherit;font-size:var(--text-sm);border-radius:8px;padding:.45rem .7rem}.control.svelte-1sdzj74{cursor:pointer}.control.svelte-1sdzj74:hover,.select-wrap.svelte-1sdzj74 select:where(.svelte-1sdzj74):hover{background:var(--surface-hover);border-color:var(--border-strong)}.control[aria-pressed=true].svelte-1sdzj74{border-color:var(--primary);color:var(--primary);background:color-mix(in oklch, var(--primary) 12%, var(--surface))}.types.svelte-1sdzj74{gap:var(--space-2);flex-wrap:wrap;display:flex}.type-chip.svelte-1sdzj74{--hue:292;border:1px solid var(--border);min-height:2.25rem;color:var(--text-muted);font:inherit;font-size:var(--text-xs);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .7rem;display:inline-flex}.type-chip.svelte-1sdzj74 span:where(.svelte-1sdzj74){color:var(--text-subtle);font-variant-numeric:tabular-nums}.type-chip[aria-pressed=true].svelte-1sdzj74{border-color:oklch(70% .13 var(--hue));color:oklch(78% .13 var(--hue));background:color-mix(in oklch, oklch(70% .13 var(--hue)) 12%, var(--surface))}.type-chip[aria-pressed=true].svelte-1sdzj74 span:where(.svelte-1sdzj74){color:inherit}.sr-only.svelte-1sdzj74{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=48rem){.filters.svelte-1sdzj74{align-items:center;gap:var(--space-3) var(--space-4);grid-template-columns:minmax(16rem,1fr) auto}.search.svelte-1sdzj74,.filter-row.svelte-1sdzj74,.types.svelte-1sdzj74{grid-column:1/-1}}.calendar-header.svelte-q7jw6r{margin:var(--space-4) 0 var(--space-6)}.calendar-header.svelte-q7jw6r p:where(.svelte-q7jw6r){margin:var(--space-3) 0;color:var(--text-muted)}.heading-row.svelte-q7jw6r{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.heading-row.svelte-q7jw6r h1:where(.svelte-q7jw6r){font-size:var(--text-3xl);margin:0}.season.svelte-q7jw6r{color:var(--text-muted);font-size:var(--text-sm);font-weight:600}.source-line.svelte-q7jw6r{gap:var(--space-1) var(--space-4);color:var(--text-subtle);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.source-line.svelte-q7jw6r a:where(.svelte-q7jw6r){color:var(--primary)}.result-count.svelte-q7jw6r{margin:var(--space-4) 0 0;color:var(--text-subtle);font-size:var(--text-xs)}.month-group.svelte-q7jw6r{margin-top:var(--space-6)}.month-group.svelte-q7jw6r h2:where(.svelte-q7jw6r){z-index:10;align-items:center;gap:var(--space-4);padding-block:var(--space-2);color:var(--text-muted);font-size:var(--text-md);text-transform:uppercase;margin:0;display:flex;position:sticky;top:4.5rem}.month-group.svelte-q7jw6r h2:where(.svelte-q7jw6r):before,.month-group.svelte-q7jw6r h2:where(.svelte-q7jw6r):after{background:var(--border);content:"";flex:1;height:1px}.empty.svelte-q7jw6r{justify-items:center;gap:var(--space-2);margin-top:var(--space-6);padding:var(--space-8) var(--space-4);border:1px dashed var(--border);color:var(--text-muted);text-align:center;border-radius:8px;display:grid}.empty.svelte-q7jw6r strong:where(.svelte-q7jw6r){color:var(--text);font-family:var(--font-heading);font-size:var(--text-xl)}@media (width>=48rem){.calendar-header.svelte-q7jw6r{margin-bottom:var(--space-8)}}@media (width<=640px){.month-group.svelte-q7jw6r h2:where(.svelte-q7jw6r){top:3.5rem}}
