.wrap.svelte-13luymz,.calendar-page.svelte-13luymz{min-height:100%;background:#f8fafc}.calendar-shell.svelte-13luymz{width:min(100% - 2rem,84rem);margin:0 auto;padding:1.5rem 0 4rem}.calendar-head.svelte-13luymz{display:grid;gap:1.25rem;align-items:end;padding-bottom:1.25rem;border-bottom:1px solid #e2e8f0}.calendar-head__eyebrow.svelte-13luymz{margin:0 0 .65rem;font-size:.72rem;font-weight:800;letter-spacing:.28em;text-transform:uppercase;color:#0284c7}.calendar-head.svelte-13luymz h1:where(.svelte-13luymz){margin:0;max-width:14ch;font-size:clamp(2.25rem,4.8vw,4rem);font-weight:900;line-height:.98;letter-spacing:-.05em;color:#0f172a}.calendar-head.svelte-13luymz p:where(.svelte-13luymz):last-child{margin:1rem 0 0;max-width:42rem;font-size:1rem;line-height:1.75;color:#475569}.calendar-head__controls.svelte-13luymz{display:flex;flex-wrap:wrap;gap:.75rem}.calendar-view-toggle.svelte-13luymz,.calendar-nav.svelte-13luymz{display:inline-flex;gap:.3rem;border:1px solid #e2e8f0;border-radius:1rem;background:#ffffffe0;padding:.3rem}.calendar-nav.svelte-13luymz{display:grid;grid-template-columns:auto minmax(12rem,auto) auto;align-items:center}.calendar-view-toggle__button.svelte-13luymz,.calendar-nav.svelte-13luymz button:where(.svelte-13luymz),.calendar-today.svelte-13luymz{border:0;background:transparent;padding:.65rem .85rem;border-radius:.8rem;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#475569;cursor:pointer;font-family:inherit;line-height:1}.calendar-view-toggle__button--active.svelte-13luymz{background:#0f172a;color:#fff}.calendar-nav.svelte-13luymz button:where(.svelte-13luymz):hover,.calendar-today.svelte-13luymz:hover{background:#f1f5f9}.calendar-nav__label.svelte-13luymz{display:flex;align-items:center;justify-content:center;min-width:12rem;padding:0 .75rem;height:100%;text-align:center;font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#0f172a;line-height:1}.calendar-today.svelte-13luymz{border:1px solid #e2e8f0;background:#ffffffe0}.calendar-legend.svelte-13luymz{display:flex;flex-wrap:wrap;gap:1rem;margin:1rem 0;font-size:.84rem;font-weight:700;color:#475569}.calendar-legend.svelte-13luymz span:where(.svelte-13luymz){display:inline-flex;align-items:center;gap:.4rem}.calendar-dot.svelte-13luymz{display:inline-block;width:.7rem;height:.7rem;border-radius:999px}.calendar-dot--training.svelte-13luymz{background:#0ea5e9}.calendar-dot--cafe.svelte-13luymz{background:#22c55e}.calendar-board.svelte-13luymz{overflow:hidden;border:1px solid #e2e8f0;border-radius:1.6rem;background:#ffffffdb;box-shadow:0 28px 70px -46px #0f172a40}.calendar-weekdays.svelte-13luymz,.calendar-grid.svelte-13luymz{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-weekdays.svelte-13luymz{border-bottom:1px solid #e2e8f0;background:#f8fafc}.calendar-weekdays.svelte-13luymz div:where(.svelte-13luymz){padding:.8rem;text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#475569}.calendar-cell.svelte-13luymz{display:flex;flex-direction:column;min-width:0;height:9.75rem;padding:.55rem;border-right:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9}.calendar-cell[data-last-col=true].svelte-13luymz{border-right:0}.calendar-cell--muted.svelte-13luymz{background:#fafafa}.calendar-day.svelte-13luymz{display:flex;align-items:center;min-height:1.9rem;margin-bottom:.35rem}.calendar-day.svelte-13luymz span:where(.svelte-13luymz){display:grid;place-items:center;width:1.95rem;height:1.95rem;border-radius:999px;font-size:.78rem;font-weight:700;color:#334155}.calendar-day__today.svelte-13luymz{background:#0369a1;color:#fff!important}.calendar-events.svelte-13luymz{display:grid;gap:.35rem;flex:1;overflow:auto;padding-right:.1rem}.calendar-event.svelte-13luymz{display:block;padding:.35rem .45rem;border-left:3px solid;border-radius:.55rem;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.calendar-event.svelte-13luymz:hover{transform:translate(2px) translateY(-1px);box-shadow:0 10px 20px -16px #0f172a47}.calendar-event--training.svelte-13luymz{border-left-color:#0ea5e9;background:#f0f9ff;color:#075985}.calendar-event--cafe.svelte-13luymz{border-left-color:#22c55e;background:#f0fdf4;color:#166534}.calendar-event__header.svelte-13luymz{display:flex;align-items:start;justify-content:space-between;gap:.35rem}.calendar-event__button.svelte-13luymz{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}.calendar-event__title.svelte-13luymz{font-size:.68rem;font-weight:800;line-height:1.3;word-break:break-word}.calendar-event__expand.svelte-13luymz{flex:none;font-size:.9rem;font-weight:700;line-height:1;opacity:.7}.calendar-event__time.svelte-13luymz{margin-top:.12rem;font-size:.62rem;line-height:1.25;opacity:.85}.calendar-week-timeline.svelte-13luymz{display:grid;grid-template-columns:4.5rem minmax(0,1fr)}.calendar-week-timeline__hours.svelte-13luymz{border-right:1px solid #e2e8f0;background:#f8fafc}.calendar-week-timeline__corner.svelte-13luymz{height:3.5rem;border-bottom:1px solid #f1f5f9}.calendar-week-timeline__hour.svelte-13luymz{height:2.25rem;padding:.35rem .65rem 0 0;border-bottom:1px solid #f1f5f9;text-align:right;font-size:.68rem;font-weight:700;color:#64748b}.calendar-week-timeline__days.svelte-13luymz{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week-timeline__day.svelte-13luymz{border-right:1px solid #f1f5f9}.calendar-week-timeline__day.svelte-13luymz:last-child{border-right:0}.calendar-week-timeline__dayhead.svelte-13luymz{display:flex;align-items:center;justify-content:space-between;gap:.75rem;height:3.5rem;padding:.75rem;border-bottom:1px solid #f1f5f9;background:#ffffffa6}.calendar-week-timeline__dayhead.svelte-13luymz p:where(.svelte-13luymz){margin:0;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#64748b}.calendar-week-timeline__dayhead.svelte-13luymz span:where(.svelte-13luymz){display:grid;place-items:center;width:2rem;height:2rem;border-radius:9999px;font-size:.8rem;font-weight:800;color:#0f172a}.calendar-week-timeline__lane.svelte-13luymz{position:relative;height:58.5rem}.calendar-week-timeline__slot.svelte-13luymz{height:2.25rem;border-bottom:1px solid #f1f5f9}.calendar-day-view.svelte-13luymz{padding:1rem}.calendar-day-timeline.svelte-13luymz{display:grid;grid-template-columns:4.5rem minmax(0,1fr);margin-top:.9rem;border-top:1px solid #f1f5f9}.calendar-day-timeline__hours.svelte-13luymz{border-right:1px solid #e2e8f0;background:#f8fafc}.calendar-day-timeline__lane.svelte-13luymz{position:relative;height:58.5rem}.calendar-day-view__header.svelte-13luymz{padding-bottom:.9rem;border-bottom:1px solid #f1f5f9}.calendar-day-view__header.svelte-13luymz p:where(.svelte-13luymz){margin:0;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#64748b}.calendar-day-view__header.svelte-13luymz h2:where(.svelte-13luymz){margin:.4rem 0 0;font-size:1.8rem;font-weight:800;letter-spacing:-.03em;color:#0f172a}.calendar-event--day.svelte-13luymz{padding:.65rem .75rem}.calendar-event--timeline.svelte-13luymz{position:absolute;left:.4rem;right:.4rem;z-index:2;min-height:2rem;pointer-events:auto}.calendar-event--untimed.svelte-13luymz{right:1rem}.calendar-empty-slot.svelte-13luymz{margin:0;padding:.75rem;border:1px dashed #cbd5e1;border-radius:.9rem;font-size:.8rem;color:#64748b;background:#f8fafcb3}.calendar-empty-slot--timeline.svelte-13luymz{position:absolute;left:.4rem;right:.4rem;top:.5rem}.calendar-modal-backdrop.svelte-13luymz{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:1rem;background:#0f172a52;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.calendar-modal.svelte-13luymz{width:min(100%,28rem);border:1px solid rgb(226 232 240 / .95);border-radius:1.4rem;background:#fffffffa;padding:1.1rem;box-shadow:0 32px 70px -36px #0f172a73;animation:svelte-13luymz-calendar-modal-in .18s ease}.calendar-modal--training.svelte-13luymz{border-top:4px solid #0ea5e9}.calendar-modal--cafe.svelte-13luymz{border-top:4px solid #22c55e}.calendar-modal__top.svelte-13luymz{display:flex;align-items:start;justify-content:space-between;gap:1rem}.calendar-modal__eyebrow.svelte-13luymz{margin:0 0 .35rem;font-size:.68rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#64748b}.calendar-modal.svelte-13luymz h2:where(.svelte-13luymz){margin:0;font-size:1.25rem;font-weight:800;line-height:1.2;letter-spacing:-.03em;color:#0f172a}.calendar-modal__close.svelte-13luymz{border:0;background:#f1f5f9;width:2rem;height:2rem;border-radius:9999px;font-size:1.1rem;line-height:1;color:#334155;cursor:pointer}.calendar-modal__meta.svelte-13luymz{display:grid;gap:.4rem;margin-top:1rem}.calendar-modal__meta.svelte-13luymz p:where(.svelte-13luymz),.calendar-modal__body.svelte-13luymz{margin:0;font-size:.9rem;line-height:1.65;color:#475569}.calendar-modal__body.svelte-13luymz{margin-top:.9rem;white-space:pre-line}.calendar-modal__link.svelte-13luymz{display:inline-flex;margin-top:1rem;align-items:center;justify-content:center;border-radius:.9rem;background:#0f172a;padding:.75rem .95rem;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:#fff}@keyframes svelte-13luymz-calendar-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:900px){.calendar-head.svelte-13luymz{grid-template-columns:minmax(0,1fr) auto}}@media(max-width:720px){.calendar-shell.svelte-13luymz{width:min(100% - 1rem,84rem);padding-top:1rem}.calendar-board.svelte-13luymz{overflow-x:auto}.calendar-weekdays.svelte-13luymz,.calendar-grid.svelte-13luymz,.calendar-week-timeline.svelte-13luymz{min-width:48rem}}
