@nomideusz/svelte-calendar 0.6.8 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1,2717 @@
1
- .fs.svelte-mrwdy7{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums}.fs--auto.svelte-mrwdy7{overflow:visible}.fs-scroll.svelte-mrwdy7{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;touch-action:pan-x;cursor:default;scrollbar-width:thin;scrollbar-color:var(--dt-scrollbar, rgba(0, 0, 0, .08)) transparent}.fs--auto.svelte-mrwdy7 .fs-scroll:where(.svelte-mrwdy7){height:auto;overflow:visible}.fs-scroll.svelte-mrwdy7::-webkit-scrollbar{height:5px}.fs-scroll.svelte-mrwdy7::-webkit-scrollbar-thumb{background:var(--dt-scrollbar, rgba(0, 0, 0, .08));border-radius:4px}.fs-scroll.svelte-mrwdy7::-webkit-scrollbar-track{background:transparent}.fs-readonly.svelte-mrwdy7{cursor:grab}.fs-grabbing.svelte-mrwdy7{cursor:grabbing}.fs-track.svelte-mrwdy7{position:relative;height:100%}.fs-day.svelte-mrwdy7{position:absolute;top:0;height:100%;border-left:1px solid var(--dt-border-day, rgba(148, 163, 184, .14));box-sizing:border-box}.fs-day.svelte-mrwdy7:first-of-type{border-left:none}.fs-today.svelte-mrwdy7{background:var(--dt-today-bg, rgba(239, 68, 68, .025))}.fs-past.svelte-mrwdy7{opacity:.7}.fs-disabled.svelte-mrwdy7{opacity:.35;background:repeating-linear-gradient(45deg,transparent,transparent 6px,var(--dt-border, rgba(148, 163, 184, .07)) 6px,var(--dt-border, rgba(148, 163, 184, .07)) 7px)!important}.fs-blocked.svelte-mrwdy7{position:absolute;top:18px;bottom:0;z-index:3;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--dt-text, rgba(148, 163, 184, .85)) 4%,transparent),color-mix(in srgb,var(--dt-text, rgba(148, 163, 184, .85)) 4%,transparent) 4px,transparent 4px,transparent 8px);border-radius:4px;pointer-events:none;display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px}.fs-blocked-label.svelte-mrwdy7{font:500 9px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(100, 116, 139, .55));text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.fs-day-header-custom.svelte-mrwdy7{position:absolute;top:16px;left:50%;transform:translate(-50%);z-index:4;pointer-events:auto;white-space:nowrap}.fs-tick.svelte-mrwdy7{position:absolute;top:0;bottom:0;width:0}.fs-tick.svelte-mrwdy7:before{content:"";position:absolute;top:18px;bottom:0;width:1px;background:var(--dt-border, rgba(148, 163, 184, .07))}.fs-tick-lb.svelte-mrwdy7{position:absolute;top:2px;left:5px;font:500 10px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-text-3, rgba(100, 116, 139, .7));white-space:nowrap;pointer-events:none}.fs-tick--half.svelte-mrwdy7{bottom:auto;height:26px}.fs-tick--half.svelte-mrwdy7:before{top:18px;height:6px;bottom:auto;opacity:.4}.fs-now.svelte-mrwdy7{position:absolute;top:0;bottom:0;z-index:10;pointer-events:none;transform:translate(-1px)}.fs-now-line.svelte-mrwdy7{position:absolute;top:0;bottom:0;left:0;width:2px;background:var(--dt-accent, #2563eb);box-shadow:0 0 8px var(--dt-glow, rgba(239, 68, 68, .35))}.fs-now-tag.svelte-mrwdy7{position:absolute;top:8px;left:8px;font:700 11px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-accent, #2563eb);background:color-mix(in srgb,var(--dt-bg, #ffffff) 92%,var(--dt-accent, #2563eb));border:1px solid var(--dt-accent-dim, rgba(239, 68, 68, .18));padding:3px 6px;border-radius:4px;white-space:nowrap;z-index:1}.fs-now-sec.svelte-mrwdy7{font-weight:400;opacity:.5;font-size:10px}.fs-date-label.svelte-mrwdy7{position:absolute;top:22px;left:50%;transform:translate(-50%);z-index:20;font:600 11px/1 var(--dt-sans, system-ui, sans-serif);letter-spacing:.04em;text-transform:uppercase;color:var(--dt-text, rgba(226, 232, 240, .85));background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:8px 16px;border-radius:8px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07));pointer-events:none;white-space:nowrap}.fs-nav.svelte-mrwdy7{position:absolute;top:22px;right:14px;z-index:20;display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07))}.fs-nav-pill.svelte-mrwdy7{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:6px 12px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s;display:inline-flex;align-items:center;justify-content:center}.fs-nav-pill.svelte-mrwdy7:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.fs-nav-today.svelte-mrwdy7{max-width:60px;overflow:hidden;white-space:nowrap;transition:max-width .25s ease,padding .25s ease,opacity .2s ease}.fs-nav-today--hidden.svelte-mrwdy7{max-width:0;padding-left:0;padding-right:0;opacity:0;pointer-events:none}.fs-nav-pill.svelte-mrwdy7:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.fs-allday.svelte-mrwdy7{position:absolute;left:0;right:0;display:flex;gap:6px;padding:0 8px;z-index:7;overflow-x:auto;scrollbar-width:none;pointer-events:auto}.fs-allday.svelte-mrwdy7::-webkit-scrollbar{display:none}.fs-ad.svelte-mrwdy7{display:flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;background:color-mix(in srgb,var(--ev-color) 18%,var(--dt-surface, var(--dt-bg, #ffffff)));border-left:3px solid var(--ev-color);white-space:nowrap;flex-shrink:0;cursor:pointer;transition:background .15s}.fs-ad.svelte-mrwdy7:hover{background:color-mix(in srgb,var(--ev-color) 28%,var(--dt-surface, var(--dt-bg, #ffffff)))}.fs-ad.svelte-mrwdy7:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.fs-ad--selected.svelte-mrwdy7{background:color-mix(in srgb,var(--ev-color) 30%,var(--dt-surface, var(--dt-bg, #ffffff)));border-left-width:4px}.fs-ad-dot.svelte-mrwdy7{width:6px;height:6px;border-radius:50%;background:var(--ev-color);flex-shrink:0}.fs-ad-title.svelte-mrwdy7{font-size:.7rem;font-weight:500;color:var(--dt-text, #e2e8f0);max-width:120px;overflow:hidden;text-overflow:ellipsis}.fs-ad-span.svelte-mrwdy7{font-size:.6rem;color:var(--dt-text-2, rgba(148, 163, 184, .55));flex-shrink:0}.fs-event.svelte-mrwdy7{position:absolute;z-index:6;border-radius:6px;cursor:pointer;background:color-mix(in srgb,var(--ev-color) 15%,var(--dt-surface, var(--dt-bg, #ffffff)));overflow:hidden;display:flex;align-items:center;justify-content:center;transition:box-shadow .12s,background .12s}.fs-event.svelte-mrwdy7:hover{background:color-mix(in srgb,var(--ev-color) 25%,var(--dt-surface, var(--dt-bg, #ffffff)));box-shadow:0 2px 12px color-mix(in srgb,var(--ev-color) 25%,transparent)}.fs-event--selected.svelte-mrwdy7{box-shadow:0 0 0 2px var(--ev-color),0 2px 14px color-mix(in srgb,var(--ev-color) 35%,transparent)}.fs-event--current.svelte-mrwdy7{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ev-color) 20%,transparent)}.fs-event--next.svelte-mrwdy7{background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.fs-event--dragging.svelte-mrwdy7{opacity:.85;z-index:50;box-shadow:0 4px 24px #00000059;cursor:grabbing;transition:none}.fs-event--cancelled.svelte-mrwdy7{opacity:.5}.fs-event--cancelled.svelte-mrwdy7 .fs-ev-title:where(.svelte-mrwdy7){text-decoration:line-through}.fs-event--tentative.svelte-mrwdy7{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.fs-event--full.svelte-mrwdy7{opacity:.55}.fs-event--limited.svelte-mrwdy7{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.fs-event--readonly.svelte-mrwdy7{cursor:default}.fs-ev-inner.svelte-mrwdy7{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;height:100%;max-width:100%;overflow:hidden;box-sizing:border-box;padding:8px 4px}.fs-ev-live.svelte-mrwdy7{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--ev-color)}.fs-ev-next-badge.svelte-mrwdy7{flex-shrink:0;font:600 8px/1 var(--dt-sans, system-ui, sans-serif);text-transform:uppercase;letter-spacing:.06em;color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);padding:2px 5px;border-radius:3px;white-space:nowrap}.fs-ev-title.svelte-mrwdy7{font:600 13px/1.15 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(226, 232, 240, .92));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-height:100%;flex-shrink:0}.fs-ev-time.svelte-mrwdy7{font:400 10px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-text-2, rgba(148, 163, 184, .72));opacity:.7;white-space:nowrap;flex-shrink:0}.fs-ev-sub.svelte-mrwdy7{font:400 11px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-2, rgba(148, 163, 184, .72));opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:100%;flex-shrink:0}.fs-ev-loc.svelte-mrwdy7{font:400 10px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(148, 163, 184, .5));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-height:100%;flex-shrink:0}.fs-ev-tags.svelte-mrwdy7{display:flex;flex-direction:row;gap:4px;flex-shrink:0}.fs-ev-tag.svelte-mrwdy7{font:500 8px/1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 18%,transparent);padding:1px 4px;border-radius:3px;white-space:nowrap}.fs-event.svelte-mrwdy7:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.wg.svelte-j4rvbp{position:relative;overflow:hidden;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums}.wg--auto.svelte-j4rvbp{overflow:visible}.wg-body.svelte-j4rvbp{flex:1;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding-top:48px;scrollbar-width:thin;scrollbar-color:var(--dt-scrollbar, rgba(0, 0, 0, .08)) transparent}.wg--auto.svelte-j4rvbp .wg-body:where(.svelte-j4rvbp){overflow-y:visible}.wg-body.svelte-j4rvbp::-webkit-scrollbar{width:4px}.wg-body.svelte-j4rvbp::-webkit-scrollbar-thumb{background:var(--dt-scrollbar, rgba(0, 0, 0, .1));border-radius:4px}.wg-body.svelte-j4rvbp::-webkit-scrollbar-track{background:transparent}.wg-week.svelte-j4rvbp{display:flex;border-radius:10px;margin:12px 8px;border:1.5px solid var(--dt-border, rgba(0, 0, 0, .08));overflow:hidden}.wg-week--current.svelte-j4rvbp{background:var(--dt-today-bg, rgba(239, 68, 68, .02));border:2.5px solid var(--dt-accent, #2563eb);box-shadow:0 0 0 1px color-mix(in srgb,var(--dt-accent, #2563eb) 15%,transparent)}.wg-week-body.svelte-j4rvbp{flex:1;min-width:0;display:flex;flex-direction:column}.wg-days.svelte-j4rvbp{display:flex;flex:1}.wg-cell.svelte-j4rvbp{flex:1;position:relative;min-height:170px;padding:4px 4px 8px;border-right:1px solid var(--dt-border, rgba(0, 0, 0, .06));cursor:pointer;transition:background .15s}.wg-cell.svelte-j4rvbp:last-child{border-right:none}.wg-cell.svelte-j4rvbp:hover{background:var(--dt-hover, rgba(0, 0, 0, .015))}.wg-cell--today.svelte-j4rvbp{background:var(--dt-today-bg, rgba(239, 68, 68, .03))}.wg-cell--today.svelte-j4rvbp:hover{background:#ef44440d}.wg-cell.svelte-j4rvbp{opacity:.55}.wg-cell.svelte-j4rvbp:hover{opacity:.75}.wg-week--current.svelte-j4rvbp .wg-cell:where(.svelte-j4rvbp){opacity:1}.wg-week--current.svelte-j4rvbp .wg-cell--past:where(.svelte-j4rvbp){opacity:.8}.wg-week--current.svelte-j4rvbp .wg-cell--past:where(.svelte-j4rvbp):hover{opacity:.9}.wg-cell--weekend.svelte-j4rvbp{background:var(--dt-weekend-bg, rgba(0, 0, 0, .012))}.wg-cell--disabled.svelte-j4rvbp{background:repeating-linear-gradient(45deg,transparent,transparent 6px,var(--dt-border, rgba(0, 0, 0, .06)) 6px,var(--dt-border, rgba(0, 0, 0, .06)) 7px)!important}.wg-blocked.svelte-j4rvbp{display:flex;align-items:center;gap:3px;padding:2px 4px;border-radius:3px;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--dt-text, rgba(0,0,0,.85)) 4%,transparent),color-mix(in srgb,var(--dt-text, rgba(0,0,0,.85)) 4%,transparent) 3px,transparent 3px,transparent 6px);margin-bottom:2px;min-height:14px}.wg-blocked-label.svelte-j4rvbp{font:500 8px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .3));text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.wg-cell-custom-header.svelte-j4rvbp{padding:0 4px 2px}.wg-cell-hd.svelte-j4rvbp{display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:4px 5px 2px 0;margin-bottom:2px}.wg-day-wd.svelte-j4rvbp{font:400 10px / 1 var(--dt-sans, system-ui, sans-serif);letter-spacing:.04em;text-transform:uppercase;color:var(--dt-text-3, rgba(0, 0, 0, .3))}.wg-week--current.svelte-j4rvbp .wg-day-wd:where(.svelte-j4rvbp){color:var(--dt-text-2, rgba(0, 0, 0, .5))}.wg-cell-hd--today.svelte-j4rvbp .wg-day-wd:where(.svelte-j4rvbp){color:var(--dt-accent, #2563eb);font-weight:600}.wg-day-num.svelte-j4rvbp{font:700 14px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .85))}.wg-week--current.svelte-j4rvbp .wg-day-num:where(.svelte-j4rvbp){color:var(--dt-text, rgba(0, 0, 0, .95))}.wg-day-num--today.svelte-j4rvbp{color:var(--dt-accent, #2563eb);font-weight:900}.wg-cell-month.svelte-j4rvbp{position:absolute;left:4px;top:4px;writing-mode:vertical-rl;transform:rotate(180deg);font:800 22px / 1 var(--dt-sans, system-ui, sans-serif);letter-spacing:.02em;text-transform:uppercase;color:color-mix(in srgb,var(--dt-text, rgba(255,255,255,.85)) 4%,transparent);pointer-events:none;white-space:nowrap}.wg-week--current.svelte-j4rvbp .wg-cell-month:where(.svelte-j4rvbp){color:color-mix(in srgb,var(--dt-text, rgba(255,255,255,.85)) 8%,transparent)}.wg-allday.svelte-j4rvbp{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.wg-ad.svelte-j4rvbp{display:flex;align-items:center;gap:3px;padding:2px 5px;border-radius:3px;background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)));cursor:pointer;overflow:hidden;transition:background .12s;min-height:18px}.wg-ad--drag-preview.svelte-j4rvbp{position:relative;z-index:8;opacity:.95;pointer-events:none;box-shadow:0 6px 18px color-mix(in srgb,var(--ev-color) 26%,rgba(0,0,0,.22));outline:1px solid color-mix(in srgb,var(--ev-color) 42%,transparent);cursor:grabbing}.wg-ad.svelte-j4rvbp:hover{background:color-mix(in srgb,var(--ev-color) 32%,var(--dt-surface, var(--dt-bg, #ffffff)))}.wg-ad--start.svelte-j4rvbp{border-left:2.5px solid var(--ev-color)}.wg-ad--mid.svelte-j4rvbp{border-radius:0;border-left:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.wg-ad--end.svelte-j4rvbp:not(.wg-ad--start){border-radius:0 3px 3px 0;border-left:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.wg-ad--selected.svelte-j4rvbp{box-shadow:0 0 0 1.5px var(--ev-color)}.wg-ad-title.svelte-j4rvbp{font:500 10px / 1.1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .85));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.wg-ad-cont.svelte-j4rvbp{font-size:8px;color:var(--ev-color);flex-shrink:0;line-height:1}.wg-ad-arrow.svelte-j4rvbp{font-size:8px;color:var(--ev-color);flex-shrink:0;margin-left:auto;line-height:1}.wg-cell-events.svelte-j4rvbp{position:relative;display:flex;flex-direction:column;gap:3px}.wg-ev.svelte-j4rvbp{display:flex;align-items:center;flex-wrap:wrap;gap:3px 5px;padding:3px 6px;border-radius:4px;background:color-mix(in srgb,var(--ev-color) 15%,var(--dt-surface, var(--dt-bg, #ffffff)));cursor:pointer;overflow:hidden;transition:background .12s}.wg-ev.svelte-j4rvbp:hover{background:color-mix(in srgb,var(--ev-color) 25%,var(--dt-surface, var(--dt-bg, #ffffff)))}.wg-ev--drag-preview.svelte-j4rvbp{position:relative;z-index:8;opacity:.95;pointer-events:none;background:color-mix(in srgb,var(--ev-color) 28%,var(--dt-surface, var(--dt-bg, #ffffff)));box-shadow:0 6px 18px color-mix(in srgb,var(--ev-color) 24%,rgba(0,0,0,.22));outline:1px solid color-mix(in srgb,var(--ev-color) 42%,transparent);cursor:grabbing}.wg-ev--selected.svelte-j4rvbp{box-shadow:0 0 0 1.5px var(--ev-color)}.wg-ev--current.svelte-j4rvbp{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)))}.wg-ev--cancelled.svelte-j4rvbp{opacity:.5}.wg-ev--cancelled.svelte-j4rvbp .wg-ev-title:where(.svelte-j4rvbp){text-decoration:line-through}.wg-ev--tentative.svelte-j4rvbp{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.wg-ev--full.svelte-j4rvbp{opacity:.55}.wg-ev--limited.svelte-j4rvbp{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 40%,transparent)}.wg-ev--readonly.svelte-j4rvbp{cursor:default}.wg-ev-time.svelte-j4rvbp{font:400 10px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .4));flex-shrink:0;white-space:nowrap}.wg-ev-title.svelte-j4rvbp{font:500 12px / 1.1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .85));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wg-ev-loc.svelte-j4rvbp{font:400 9px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .35));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1}.wg-ev-more.svelte-j4rvbp{font:500 10px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .35));padding:2px 8px;cursor:pointer}.wg-ev-more.svelte-j4rvbp:hover{color:var(--dt-text-2, rgba(0, 0, 0, .55))}.wg-nav.svelte-j4rvbp{position:absolute;top:22px;right:14px;z-index:20;display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07));animation:svelte-j4rvbp-wg-nav-in .2s ease both}@keyframes svelte-j4rvbp-wg-nav-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.wg-nav-pill.svelte-j4rvbp{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:6px 12px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s;display:inline-flex;align-items:center;justify-content:center}.wg-nav-pill.svelte-j4rvbp:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.wg-nav-pill.svelte-j4rvbp:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.wg-cell.svelte-j4rvbp:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:-2px}.wg-ev.svelte-j4rvbp:focus-visible{outline:2px solid var(--ev-color, var(--dt-accent, #2563eb));outline-offset:1px}.wg-ev--dragging.svelte-j4rvbp{opacity:.6;cursor:grabbing;box-shadow:0 2px 8px #0003}.ag-date-label.svelte-n8lbn1{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:20;font:600 11px/1 var(--dt-sans, system-ui, sans-serif);letter-spacing:.04em;text-transform:uppercase;color:var(--dt-text, rgba(226, 232, 240, .85));background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:8px 16px;border-radius:8px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07));pointer-events:none;white-space:nowrap}.ag-nav.svelte-n8lbn1{position:absolute;top:10px;right:14px;z-index:20;display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07))}.ag-nav-pill.svelte-n8lbn1{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:6px 12px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s;display:inline-flex;align-items:center;justify-content:center}.ag-nav-pill.svelte-n8lbn1:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.ag-nav-today.svelte-n8lbn1{max-width:60px;overflow:hidden;white-space:nowrap;transition:max-width .25s ease,padding .25s ease,opacity .2s ease}.ag-nav-today--hidden.svelte-n8lbn1{max-width:0;padding-left:0;padding-right:0;opacity:0;pointer-events:none}.ag-nav-pill.svelte-n8lbn1:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.ag.svelte-n8lbn1{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;height:100%;width:100%;min-width:0;box-sizing:border-box;color:var(--dt-text, rgba(255, 255, 255, .92));font-family:var(--dt-sans, system-ui, sans-serif)}.ag--auto.svelte-n8lbn1{height:auto;overflow:visible}.ag--disabled.svelte-n8lbn1{background-image:repeating-linear-gradient(135deg,transparent,transparent 6px,color-mix(in srgb,var(--dt-text, rgba(255, 255, 255, .92)) 4%,transparent) 6px,color-mix(in srgb,var(--dt-text, rgba(255, 255, 255, .92)) 4%,transparent) 12px)}.ag-body.svelte-n8lbn1{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;padding-top:44px;scrollbar-width:thin;scrollbar-color:var(--dt-border) transparent}.ag--auto.svelte-n8lbn1 .ag-body:where(.svelte-n8lbn1){overflow-y:visible;min-height:auto}.ag--mobile.svelte-n8lbn1 .ag-body:where(.svelte-n8lbn1){padding-top:8px}.ag-body.svelte-n8lbn1::-webkit-scrollbar{width:4px}.ag-body.svelte-n8lbn1::-webkit-scrollbar-thumb{background:var(--dt-border);border-radius:2px}.ag-allday.svelte-n8lbn1{display:flex;align-items:center;gap:8px;padding:6px 16px;border-bottom:1px solid var(--dt-border, rgba(148, 163, 184, .07))}.ag-allday-label.svelte-n8lbn1{font:600 10px/1 var(--dt-sans, system-ui, sans-serif);text-transform:uppercase;letter-spacing:.06em;color:var(--dt-text-2, rgba(148, 163, 184, .55));white-space:nowrap;flex-shrink:0}.ag-allday-items.svelte-n8lbn1{display:flex;flex-wrap:wrap;gap:6px}.ag-allday-chip.svelte-n8lbn1{display:flex;align-items:center;gap:5px;padding:3px 10px;border-radius:6px;background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px solid color-mix(in srgb,var(--ev-color) 20%,transparent);cursor:pointer;transition:background .15s,border-color .15s}.ag-allday-chip.svelte-n8lbn1:hover{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 35%,transparent)}.ag-allday-chip.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-allday-chip--selected.svelte-n8lbn1{border-color:var(--ev-color);background:color-mix(in srgb,var(--ev-color) 18%,var(--dt-surface, var(--dt-bg, #ffffff)))}.ag-allday-dot.svelte-n8lbn1{width:6px;height:6px;border-radius:50%;background:var(--ev-color);flex-shrink:0}.ag-allday-title.svelte-n8lbn1{font:500 .75rem/1.2 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(226, 232, 240, .85));white-space:nowrap}.ag-card.svelte-n8lbn1{display:flex;align-items:stretch;border-radius:10px;background:color-mix(in srgb,var(--ev-color) 15%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px solid color-mix(in srgb,var(--ev-color) 10%,var(--dt-border, rgba(255, 255, 255, .06)));overflow:hidden;cursor:pointer;transition:background .15s,border-color .15s}.ag-card.svelte-n8lbn1:hover{background:color-mix(in srgb,var(--ev-color) 25%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 40%,transparent)}.ag-card.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-card--selected.svelte-n8lbn1{border-color:var(--ev-color);background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)))}.ag-card--cancelled.svelte-n8lbn1{opacity:.5}.ag-card--cancelled.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1){text-decoration:line-through}.ag-card--tentative.svelte-n8lbn1{opacity:.65;border-style:dashed}.ag-card--full.svelte-n8lbn1{opacity:.55}.ag-card--limited.svelte-n8lbn1{opacity:.65;border-style:dashed}.ag-card-body.svelte-n8lbn1{padding:10px 12px;display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.ag-card-top.svelte-n8lbn1{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;min-width:0}.ag-card-title.svelte-n8lbn1{font-size:13px;font-weight:600;line-height:1.3;word-break:break-word;flex:1;min-width:0}.ag-card-meta.svelte-n8lbn1{font-size:11px;color:var(--dt-text-2, rgba(255, 255, 255, .5));font-family:var(--dt-mono, monospace);line-height:1}.ag-card-dur.svelte-n8lbn1{margin-left:6px;color:var(--dt-text-3, rgba(255, 255, 255, .3))}.ag-card-sub.svelte-n8lbn1{font-size:11px;color:var(--dt-text-2, rgba(255, 255, 255, .45));line-height:1}.ag-card-loc.svelte-n8lbn1{font-size:10px;color:var(--dt-text-3, rgba(255, 255, 255, .35));line-height:1}.ag-card-tags.svelte-n8lbn1{display:flex;gap:4px;flex-wrap:wrap}.ag-card-tag.svelte-n8lbn1{font:500 9px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);padding:2px 5px;border-radius:3px;white-space:nowrap}.ag-card--q.svelte-n8lbn1{margin-bottom:6px;transition:border-color .15s,transform .1s}.ag-card--q.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1){gap:3px}.ag-card--q.svelte-n8lbn1 .ag-card-tags:where(.svelte-n8lbn1){margin-top:2px}.ag-card-eta.svelte-n8lbn1{font-size:9px;font-weight:600;letter-spacing:.04em;color:var(--dt-accent, #2563eb);flex-shrink:0;white-space:nowrap}.ag-card--hero.svelte-n8lbn1{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 30%,transparent)}.ag-card--hero.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1){font-size:16px;font-weight:700}.ag-card--hero.svelte-n8lbn1 .ag-card-eta:where(.svelte-n8lbn1){font-size:11px;background:color-mix(in srgb,var(--dt-accent, #2563eb) 18%,transparent);padding:2px 7px;border-radius:4px}.ag-card--hero.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1){padding:14px 16px}.ag-card--plan.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1){padding:12px 14px;gap:3px}.ag-card--plan.svelte-n8lbn1 .ag-card-top:where(.svelte-n8lbn1){align-items:baseline}.ag-card-order.svelte-n8lbn1{font-size:10px;font-weight:700;color:var(--dt-text-3, rgba(255, 255, 255, .2));font-family:var(--dt-mono, monospace);flex-shrink:0}.ag-card--plan.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1){font-size:14px}.ag-card--first.svelte-n8lbn1{background:color-mix(in srgb,var(--ev-color) 20%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 25%,transparent)}.ag-card--first.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1){font-size:16px;font-weight:700}.ag-card--plan.svelte-n8lbn1 .ag-card-sub:where(.svelte-n8lbn1){padding-left:22px}.ag-card--plan.svelte-n8lbn1 .ag-card-tags:where(.svelte-n8lbn1){padding-left:22px;margin-top:2px}.ag-q.svelte-n8lbn1{display:grid;grid-template-columns:1fr 1.8fr;gap:0;flex:1;padding:8px 0 10px;min-height:0}.ag--mobile.svelte-n8lbn1 .ag-q:where(.svelte-n8lbn1){grid-template-columns:1fr;min-height:auto}.ag--mobile.svelte-n8lbn1 .ag-q-status:where(.svelte-n8lbn1){border-right:none;border-bottom:1px solid var(--dt-border, rgba(255, 255, 255, .06));padding-bottom:10px;margin-bottom:8px;overflow-y:visible}.ag--mobile.svelte-n8lbn1 .ag-q-queue:where(.svelte-n8lbn1){overflow-y:visible;padding-bottom:16px}.ag--mobile.svelte-n8lbn1 .ag-card-meta:where(.svelte-n8lbn1){line-height:1.3;padding-bottom:1px}.ag--mobile.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1){padding:14px 16px}.ag--mobile.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1){font-size:15px}.ag--mobile.svelte-n8lbn1 .ag-card--hero:where(.svelte-n8lbn1) .ag-card-title:where(.svelte-n8lbn1){font-size:18px}.ag--mobile.svelte-n8lbn1 .ag-card--hero:where(.svelte-n8lbn1) .ag-card-body:where(.svelte-n8lbn1){padding:16px 18px}.ag--mobile.svelte-n8lbn1 .ag-log-row:where(.svelte-n8lbn1){padding:12px 0}.ag--mobile.svelte-n8lbn1 .ag-card--plan:where(.svelte-n8lbn1) .ag-card-body:where(.svelte-n8lbn1){padding:14px 16px}.ag--mobile.svelte-n8lbn1 .ag-card--plan:where(.svelte-n8lbn1) .ag-card-title:where(.svelte-n8lbn1){font-size:15px}.ag--mobile.svelte-n8lbn1 .ag-nav-pill:where(.svelte-n8lbn1){padding:10px 16px}.ag-q-label.svelte-n8lbn1{font-size:8px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dt-text-3, rgba(255, 255, 255, .25));margin-bottom:8px;padding:0 12px;font-family:var(--dt-sans, system-ui, sans-serif)}.ag-q-empty.svelte-n8lbn1{display:flex;align-items:center;justify-content:center;flex:1;font-size:13px;font-weight:300;color:var(--dt-text-3, rgba(255, 255, 255, .25))}.ag-q-status.svelte-n8lbn1{padding:0 10px 0 14px;border-right:1px solid var(--dt-border, rgba(255, 255, 255, .06));display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.ag-q-status.svelte-n8lbn1::-webkit-scrollbar{display:none}.ag-q-done-section.svelte-n8lbn1{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--dt-border, rgba(255, 255, 255, .06))}.ag-q-clock.svelte-n8lbn1{font-size:10px;font-weight:600;font-family:var(--dt-mono, monospace);color:var(--dt-accent, #2563eb);margin-left:4px}.ag-q-now.svelte-n8lbn1{padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px solid color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);cursor:pointer;transition:background .15s,border-color .15s;margin-right:10px}.ag-q-now.svelte-n8lbn1:hover{background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 25%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 35%,transparent)}.ag-q-now.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-q-now--selected.svelte-n8lbn1{border-color:var(--ev-color, var(--dt-accent))}.ag-q-now-dot.svelte-n8lbn1{width:6px;height:6px;border-radius:50%;background:var(--ev-color, var(--dt-accent, #2563eb));margin-bottom:6px;animation:svelte-n8lbn1-ag-pulse 2.5s ease-in-out infinite}@keyframes svelte-n8lbn1-ag-pulse{0%,to{opacity:1}50%{opacity:.4}}.ag-q-now-title.svelte-n8lbn1{font-size:11px;font-weight:600;line-height:1.2;color:var(--dt-text, rgba(255, 255, 255, .92));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.ag-q-now-time.svelte-n8lbn1{font-size:9px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .35));margin-bottom:6px}.ag-q-now-track.svelte-n8lbn1{height:2px;background:var(--dt-border, rgba(255, 255, 255, .06));border-radius:1px;overflow:hidden}.ag-q-now-fill.svelte-n8lbn1{height:100%;background:var(--ev-color, var(--dt-accent, #2563eb));border-radius:1px;transition:width 1s linear}.ag-q-free.svelte-n8lbn1{padding:8px 10px;margin-right:10px}.ag-q-free-label.svelte-n8lbn1{font-size:12px;font-weight:300;color:var(--dt-text-3, rgba(255, 255, 255, .25));margin-bottom:2px}.ag-q-queue.svelte-n8lbn1{padding:0 16px;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column}.ag-q-queue.svelte-n8lbn1::-webkit-scrollbar{display:none}.ag-q-done-item.svelte-n8lbn1{display:flex;align-items:center;gap:5px;padding:3px 0;opacity:.35;cursor:pointer}.ag-q-done-item.svelte-n8lbn1:hover{opacity:.6}.ag-q-done-item.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px;opacity:.6}.ag-q-done-item--selected.svelte-n8lbn1{opacity:.7}.ag-q-done-check.svelte-n8lbn1{font-size:9px;color:var(--dt-success, rgba(120, 200, 140, .7));flex-shrink:0}.ag-q-done-title.svelte-n8lbn1{font-size:10px;line-height:1.2;color:var(--dt-text-3, rgba(255, 255, 255, .35));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:line-through;text-decoration-color:var(--dt-text-3, rgba(255, 255, 255, .15))}.ag-log.svelte-n8lbn1{flex:1;padding:8px 20px 12px;overflow-y:auto;scrollbar-width:none;opacity:.7}.ag-log.svelte-n8lbn1::-webkit-scrollbar{display:none}.ag-log-row.svelte-n8lbn1{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--dt-border, rgba(255, 255, 255, .04));cursor:pointer;transition:opacity .15s}.ag-log-row.svelte-n8lbn1:last-child{border-bottom:none}.ag-log-row.svelte-n8lbn1:hover{opacity:1}.ag-log-row.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-log-row--selected.svelte-n8lbn1{opacity:1;background:color-mix(in srgb,var(--ev-color) 6%,transparent);border-radius:6px;padding-left:8px;padding-right:8px}.ag-log-check.svelte-n8lbn1{font-size:10px;color:var(--dt-success, rgba(120, 200, 140, .5));flex-shrink:0}.ag-log-time.svelte-n8lbn1{font-size:11px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .3));width:64px;flex-shrink:0}.ag-log-dot.svelte-n8lbn1{width:5px;height:5px;border-radius:50%;flex-shrink:0;opacity:.6}.ag-log-title.svelte-n8lbn1{font-size:13px;font-weight:500;line-height:1.2;color:var(--dt-text-2, rgba(255, 255, 255, .55));flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:line-through;text-decoration-color:var(--dt-border, rgba(255, 255, 255, .08))}.ag-log-dur.svelte-n8lbn1{font-size:10px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .2));flex-shrink:0}.ag-compact-list.svelte-n8lbn1{flex:1;padding:8px 20px 12px;overflow-y:auto;scrollbar-width:none}.ag-compact-list.svelte-n8lbn1::-webkit-scrollbar{display:none}.ag-compact-row.svelte-n8lbn1{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer}.ag-compact-row--selected.svelte-n8lbn1{background:color-mix(in srgb,var(--ev-color) 10%,transparent);border-radius:4px;padding-left:6px;padding-right:6px}.ag-compact-row.svelte-n8lbn1:hover .ag-compact-row-title:where(.svelte-n8lbn1){color:var(--dt-text)}.ag-compact-row.svelte-n8lbn1:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-compact-row-dot.svelte-n8lbn1{width:5px;height:5px;border-radius:50%;background:var(--ev-color, var(--dt-accent));flex-shrink:0}.ag-compact-row-time.svelte-n8lbn1{font-size:11px;font-family:var(--dt-mono, monospace);color:var(--dt-text-2, rgba(255, 255, 255, .5));min-width:64px;flex-shrink:0}.ag-compact-row-title.svelte-n8lbn1{font-size:12px;font-weight:500;color:var(--dt-text-2, rgba(255, 255, 255, .5));flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s}.ag-compact-row-dur.svelte-n8lbn1{font-size:10px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .3));flex-shrink:0}.ag-compact-row-sub.svelte-n8lbn1{font-size:10px;color:var(--dt-text-3, rgba(255, 255, 255, .35));flex-shrink:0}.ag-compact-row-tag.svelte-n8lbn1{font:500 8px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 12%,transparent);padding:1px 4px;border-radius:3px;white-space:nowrap;flex-shrink:0}.ag-compact-row--cancelled.svelte-n8lbn1{opacity:.5}.ag-compact-row--cancelled.svelte-n8lbn1 .ag-compact-row-title:where(.svelte-n8lbn1){text-decoration:line-through}.ag-compact-row--tentative.svelte-n8lbn1{opacity:.65}.ag--mobile.svelte-n8lbn1 .ag-compact-row:where(.svelte-n8lbn1){padding:8px 0}.ag--mobile.svelte-n8lbn1 .ag-compact-row-title:where(.svelte-n8lbn1){font-size:14px}.ag--mobile.svelte-n8lbn1 .ag-compact-row-time:where(.svelte-n8lbn1){font-size:12px}.ag-plan.svelte-n8lbn1{flex:1;padding:8px 20px 12px;overflow-y:auto;scrollbar-width:none;display:flex;flex-direction:column;gap:6px}.ag-plan.svelte-n8lbn1::-webkit-scrollbar{display:none}.ag-nav.svelte-uhwfyj{position:absolute;top:10px;right:14px;z-index:20;display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07))}.ag-nav-pill.svelte-uhwfyj{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:6px 12px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s;display:inline-flex;align-items:center;justify-content:center}.ag-nav-pill.svelte-uhwfyj:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.ag-nav-today.svelte-uhwfyj{max-width:60px;overflow:hidden;white-space:nowrap;transition:max-width .25s ease,padding .25s ease,opacity .2s ease}.ag-nav-today--hidden.svelte-uhwfyj{max-width:0;padding-left:0;padding-right:0;opacity:0;pointer-events:none}.ag-nav-pill.svelte-uhwfyj:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.ag.svelte-uhwfyj{position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;display:flex;flex-direction:column;height:100%;width:100%;min-width:0;box-sizing:border-box;color:var(--dt-text, rgba(255, 255, 255, .92));font-family:var(--dt-sans, system-ui, sans-serif)}.ag--auto.svelte-uhwfyj{height:auto;overflow:visible}.ag-body.svelte-uhwfyj{flex:1;min-width:0;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;padding-top:44px;scrollbar-width:thin;scrollbar-color:var(--dt-border) transparent}.ag--auto.svelte-uhwfyj .ag-body:where(.svelte-uhwfyj){overflow-y:visible}.ag-body.svelte-uhwfyj::-webkit-scrollbar{width:4px}.ag-body.svelte-uhwfyj::-webkit-scrollbar-thumb{background:var(--dt-border);border-radius:2px}.ag-allday.svelte-uhwfyj{display:flex;flex-wrap:wrap;gap:4px;padding:4px 14px 6px}.ag-allday-chip.svelte-uhwfyj{display:flex;align-items:center;gap:4px;padding:2px 8px;border-radius:5px;background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px solid color-mix(in srgb,var(--ev-color) 18%,transparent);cursor:pointer;transition:background .15s,border-color .15s}.ag-allday-chip.svelte-uhwfyj:hover{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 30%,transparent)}.ag-allday-chip.svelte-uhwfyj:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-allday-chip--selected.svelte-uhwfyj{border-color:var(--ev-color);background:color-mix(in srgb,var(--ev-color) 18%,var(--dt-surface, var(--dt-bg, #ffffff)))}.ag-allday-dot.svelte-uhwfyj{width:5px;height:5px;border-radius:50%;background:var(--ev-color);flex-shrink:0}.ag-allday-title.svelte-uhwfyj{font:500 .7rem/1.2 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(226, 232, 240, .85));white-space:nowrap}.ag-card.svelte-uhwfyj{display:flex;align-items:stretch;border-radius:6px;background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, var(--dt-bg, #ffffff)));border:1px solid color-mix(in srgb,var(--ev-color) 8%,var(--dt-border, rgba(255, 255, 255, .06)));overflow:hidden;cursor:pointer;transition:background .15s,border-color .15s}.ag-card.svelte-uhwfyj:hover{background:color-mix(in srgb,var(--ev-color) 20%,var(--dt-surface, var(--dt-bg, #ffffff)));border-color:color-mix(in srgb,var(--ev-color) 30%,transparent)}.ag-card.svelte-uhwfyj:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-card--selected.svelte-uhwfyj{border-color:var(--ev-color);background:color-mix(in srgb,var(--ev-color) 20%,var(--dt-surface, var(--dt-bg, #ffffff)))}.ag-card--cancelled.svelte-uhwfyj{opacity:.5}.ag-card--cancelled.svelte-uhwfyj .ag-card-title:where(.svelte-uhwfyj){text-decoration:line-through}.ag-card--tentative.svelte-uhwfyj{opacity:.65;border-style:dashed}.ag-card--full.svelte-uhwfyj{opacity:.55}.ag-card--limited.svelte-uhwfyj{opacity:.65;border-style:dashed}.ag-card-body.svelte-uhwfyj{padding:7px 10px;display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.ag-card-title.svelte-uhwfyj{font-size:13px;font-weight:600;line-height:1.3;word-break:break-word;flex:1;min-width:0}.ag-card-meta.svelte-uhwfyj{display:flex;align-items:center;font-size:11px;color:var(--dt-text-2, rgba(255, 255, 255, .5));font-family:var(--dt-mono, monospace);line-height:1}.ag-card-dur.svelte-uhwfyj{margin-left:6px;color:var(--dt-text-3, rgba(255, 255, 255, .3))}.ag-card-eta.svelte-uhwfyj{margin-left:auto;font-size:10px;font-weight:600;color:color-mix(in srgb,var(--ev-color) 80%,var(--dt-text));opacity:.85;letter-spacing:.02em}.ag-card-sub.svelte-uhwfyj{font-size:11px;color:var(--dt-text-2, rgba(255, 255, 255, .45));line-height:1}.ag-card-loc.svelte-uhwfyj{font-size:10px;color:var(--dt-text-3, rgba(255, 255, 255, .35));line-height:1}.ag-card-tags.svelte-uhwfyj{display:flex;gap:4px;flex-wrap:wrap}.ag-card-tag.svelte-uhwfyj{font:500 9px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);padding:2px 5px;border-radius:3px;white-space:nowrap}.ag-card-progress.svelte-uhwfyj{height:3px;background:var(--dt-border, rgba(255, 255, 255, .06));border-radius:2px;overflow:hidden;margin-top:2px}.ag-card-progress-fill.svelte-uhwfyj{height:100%;background:var(--ev-color, var(--dt-accent));border-radius:2px;transition:width 1s linear}.ag-wday.svelte-uhwfyj{border-bottom:1px solid var(--dt-border, rgba(255, 255, 255, .06))}.ag-wday--today.svelte-uhwfyj{background:color-mix(in srgb,var(--dt-accent, #2563eb) 2%,transparent)}.ag-wday--tomorrow.svelte-uhwfyj .ag-card:where(.svelte-uhwfyj){opacity:.82}.ag-wday--past.svelte-uhwfyj{opacity:.4}.ag-wday--past.svelte-uhwfyj .ag-wday-head:where(.svelte-uhwfyj){padding:8px 20px}.ag-wday--disabled.svelte-uhwfyj{position:relative}.ag-wday--disabled.svelte-uhwfyj:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent,transparent 4px,rgba(128,128,128,.08) 4px,rgba(128,128,128,.08) 8px);pointer-events:none}.ag-wday-custom-header.svelte-uhwfyj{padding:2px 0 4px}.ag-wday-head.svelte-uhwfyj{display:flex;justify-content:space-between;align-items:center;padding:8px 20px}.ag-wday-head-left.svelte-uhwfyj{display:flex;align-items:center;gap:8px}.ag-wday-badge.svelte-uhwfyj{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--dt-accent, #2563eb);background:color-mix(in srgb,var(--dt-accent, #2563eb) 12%,transparent);padding:2px 7px;border-radius:3px}.ag-wday-badge--muted.svelte-uhwfyj{color:var(--dt-text-2, rgba(255, 255, 255, .5));background:color-mix(in srgb,var(--dt-text-2, rgba(255, 255, 255, .5)) 10%,transparent)}.ag-wday-name.svelte-uhwfyj{font-size:13px;font-weight:600}.ag-wday-date.svelte-uhwfyj{font-size:11px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .3))}.ag-wday-empty.svelte-uhwfyj{padding:2px 20px 6px;font-size:11px;color:var(--dt-text-3, rgba(255, 255, 255, .2));font-style:italic}.ag-wday-expanded.svelte-uhwfyj{padding:0 20px 10px}.ag-wslot.svelte-uhwfyj{margin-bottom:4px}.ag-wslot-header.svelte-uhwfyj{display:flex;align-items:baseline;gap:8px;padding:2px 0}.ag-wslot-now.svelte-uhwfyj{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dt-accent, #2563eb)}.ag-wslot-cards.svelte-uhwfyj{display:flex;flex-direction:column;gap:4px}.ag-wslot-cards--multi.svelte-uhwfyj{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:4px}.ag-wday-past-line.svelte-uhwfyj{font-size:10px;color:var(--dt-text-3, rgba(255, 255, 255, .3));padding:6px 0 0;opacity:.5}.ag-wday-compact.svelte-uhwfyj{padding:0 20px 6px}.ag-compact.svelte-uhwfyj{display:flex;align-items:center;gap:6px;padding:3px 0;cursor:pointer;min-width:0;overflow:hidden}.ag-compact--selected.svelte-uhwfyj{background:color-mix(in srgb,var(--ev-color) 10%,transparent);border-radius:4px;padding-left:6px;padding-right:6px}.ag-compact.svelte-uhwfyj:hover .ag-compact-title:where(.svelte-uhwfyj){color:var(--dt-text)}.ag-compact.svelte-uhwfyj:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.ag-compact-dot.svelte-uhwfyj{width:5px;height:5px;border-radius:50%;background:var(--ev-color, var(--dt-accent));flex-shrink:0}.ag-compact-time.svelte-uhwfyj{font-size:11px;font-family:var(--dt-mono, monospace);color:var(--dt-text-2, rgba(255, 255, 255, .5));min-width:40px;flex-shrink:0;white-space:nowrap}.ag-compact-title.svelte-uhwfyj{font-size:12px;font-weight:500;color:var(--dt-text-2, rgba(255, 255, 255, .5));flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s}.ag-compact-dur.svelte-uhwfyj{font-size:10px;font-family:var(--dt-mono, monospace);color:var(--dt-text-3, rgba(255, 255, 255, .3));flex-shrink:0;white-space:nowrap}.ag-compact-sub.svelte-uhwfyj{font-size:10px;color:var(--dt-text-3, rgba(255, 255, 255, .35));flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.ag-compact-loc.svelte-uhwfyj{font-size:9px;color:var(--dt-text-3, rgba(255, 255, 255, .3));flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100px}.ag-compact--cancelled.svelte-uhwfyj{opacity:.5}.ag-compact--cancelled.svelte-uhwfyj .ag-compact-title:where(.svelte-uhwfyj){text-decoration:line-through}.ag-compact--tentative.svelte-uhwfyj{opacity:.65}.ag-compact--full.svelte-uhwfyj{opacity:.55}.ag-compact--limited.svelte-uhwfyj{opacity:.65}.ag-compact-tag.svelte-uhwfyj{font:500 8px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 12%,transparent);padding:1px 4px;border-radius:3px;white-space:nowrap;flex-shrink:0;max-width:80px;overflow:hidden;text-overflow:ellipsis}.ag-compact-more.svelte-uhwfyj{font-size:11px;color:var(--dt-text-3);padding:2px 0 0 13px}.ag--mobile.svelte-uhwfyj .ag-wday-head:where(.svelte-uhwfyj){padding:12px 16px}.ag--mobile.svelte-uhwfyj .ag-wday-expanded:where(.svelte-uhwfyj){padding:0 16px 12px}.ag--mobile.svelte-uhwfyj .ag-wday-compact:where(.svelte-uhwfyj){padding:0 16px 12px}.ag--mobile.svelte-uhwfyj .ag-card-body:where(.svelte-uhwfyj){padding:12px 14px}.ag--mobile.svelte-uhwfyj .ag-card-title:where(.svelte-uhwfyj){font-size:14px}.ag--mobile.svelte-uhwfyj .ag-compact:where(.svelte-uhwfyj){padding:8px 0}.ag--mobile.svelte-uhwfyj .ag-compact-title:where(.svelte-uhwfyj){font-size:14px}.ag--mobile.svelte-uhwfyj .ag-compact-time:where(.svelte-uhwfyj){font-size:12px}.ag--mobile.svelte-uhwfyj .ag-nav-pill:where(.svelte-uhwfyj){padding:10px 16px}.ag--mobile.svelte-uhwfyj .ag-wslot-cards--multi:where(.svelte-uhwfyj){grid-template-columns:1fr}.mb.svelte-zbkzcp{position:relative;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;overflow:hidden;background:var(--dt-bg, #fff);-webkit-tap-highlight-color:transparent}.mb--auto.svelte-zbkzcp{overflow:visible}.mb-allday.svelte-zbkzcp{display:flex;gap:4px;padding:4px 8px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--dt-border, rgba(0, 0, 0, .06));flex-shrink:0;align-items:center}.mb-allday.svelte-zbkzcp::-webkit-scrollbar{display:none}.mb-allday-chip.svelte-zbkzcp{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:5px;background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, #f9fafb));border:none;cursor:pointer;flex-shrink:0;transition:background .12s;-webkit-tap-highlight-color:transparent;max-width:160px}.mb-allday-chip.svelte-zbkzcp:active{background:color-mix(in srgb,var(--ev-color) 22%,var(--dt-surface, #f9fafb))}.mb-allday-chip--selected.svelte-zbkzcp{box-shadow:0 0 0 1.5px var(--ev-color)}.mb-allday-dot.svelte-zbkzcp{width:6px;height:6px;border-radius:50%;background:var(--ev-color);flex-shrink:0}.mb-allday-title.svelte-zbkzcp{font:500 11px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .87));white-space:nowrap;max-width:100px;overflow:hidden;text-overflow:ellipsis}.mb-allday-span.svelte-zbkzcp{font:400 10px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .38))}.mb-allday-more.svelte-zbkzcp{font:500 11px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-2, rgba(0, 0, 0, .54));white-space:nowrap;flex-shrink:0;padding:0 4px}.mb-grid.svelte-zbkzcp{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--dt-scrollbar, rgba(0, 0, 0, .08)) transparent;position:relative;padding-top:8px}.mb--auto.svelte-zbkzcp .mb-grid:where(.svelte-zbkzcp){overflow-y:visible}.mb-grid-inner.svelte-zbkzcp{position:relative;min-width:100%}.mb-hour.svelte-zbkzcp{position:absolute;left:0;right:0;display:flex;align-items:flex-start}.mb-hour-label.svelte-zbkzcp{width:40px;flex-shrink:0;font:500 11px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-text-3, rgba(0, 0, 0, .38));text-align:right;padding-right:8px;padding-top:0;position:relative;top:-6px}.mb-hour-line.svelte-zbkzcp{flex:1;height:1px;background:var(--dt-border, rgba(0, 0, 0, .08))}.mb-hour--blocked.svelte-zbkzcp{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--dt-text, rgba(0, 0, 0, .87)) 3%,transparent),color-mix(in srgb,var(--dt-text, rgba(0, 0, 0, .87)) 3%,transparent) 4px,transparent 4px,transparent 8px)}.mb-blocked-label.svelte-zbkzcp{position:absolute;left:44px;top:50%;transform:translateY(-50%);font:500 9px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .38));text-transform:uppercase;letter-spacing:.04em}.mb-now.svelte-zbkzcp{position:absolute;left:0;right:0;z-index:10;display:flex;align-items:center;pointer-events:none}.mb-now-label.svelte-zbkzcp{width:40px;flex-shrink:0;text-align:right;padding-right:6px;font:700 10px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-accent, #2563eb)}.mb-now-line.svelte-zbkzcp{flex:1;height:2px;background:var(--dt-accent, #2563eb);box-shadow:0 0 6px var(--dt-glow, rgba(37, 99, 235, .25));position:relative}.mb-now-line.svelte-zbkzcp:before{content:"";position:absolute;left:-4px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--dt-accent, #2563eb)}.mb-event.svelte-zbkzcp{position:absolute;z-index:5;border-radius:8px;cursor:pointer;background:color-mix(in srgb,var(--ev-color) 12%,var(--dt-surface, #f9fafb));border:none;display:flex;align-items:stretch;overflow:hidden;transition:box-shadow .12s,background .12s;text-align:left;padding:0;-webkit-tap-highlight-color:transparent;min-height:24px}.mb-event.svelte-zbkzcp:active{background:color-mix(in srgb,var(--ev-color) 20%,var(--dt-surface, #f9fafb))}.mb-event--selected.svelte-zbkzcp{box-shadow:0 0 0 2px var(--ev-color),0 2px 12px color-mix(in srgb,var(--ev-color) 25%,transparent)}.mb-event--current.svelte-zbkzcp{background:color-mix(in srgb,var(--ev-color) 18%,var(--dt-surface, #f9fafb))}.mb-event--next.svelte-zbkzcp{background:color-mix(in srgb,var(--ev-color) 8%,var(--dt-surface, #f9fafb));border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.mb-event--cancelled.svelte-zbkzcp{opacity:.5}.mb-event--cancelled.svelte-zbkzcp .mb-ev-title:where(.svelte-zbkzcp){text-decoration:line-through}.mb-event--tentative.svelte-zbkzcp{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.mb-event--full.svelte-zbkzcp{opacity:.55}.mb-event--limited.svelte-zbkzcp{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.mb-ev-stripe.svelte-zbkzcp{width:4px;background:var(--ev-color);flex-shrink:0;border-radius:8px 0 0 8px}.mb-ev-body.svelte-zbkzcp{flex:1;min-width:0;padding:4px 8px;display:flex;flex-direction:column;gap:1px;justify-content:center}.mb-ev-title.svelte-zbkzcp{font:600 13px/1.2 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .87));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-ev-time.svelte-zbkzcp{font:400 11px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-text-2, rgba(0, 0, 0, .54))}.mb-ev-sub.svelte-zbkzcp{font:400 11px/1.1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .38));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-ev-loc.svelte-zbkzcp{font:400 10px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .3));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mb-ev-tags.svelte-zbkzcp{display:flex;gap:4px;margin-top:2px}.mb-ev-tag.svelte-zbkzcp{font:500 9px/1 var(--dt-sans, system-ui, sans-serif);color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);padding:2px 5px;border-radius:3px;white-space:nowrap}.mb-ev-live.svelte-zbkzcp{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--ev-color, var(--dt-accent));animation:svelte-zbkzcp-mb-pulse 2s ease-in-out infinite}.mb-ev-next-badge.svelte-zbkzcp{position:absolute;top:4px;right:4px;font:600 8px/1 var(--dt-sans, system-ui, sans-serif);text-transform:uppercase;letter-spacing:.06em;color:var(--ev-color, var(--dt-accent));background:color-mix(in srgb,var(--ev-color, var(--dt-accent)) 15%,transparent);padding:2px 5px;border-radius:3px;white-space:nowrap}@keyframes svelte-zbkzcp-mb-pulse{0%,to{opacity:1}50%{opacity:.4}}.mb-event.svelte-zbkzcp:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:2px}.mw.svelte-1d18hkf{position:relative;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;overflow:hidden;background:var(--dt-bg, #fff);-webkit-tap-highlight-color:transparent}.mw--auto.svelte-1d18hkf{overflow:visible}.mw-list.svelte-1d18hkf{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--dt-scrollbar, rgba(0, 0, 0, .08)) transparent}.mw--auto.svelte-1d18hkf .mw-list:where(.svelte-1d18hkf){overflow-y:visible}.mw-row.svelte-1d18hkf{display:flex;align-items:center;gap:12px;position:relative;padding:10px 12px;background:transparent;transition:background .12s;text-align:left;width:100%;-webkit-tap-highlight-color:transparent;border-bottom:1px solid var(--dt-border, rgba(0, 0, 0, .06));min-height:56px}.mw-row.svelte-1d18hkf:last-child{border-bottom:none}.mw-row.svelte-1d18hkf:has(.mw-row-target:where(.svelte-1d18hkf):active){background:color-mix(in srgb,var(--dt-accent, #2563eb) 6%,transparent)}.mw-row--today.svelte-1d18hkf{background:color-mix(in srgb,var(--dt-accent, #2563eb) 4%,transparent)}.mw-row--past.svelte-1d18hkf{opacity:.5}.mw-row--disabled.svelte-1d18hkf{background-image:repeating-linear-gradient(135deg,transparent,transparent 6px,color-mix(in srgb,var(--dt-text, rgba(0, 0, 0, .87)) 4%,transparent) 6px,color-mix(in srgb,var(--dt-text, rgba(0, 0, 0, .87)) 4%,transparent) 12px)}.mw-row-target.svelte-1d18hkf{position:absolute;inset:0;z-index:0;border:none;background:transparent;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.mw-row-target.svelte-1d18hkf:disabled{cursor:default}.mw-row-target.svelte-1d18hkf:focus-visible{outline:2px solid var(--dt-accent, #2563eb);outline-offset:-2px}.mw-date.svelte-1d18hkf{display:flex;flex-direction:column;align-items:center;width:40px;flex-shrink:0;gap:2px;position:relative;z-index:1;pointer-events:none}.mw-day-name.svelte-1d18hkf{font:600 10px/1 var(--dt-sans, system-ui, sans-serif);letter-spacing:.06em;text-transform:uppercase;color:var(--dt-text-3, rgba(0, 0, 0, .38))}.mw-day-name--today.svelte-1d18hkf{color:var(--dt-accent, #2563eb)}.mw-day-num.svelte-1d18hkf{font:700 18px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .87))}.mw-day-num--today.svelte-1d18hkf{background:var(--dt-accent, #2563eb);color:var(--dt-btn-text, #fff);width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:15px}.mw-events.svelte-1d18hkf{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;position:relative;z-index:2}.mw-empty.svelte-1d18hkf{font:400 12px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .25));font-style:italic}.mw-ev.svelte-1d18hkf{display:flex;align-items:center;gap:0;border-radius:6px;background:color-mix(in srgb,var(--ev-color) 10%,var(--dt-surface, #f9fafb));overflow:hidden;cursor:pointer;transition:background .12s;-webkit-tap-highlight-color:transparent;border:none;text-align:left;padding:0}.mw-ev.svelte-1d18hkf:active{background:color-mix(in srgb,var(--ev-color) 20%,var(--dt-surface, #f9fafb))}.mw-ev--selected.svelte-1d18hkf{box-shadow:0 0 0 1.5px var(--ev-color)}.mw-ev--current.svelte-1d18hkf{background:color-mix(in srgb,var(--ev-color) 16%,var(--dt-surface, #f9fafb))}.mw-ev--allday.svelte-1d18hkf{background:color-mix(in srgb,var(--ev-color) 14%,var(--dt-surface, #f9fafb))}.mw-ev--cancelled.svelte-1d18hkf{opacity:.5}.mw-ev--cancelled.svelte-1d18hkf .mw-ev-title:where(.svelte-1d18hkf){text-decoration:line-through}.mw-ev--tentative.svelte-1d18hkf{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.mw-ev--full.svelte-1d18hkf{opacity:.55}.mw-ev--limited.svelte-1d18hkf{opacity:.65;border:1px dashed color-mix(in srgb,var(--ev-color) 35%,transparent)}.mw-ev-stripe.svelte-1d18hkf{width:3px;align-self:stretch;background:var(--ev-color, var(--dt-accent));flex-shrink:0;border-radius:6px 0 0 6px}.mw-ev-body.svelte-1d18hkf{flex:1;min-width:0;padding:5px 8px;display:flex;align-items:baseline;gap:6px}.mw-ev-title.svelte-1d18hkf{font:500 12px/1.2 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(0, 0, 0, .87));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.mw-ev-time.svelte-1d18hkf{font:400 11px/1 var(--dt-mono, ui-monospace, monospace);color:var(--dt-text-3, rgba(0, 0, 0, .38));white-space:nowrap;flex-shrink:0}.mw-ev-more.svelte-1d18hkf{font:400 11px/1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(0, 0, 0, .38));padding:2px 0}.mw-chevron.svelte-1d18hkf{flex-shrink:0;color:var(--dt-text-3, rgba(0, 0, 0, .2));position:relative;z-index:1;pointer-events:none}.mw-ev.svelte-1d18hkf:focus-visible{outline:2px solid var(--ev-color, var(--dt-accent));outline-offset:1px}.cal.svelte-1b53e7w{position:relative;width:100%;min-width:0;height:var(--cal-h, 600px);background:var(--dt-bg, inherit);border-radius:var(--cal-r, 12px);overflow:clip;display:flex;flex-direction:column;border:1px solid var(--dt-border, rgba(148, 163, 184, .07));box-sizing:border-box}.cal--auto.svelte-1b53e7w{height:auto;overflow:visible}.cal-pills.svelte-1b53e7w{position:absolute;top:22px;bottom:auto;left:10px;z-index:20;display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07))}.cal-pill.svelte-1b53e7w{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:6px 12px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s}.cal-pill.svelte-1b53e7w:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.cal-pill--active.svelte-1b53e7w{background:var(--dt-accent, #2563eb);color:var(--dt-btn-text, #fff)}.cal-pill.svelte-1b53e7w:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.cal-body.svelte-1b53e7w{flex:1;min-height:0;position:relative;overflow:hidden}.cal--auto.svelte-1b53e7w .cal-body:where(.svelte-1b53e7w){overflow:visible}.cal-empty.svelte-1b53e7w{display:flex;align-items:center;justify-content:center;height:100%;font:400 13px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text-3, rgba(100, 116, 139, .55))}.cal-loading.svelte-1b53e7w{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--dt-accent, #2563eb) 50%,transparent 100%);animation:svelte-1b53e7w-cal-slide 1.2s ease-in-out infinite}@keyframes svelte-1b53e7w-cal-slide{0%{transform:translate(-100%)}to{transform:translate(100%)}}.cal-m-hd.svelte-1b53e7w{display:flex;align-items:center;gap:4px;padding:8px 8px 6px;border-bottom:1px solid var(--dt-border, rgba(148, 163, 184, .07));flex-shrink:0;min-height:44px}.cal-m-left.svelte-1b53e7w,.cal-m-right.svelte-1b53e7w{display:flex;align-items:center;gap:2px;flex-shrink:0}.cal-m-right.svelte-1b53e7w{justify-content:flex-end}.cal-m-nav.svelte-1b53e7w{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));border-radius:50%;cursor:pointer;transition:background .12s,color .12s;-webkit-tap-highlight-color:transparent;flex-shrink:0}.cal-m-nav.svelte-1b53e7w:hover{color:var(--dt-text, rgba(226, 232, 240, .85));background:color-mix(in srgb,var(--dt-text, rgba(226, 232, 240, .85)) 8%,transparent)}.cal-m-nav.svelte-1b53e7w:active{background:var(--dt-accent-dim, rgba(239, 68, 68, .12))}.cal-m-nav.svelte-1b53e7w:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}.cal-m-pills.svelte-1b53e7w{display:flex;gap:2px;background:color-mix(in srgb,var(--dt-surface, var(--dt-bg, #ffffff)) 85%,transparent);border-radius:8px;padding:2px;border:1px solid var(--dt-border, rgba(148, 163, 184, .07));flex-shrink:0}.cal-m-pill.svelte-1b53e7w{border:none;background:transparent;color:var(--dt-text-2, rgba(148, 163, 184, .55));cursor:pointer;font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);padding:5px 10px;border-radius:6px;letter-spacing:.04em;text-transform:uppercase;transition:background .1s,color .1s;-webkit-tap-highlight-color:transparent}.cal-m-pill.svelte-1b53e7w:hover{color:var(--dt-text, rgba(226, 232, 240, .85))}.cal-m-pill--active.svelte-1b53e7w{background:var(--dt-accent, #2563eb);color:var(--dt-btn-text, #fff)}.cal-m-title.svelte-1b53e7w{flex:1;text-align:center;font:600 14px / 1.2 var(--dt-sans, system-ui, sans-serif);color:var(--dt-text, rgba(226, 232, 240, .85));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.cal-m-today-bar.svelte-1b53e7w{display:flex;justify-content:center;padding:12px 8px 6px;flex-shrink:0}.cal-m-today.svelte-1b53e7w{font:600 11px / 1 var(--dt-sans, system-ui, sans-serif);color:var(--dt-accent, #2563eb);background:color-mix(in srgb,var(--dt-accent, #2563eb) 10%,transparent);border:none;padding:5px 10px;border-radius:6px;cursor:pointer;white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;transition:background .12s,color .12s;-webkit-tap-highlight-color:transparent;flex-shrink:0}.cal-m-today.svelte-1b53e7w:hover{background:color-mix(in srgb,var(--dt-accent, #2563eb) 18%,transparent)}.cal-m-today.svelte-1b53e7w:active{background:color-mix(in srgb,var(--dt-accent, #2563eb) 25%,transparent)}.cal-m-today.svelte-1b53e7w:focus-visible{outline:2px solid color-mix(in srgb,var(--dt-accent, #2563eb) 55%,transparent);outline-offset:2px}
1
+
2
+ /* ─── Container ──────────────────────────────────── */
3
+ .fs.svelte-mrwdy7 {
4
+ position: relative;
5
+ overflow: hidden;
6
+ user-select: none;
7
+ font-variant-numeric: tabular-nums;
8
+ }
9
+ .fs--auto.svelte-mrwdy7 { overflow: visible; }
10
+
11
+ /* ─── Horizontal scroll ──────────────────────────── */
12
+ .fs-scroll.svelte-mrwdy7 {
13
+ width: 100%;
14
+ height: 100%;
15
+ overflow-x: auto;
16
+ overflow-y: hidden;
17
+ touch-action: pan-x;
18
+ cursor: default;
19
+ scrollbar-width: thin;
20
+ scrollbar-color: var(--dt-scrollbar, rgba(0, 0, 0, 0.1)) transparent;
21
+ }
22
+ .fs--auto.svelte-mrwdy7 .fs-scroll:where(.svelte-mrwdy7) { height: auto; overflow: visible; }
23
+ .fs-scroll.svelte-mrwdy7::-webkit-scrollbar { height: 5px; }
24
+ .fs-scroll.svelte-mrwdy7::-webkit-scrollbar-thumb {
25
+ background: var(--dt-scrollbar, rgba(0, 0, 0, 0.1));
26
+ border-radius: 4px;
27
+ }
28
+ .fs-scroll.svelte-mrwdy7::-webkit-scrollbar-track { background: transparent; }
29
+ .fs-readonly.svelte-mrwdy7 { cursor: grab; }
30
+ .fs-grabbing.svelte-mrwdy7 { cursor: grabbing; }
31
+
32
+ .fs-track.svelte-mrwdy7 {
33
+ position: relative;
34
+ height: 100%;
35
+ }
36
+
37
+ /* ─── Day block ──────────────────────────────────── */
38
+ .fs-day.svelte-mrwdy7 {
39
+ position: absolute;
40
+ top: 0;
41
+ height: 100%;
42
+ border-left: 1px solid var(--dt-border-day, rgba(0, 0, 0, 0.14));
43
+ box-sizing: border-box;
44
+ }
45
+ .fs-day.svelte-mrwdy7:first-of-type { border-left: none; }
46
+ .fs-today.svelte-mrwdy7 { background: var(--dt-today-bg, rgba(37, 99, 235, 0.04)); }
47
+ .fs-past.svelte-mrwdy7 { opacity: 0.7; }
48
+
49
+ /* ─── Disabled day ───────────────────────────────── */
50
+ .fs-disabled.svelte-mrwdy7 {
51
+ opacity: 0.35;
52
+ background: repeating-linear-gradient(
53
+ 45deg,
54
+ transparent,
55
+ transparent 6px,
56
+ var(--dt-border, rgba(0, 0, 0, 0.08)) 6px,
57
+ var(--dt-border, rgba(0, 0, 0, 0.08)) 7px
58
+ ) !important;
59
+ }
60
+
61
+ /* ─── Blocked slot overlay ───────────────────────── */
62
+ .fs-blocked.svelte-mrwdy7 {
63
+ position: absolute;
64
+ top: 18px;
65
+ bottom: 0;
66
+ z-index: 3;
67
+ background: repeating-linear-gradient(
68
+ -45deg,
69
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent),
70
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 4px,
71
+ transparent 4px,
72
+ transparent 8px
73
+ );
74
+ border-radius: 4px;
75
+ pointer-events: none;
76
+ display: flex;
77
+ align-items: flex-end;
78
+ justify-content: center;
79
+ padding-bottom: 6px;
80
+ }
81
+
82
+ .fs-blocked-label.svelte-mrwdy7 {
83
+ font: 500 9px/1 var(--dt-sans, system-ui, sans-serif);
84
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
85
+ text-transform: uppercase;
86
+ letter-spacing: 0.04em;
87
+ white-space: nowrap;
88
+ }
89
+
90
+ /* ─── Custom day header ──────────────────────────── */
91
+ .fs-day-header-custom.svelte-mrwdy7 {
92
+ position: absolute;
93
+ top: 16px;
94
+ left: 50%;
95
+ transform: translateX(-50%);
96
+ z-index: 4;
97
+ pointer-events: auto;
98
+ white-space: nowrap;
99
+ }
100
+
101
+ /* ─── Hour ticks ─────────────────────────────────── */
102
+ .fs-tick.svelte-mrwdy7 {
103
+ position: absolute;
104
+ top: 0;
105
+ bottom: 0;
106
+ width: 0;
107
+ }
108
+ .fs-tick.svelte-mrwdy7::before {
109
+ content: '';
110
+ position: absolute;
111
+ top: 18px;
112
+ bottom: 0;
113
+ width: 1px;
114
+ background: var(--dt-border, rgba(0, 0, 0, 0.08));
115
+ }
116
+ .fs-tick-lb.svelte-mrwdy7 {
117
+ position: absolute;
118
+ top: 2px;
119
+ left: 5px;
120
+ font: 500 10px/1 var(--dt-mono, ui-monospace, monospace);
121
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
122
+ white-space: nowrap;
123
+ pointer-events: none;
124
+ }
125
+ .fs-tick--half.svelte-mrwdy7 { bottom: auto; height: calc(18px + 8px); }
126
+ .fs-tick--half.svelte-mrwdy7::before {
127
+ top: 18px;
128
+ height: 6px;
129
+ bottom: auto;
130
+ opacity: 0.4;
131
+ }
132
+
133
+ /* ─── Now-line ────────────────────────────────────── */
134
+ .fs-now.svelte-mrwdy7 {
135
+ position: absolute;
136
+ top: 0;
137
+ bottom: 0;
138
+ z-index: 10;
139
+ pointer-events: none;
140
+ transform: translateX(-1px);
141
+ }
142
+ .fs-now-line.svelte-mrwdy7 {
143
+ position: absolute;
144
+ top: 0;
145
+ bottom: 0;
146
+ left: 0;
147
+ width: 2px;
148
+ background: var(--dt-accent, #2563eb);
149
+ box-shadow: 0 0 8px var(--dt-glow, rgba(37, 99, 235, 0.25));
150
+ }
151
+ .fs-now-tag.svelte-mrwdy7 {
152
+ position: absolute;
153
+ top: 8px;
154
+ left: 8px;
155
+ font: 700 11px/1 var(--dt-mono, ui-monospace, monospace);
156
+ color: var(--dt-accent, #2563eb);
157
+ background: color-mix(in srgb, var(--dt-bg, #ffffff) 92%, var(--dt-accent, #2563eb));
158
+ border: 1px solid var(--dt-accent-dim, rgba(37, 99, 235, 0.12));
159
+ padding: 3px 6px;
160
+ border-radius: 4px;
161
+ white-space: nowrap;
162
+ z-index: 1;
163
+ }
164
+ .fs-now-sec.svelte-mrwdy7 {
165
+ font-weight: 400;
166
+ opacity: 0.5;
167
+ font-size: 10px;
168
+ }
169
+
170
+ /* ─── All-day strip ─────────────────────────────── */
171
+ .fs-allday.svelte-mrwdy7 {
172
+ position: absolute;
173
+ left: 0;
174
+ right: 0;
175
+ display: flex;
176
+ gap: 6px;
177
+ padding: 0 8px;
178
+ z-index: 7;
179
+ overflow-x: auto;
180
+ scrollbar-width: none;
181
+ pointer-events: auto;
182
+ }
183
+ .fs-allday.svelte-mrwdy7::-webkit-scrollbar { display: none; }
184
+
185
+ .fs-ad.svelte-mrwdy7 {
186
+ display: flex;
187
+ align-items: center;
188
+ gap: 4px;
189
+ padding: 2px 8px;
190
+ border-radius: 4px;
191
+ background: color-mix(in srgb, var(--ev-color) 18%, var(--dt-surface, var(--dt-bg, #ffffff)));
192
+ border-left: 3px solid var(--ev-color);
193
+ white-space: nowrap;
194
+ flex-shrink: 0;
195
+ cursor: pointer;
196
+ transition: background 0.15s;
197
+ }
198
+ .fs-ad.svelte-mrwdy7:hover {
199
+ background: color-mix(in srgb, var(--ev-color) 28%, var(--dt-surface, var(--dt-bg, #ffffff)));
200
+ }
201
+ .fs-ad.svelte-mrwdy7:focus-visible {
202
+ outline: 2px solid color-mix(in srgb, var(--dt-accent, #2563eb) 55%, transparent);
203
+ outline-offset: 2px;
204
+ }
205
+ .fs-ad--selected.svelte-mrwdy7 {
206
+ background: color-mix(in srgb, var(--ev-color) 30%, var(--dt-surface, var(--dt-bg, #ffffff)));
207
+ border-left-width: 4px;
208
+ }
209
+
210
+ .fs-ad-dot.svelte-mrwdy7 {
211
+ width: 6px;
212
+ height: 6px;
213
+ border-radius: 50%;
214
+ background: var(--ev-color);
215
+ flex-shrink: 0;
216
+ }
217
+
218
+ .fs-ad-title.svelte-mrwdy7 {
219
+ font-size: 0.7rem;
220
+ font-weight: 500;
221
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
222
+ max-width: 120px;
223
+ overflow: hidden;
224
+ text-overflow: ellipsis;
225
+ }
226
+
227
+ .fs-ad-span.svelte-mrwdy7 {
228
+ font-size: 0.6rem;
229
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
230
+ flex-shrink: 0;
231
+ }
232
+
233
+ /* ─── Events ─────────────────────────────────────── */
234
+ .fs-event.svelte-mrwdy7 {
235
+ position: absolute;
236
+ z-index: 6;
237
+ border-radius: 6px;
238
+ cursor: pointer;
239
+ background: color-mix(in srgb, var(--ev-color) 15%, var(--dt-surface, var(--dt-bg, #ffffff)));
240
+ overflow: hidden;
241
+ display: flex;
242
+ align-items: center;
243
+ justify-content: center;
244
+ transition: box-shadow 120ms, background 120ms;
245
+ }
246
+ .fs-event.svelte-mrwdy7:hover {
247
+ background: color-mix(in srgb, var(--ev-color) 25%, var(--dt-surface, var(--dt-bg, #ffffff)));
248
+ box-shadow: 0 2px 12px color-mix(in srgb, var(--ev-color) 25%, transparent);
249
+ }
250
+ .fs-event--selected.svelte-mrwdy7 {
251
+ box-shadow: 0 0 0 2px var(--ev-color), 0 2px 14px color-mix(in srgb, var(--ev-color) 35%, transparent);
252
+ }
253
+ .fs-event--current.svelte-mrwdy7 {
254
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
255
+ box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ev-color) 20%, transparent);
256
+ }
257
+ .fs-event--next.svelte-mrwdy7 {
258
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, var(--dt-bg, #ffffff)));
259
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
260
+ }
261
+ .fs-event--dragging.svelte-mrwdy7 {
262
+ opacity: 0.85;
263
+ z-index: 50;
264
+ box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
265
+ cursor: grabbing;
266
+ transition: none;
267
+ }
268
+ .fs-event--cancelled.svelte-mrwdy7 {
269
+ opacity: 0.5;
270
+ }
271
+ .fs-event--cancelled.svelte-mrwdy7 .fs-ev-title:where(.svelte-mrwdy7) {
272
+ text-decoration: line-through;
273
+ }
274
+ .fs-event--tentative.svelte-mrwdy7 {
275
+ opacity: 0.65;
276
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
277
+ }
278
+ .fs-event--full.svelte-mrwdy7 {
279
+ opacity: 0.55;
280
+ }
281
+ .fs-event--limited.svelte-mrwdy7 {
282
+ opacity: 0.65;
283
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
284
+ }
285
+ .fs-event--readonly.svelte-mrwdy7 {
286
+ cursor: default;
287
+ }
288
+
289
+ /* Event inner — vertical text along lane height (day filmstrip) */
290
+ .fs-ev-inner.svelte-mrwdy7 {
291
+ writing-mode: vertical-rl;
292
+ text-orientation: mixed;
293
+ transform: rotate(180deg);
294
+ display: flex;
295
+ flex-direction: row;
296
+ align-items: center;
297
+ justify-content: center;
298
+ gap: 6px;
299
+ height: 100%;
300
+ max-width: 100%;
301
+ overflow: hidden;
302
+ box-sizing: border-box;
303
+ padding: 8px 4px;
304
+ }
305
+ .fs-ev-live.svelte-mrwdy7 {
306
+ flex-shrink: 0;
307
+ width: 7px;
308
+ height: 7px;
309
+ border-radius: 50%;
310
+ background: var(--ev-color);
311
+ }
312
+ .fs-ev-next-badge.svelte-mrwdy7 {
313
+ flex-shrink: 0;
314
+ font: 600 8px/1 var(--dt-sans, system-ui, sans-serif);
315
+ text-transform: uppercase;
316
+ letter-spacing: 0.06em;
317
+ color: var(--ev-color, var(--dt-accent));
318
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
319
+ padding: 2px 5px;
320
+ border-radius: 3px;
321
+ white-space: nowrap;
322
+ }
323
+ .fs-ev-title.svelte-mrwdy7 {
324
+ font: 600 13px/1.15 var(--dt-sans, system-ui, sans-serif);
325
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
326
+ overflow: hidden;
327
+ text-overflow: ellipsis;
328
+ white-space: nowrap;
329
+ max-height: 100%;
330
+ flex-shrink: 0;
331
+ }
332
+ .fs-ev-time.svelte-mrwdy7 {
333
+ font: 400 10px/1 var(--dt-mono, ui-monospace, monospace);
334
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
335
+ opacity: 0.7;
336
+ white-space: nowrap;
337
+ flex-shrink: 0;
338
+ }
339
+ .fs-ev-sub.svelte-mrwdy7 {
340
+ font: 400 11px/1 var(--dt-sans, system-ui, sans-serif);
341
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
342
+ opacity: 0.6;
343
+ white-space: nowrap;
344
+ overflow: hidden;
345
+ text-overflow: ellipsis;
346
+ max-height: 100%;
347
+ flex-shrink: 0;
348
+ }
349
+ .fs-ev-loc.svelte-mrwdy7 {
350
+ font: 400 10px/1 var(--dt-sans, system-ui, sans-serif);
351
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
352
+ white-space: nowrap;
353
+ overflow: hidden;
354
+ text-overflow: ellipsis;
355
+ max-height: 100%;
356
+ flex-shrink: 0;
357
+ }
358
+ .fs-ev-tags.svelte-mrwdy7 {
359
+ display: flex;
360
+ flex-direction: row;
361
+ gap: 4px;
362
+ flex-shrink: 0;
363
+ }
364
+ .fs-ev-tag.svelte-mrwdy7 {
365
+ font: 500 8px/1 var(--dt-sans, system-ui, sans-serif);
366
+ color: var(--ev-color, var(--dt-accent));
367
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 18%, transparent);
368
+ padding: 1px 4px;
369
+ border-radius: 3px;
370
+ white-space: nowrap;
371
+ }
372
+
373
+ /* ─── Focus-visible ──────────────────────────────── */
374
+ .fs-event.svelte-mrwdy7:focus-visible {
375
+ outline: 2px solid var(--dt-accent, #2563eb);
376
+ outline-offset: 2px;
377
+ }
378
+
379
+ /* ─── Container ──────────────────────────────────── */
380
+ .wg.svelte-j4rvbp {
381
+ position: relative;
382
+ overflow: hidden;
383
+ display: flex;
384
+ flex-direction: column;
385
+ user-select: none;
386
+ font-variant-numeric: tabular-nums;
387
+ }
388
+ .wg--auto.svelte-j4rvbp { overflow: visible; }
389
+
390
+ /* ─── Scrollable body ────────────────────────────── */
391
+ .wg-body.svelte-j4rvbp {
392
+ flex: 1;
393
+ overflow-y: auto;
394
+ overflow-x: hidden;
395
+ box-sizing: border-box;
396
+ scrollbar-width: thin;
397
+ scrollbar-color: var(--dt-scrollbar, rgba(0, 0, 0, 0.1)) transparent;
398
+ }
399
+ .wg--auto.svelte-j4rvbp .wg-body:where(.svelte-j4rvbp) { overflow-y: visible; }
400
+
401
+ .wg-body.svelte-j4rvbp::-webkit-scrollbar { width: 4px; }
402
+ .wg-body.svelte-j4rvbp::-webkit-scrollbar-thumb {
403
+ background: var(--dt-scrollbar, rgba(0, 0, 0, 0.1));
404
+ border-radius: 4px;
405
+ }
406
+ .wg-body.svelte-j4rvbp::-webkit-scrollbar-track { background: transparent; }
407
+
408
+ /* ─── Week row ───────────────────────────────────── */
409
+ .wg-week.svelte-j4rvbp {
410
+ display: flex;
411
+ border-radius: 10px;
412
+ margin: 12px 8px;
413
+ border: 1.5px solid var(--dt-border, rgba(0, 0, 0, 0.08));
414
+ overflow: hidden;
415
+ }
416
+
417
+ .wg-week--current.svelte-j4rvbp {
418
+ background: var(--dt-today-bg, rgba(37, 99, 235, 0.04));
419
+ border: 2.5px solid var(--dt-accent, #2563eb);
420
+ box-shadow: 0 0 0 1px color-mix(in srgb, var(--dt-accent, #2563eb) 15%, transparent);
421
+ }
422
+
423
+ /* ─── Week body ──────────────────────────────────── */
424
+ .wg-week-body.svelte-j4rvbp {
425
+ flex: 1;
426
+ min-width: 0;
427
+ display: flex;
428
+ flex-direction: column;
429
+ }
430
+
431
+ /* ─── Day columns ────────────────────────────────── */
432
+ .wg-days.svelte-j4rvbp {
433
+ display: flex;
434
+ flex: 1;
435
+ }
436
+
437
+ .wg-cell.svelte-j4rvbp {
438
+ flex: 1;
439
+ position: relative;
440
+ min-height: 170px;
441
+ padding: 4px 4px 8px;
442
+ border-right: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
443
+ cursor: pointer;
444
+ transition: background 0.15s;
445
+ }
446
+
447
+ .wg-cell.svelte-j4rvbp:last-child { border-right: none; }
448
+ .wg-cell.svelte-j4rvbp:hover { background: var(--dt-hover, rgba(0, 0, 0, 0.015)); }
449
+
450
+ .wg-cell--today.svelte-j4rvbp { background: var(--dt-today-bg, rgba(37, 99, 235, 0.04)); }
451
+ .wg-cell--today.svelte-j4rvbp:hover { background: color-mix(in srgb, var(--dt-accent, #2563eb) 6%, transparent); }
452
+
453
+ /* Dim all cells by default; current week overrides to full brightness */
454
+ .wg-cell.svelte-j4rvbp { opacity: 0.55; }
455
+ .wg-cell.svelte-j4rvbp:hover { opacity: 0.75; }
456
+ .wg-week--current.svelte-j4rvbp .wg-cell:where(.svelte-j4rvbp) { opacity: 1; }
457
+ .wg-week--current.svelte-j4rvbp .wg-cell--past:where(.svelte-j4rvbp) { opacity: 0.8; }
458
+ .wg-week--current.svelte-j4rvbp .wg-cell--past:where(.svelte-j4rvbp):hover { opacity: 0.9; }
459
+
460
+ /* equalDays: when no cells are marked past, all are full brightness */
461
+
462
+ .wg-cell--weekend.svelte-j4rvbp { background: var(--dt-weekend-bg, rgba(0, 0, 0, 0.012)); }
463
+
464
+ /* ─── Disabled cell ──────────────────────────────── */
465
+ .wg-cell--disabled.svelte-j4rvbp {
466
+ background: repeating-linear-gradient(
467
+ 45deg,
468
+ transparent,
469
+ transparent 6px,
470
+ var(--dt-border, rgba(0, 0, 0, 0.08)) 6px,
471
+ var(--dt-border, rgba(0, 0, 0, 0.08)) 7px
472
+ ) !important;
473
+ }
474
+
475
+ /* ─── Blocked slot indicator ─────────────────────── */
476
+ .wg-blocked.svelte-j4rvbp {
477
+ display: flex;
478
+ align-items: center;
479
+ gap: 3px;
480
+ padding: 2px 4px;
481
+ border-radius: 3px;
482
+ background: repeating-linear-gradient(
483
+ -45deg,
484
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent),
485
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 3px,
486
+ transparent 3px,
487
+ transparent 6px
488
+ );
489
+ margin-bottom: 2px;
490
+ min-height: 14px;
491
+ }
492
+
493
+ .wg-blocked-label.svelte-j4rvbp {
494
+ font: 500 8px/1 var(--dt-sans, system-ui, sans-serif);
495
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
496
+ text-transform: uppercase;
497
+ letter-spacing: 0.04em;
498
+ white-space: nowrap;
499
+ }
500
+
501
+ /* ─── Custom day header ──────────────────────────── */
502
+ .wg-cell-custom-header.svelte-j4rvbp {
503
+ padding: 0 4px 2px;
504
+ }
505
+
506
+ /* ─── Cell header (day label top-right) ──────────── */
507
+ .wg-cell-hd.svelte-j4rvbp {
508
+ display: flex;
509
+ align-items: center;
510
+ justify-content: flex-end;
511
+ gap: 4px;
512
+ padding: 4px 5px 2px 0;
513
+ margin-bottom: 2px;
514
+ }
515
+
516
+ .wg-day-wd.svelte-j4rvbp {
517
+ font: 400 10px / 1 var(--dt-sans, system-ui, sans-serif);
518
+ letter-spacing: 0.04em;
519
+ text-transform: uppercase;
520
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
521
+ }
522
+
523
+ .wg-week--current.svelte-j4rvbp .wg-day-wd:where(.svelte-j4rvbp) {
524
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
525
+ }
526
+
527
+ .wg-cell-hd--today.svelte-j4rvbp .wg-day-wd:where(.svelte-j4rvbp) {
528
+ color: var(--dt-accent, #2563eb);
529
+ font-weight: 600;
530
+ }
531
+
532
+ .wg-day-num.svelte-j4rvbp {
533
+ font: 700 14px / 1 var(--dt-sans, system-ui, sans-serif);
534
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
535
+ }
536
+
537
+ .wg-week--current.svelte-j4rvbp .wg-day-num:where(.svelte-j4rvbp) {
538
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
539
+ }
540
+
541
+ .wg-day-num--today.svelte-j4rvbp {
542
+ color: var(--dt-accent, #2563eb);
543
+ font-weight: 900;
544
+ }
545
+
546
+ /* ─── Month label (top-left, behind events) ─────── */
547
+ .wg-cell-month.svelte-j4rvbp {
548
+ position: absolute;
549
+ left: 4px;
550
+ top: 4px;
551
+ writing-mode: vertical-rl;
552
+ transform: rotate(180deg);
553
+ font: 800 22px / 1 var(--dt-sans, system-ui, sans-serif);
554
+ letter-spacing: 0.02em;
555
+ text-transform: uppercase;
556
+ color: color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent);
557
+ pointer-events: none;
558
+ white-space: nowrap;
559
+ }
560
+
561
+ .wg-week--current.svelte-j4rvbp .wg-cell-month:where(.svelte-j4rvbp) {
562
+ color: color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 8%, transparent);
563
+ }
564
+
565
+ /* ─── All-day / multi-day events ─────────────────── */
566
+ .wg-allday.svelte-j4rvbp {
567
+ display: flex;
568
+ flex-direction: column;
569
+ gap: 2px;
570
+ margin-bottom: 4px;
571
+ }
572
+
573
+ .wg-ad.svelte-j4rvbp {
574
+ display: flex;
575
+ align-items: center;
576
+ gap: 3px;
577
+ padding: 2px 5px;
578
+ border-radius: 3px;
579
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
580
+ cursor: pointer;
581
+ overflow: hidden;
582
+ transition: background 0.12s;
583
+ min-height: 18px;
584
+ }
585
+
586
+ .wg-ad--drag-preview.svelte-j4rvbp {
587
+ position: relative;
588
+ z-index: 8;
589
+ opacity: 0.95;
590
+ pointer-events: none;
591
+ box-shadow: 0 6px 18px color-mix(in srgb, var(--ev-color) 26%, rgba(0, 0, 0, 0.22));
592
+ outline: 1px solid color-mix(in srgb, var(--ev-color) 42%, transparent);
593
+ cursor: grabbing;
594
+ }
595
+
596
+ .wg-ad.svelte-j4rvbp:hover {
597
+ background: color-mix(in srgb, var(--ev-color) 32%, var(--dt-surface, var(--dt-bg, #ffffff)));
598
+ }
599
+
600
+ .wg-ad--start.svelte-j4rvbp {
601
+ border-left: 2.5px solid var(--ev-color);
602
+ }
603
+
604
+ .wg-ad--mid.svelte-j4rvbp {
605
+ border-radius: 0;
606
+ border-left: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
607
+ }
608
+
609
+ .wg-ad--end.svelte-j4rvbp:not(.wg-ad--start) {
610
+ border-radius: 0 3px 3px 0;
611
+ border-left: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
612
+ }
613
+
614
+ .wg-ad--selected.svelte-j4rvbp {
615
+ box-shadow: 0 0 0 1.5px var(--ev-color);
616
+ }
617
+
618
+ .wg-ad-title.svelte-j4rvbp {
619
+ font: 500 10px / 1.1 var(--dt-sans, system-ui, sans-serif);
620
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
621
+ white-space: nowrap;
622
+ overflow: hidden;
623
+ text-overflow: ellipsis;
624
+ flex: 1;
625
+ }
626
+
627
+ .wg-ad-cont.svelte-j4rvbp {
628
+ font-size: 8px;
629
+ color: var(--ev-color);
630
+ flex-shrink: 0;
631
+ line-height: 1;
632
+ }
633
+
634
+ .wg-ad-arrow.svelte-j4rvbp {
635
+ font-size: 8px;
636
+ color: var(--ev-color);
637
+ flex-shrink: 0;
638
+ margin-left: auto;
639
+ line-height: 1;
640
+ }
641
+
642
+ /* ─── Events ─────────────────────────────────────── */
643
+ .wg-cell-events.svelte-j4rvbp {
644
+ position: relative;
645
+ display: flex;
646
+ flex-direction: column;
647
+ gap: 3px;
648
+ }
649
+
650
+ .wg-ev.svelte-j4rvbp {
651
+ display: flex;
652
+ align-items: center;
653
+ flex-wrap: wrap;
654
+ gap: 3px 5px;
655
+ padding: 3px 6px;
656
+ border-radius: 4px;
657
+ background: color-mix(in srgb, var(--ev-color) 15%, var(--dt-surface, var(--dt-bg, #ffffff)));
658
+ cursor: pointer;
659
+ overflow: hidden;
660
+ transition: background 0.12s;
661
+ }
662
+
663
+ .wg-ev.svelte-j4rvbp:hover {
664
+ background: color-mix(in srgb, var(--ev-color) 25%, var(--dt-surface, var(--dt-bg, #ffffff)));
665
+ }
666
+
667
+ .wg-ev--drag-preview.svelte-j4rvbp {
668
+ position: relative;
669
+ z-index: 8;
670
+ opacity: 0.95;
671
+ pointer-events: none;
672
+ background: color-mix(in srgb, var(--ev-color) 28%, var(--dt-surface, var(--dt-bg, #ffffff)));
673
+ box-shadow: 0 6px 18px color-mix(in srgb, var(--ev-color) 24%, rgba(0, 0, 0, 0.22));
674
+ outline: 1px solid color-mix(in srgb, var(--ev-color) 42%, transparent);
675
+ cursor: grabbing;
676
+ }
677
+
678
+ .wg-ev--selected.svelte-j4rvbp {
679
+ box-shadow: 0 0 0 1.5px var(--ev-color);
680
+ }
681
+
682
+ .wg-ev--current.svelte-j4rvbp {
683
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
684
+ }
685
+
686
+ .wg-ev--cancelled.svelte-j4rvbp {
687
+ opacity: 0.5;
688
+ }
689
+ .wg-ev--cancelled.svelte-j4rvbp .wg-ev-title:where(.svelte-j4rvbp) {
690
+ text-decoration: line-through;
691
+ }
692
+ .wg-ev--tentative.svelte-j4rvbp {
693
+ opacity: 0.65;
694
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
695
+ }
696
+ .wg-ev--full.svelte-j4rvbp {
697
+ opacity: 0.55;
698
+ }
699
+ .wg-ev--limited.svelte-j4rvbp {
700
+ opacity: 0.65;
701
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 40%, transparent);
702
+ }
703
+ .wg-ev--readonly.svelte-j4rvbp {
704
+ cursor: default;
705
+ }
706
+
707
+ .wg-ev-time.svelte-j4rvbp {
708
+ font: 400 10px / 1 var(--dt-sans, system-ui, sans-serif);
709
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
710
+ flex-shrink: 0;
711
+ white-space: nowrap;
712
+ }
713
+
714
+ .wg-ev-title.svelte-j4rvbp {
715
+ font: 500 12px / 1.1 var(--dt-sans, system-ui, sans-serif);
716
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
717
+ white-space: nowrap;
718
+ overflow: hidden;
719
+ text-overflow: ellipsis;
720
+ }
721
+
722
+ .wg-ev-loc.svelte-j4rvbp {
723
+ font: 400 9px / 1 var(--dt-sans, system-ui, sans-serif);
724
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
725
+ white-space: nowrap;
726
+ overflow: hidden;
727
+ text-overflow: ellipsis;
728
+ flex-shrink: 1;
729
+ }
730
+
731
+ .wg-ev-more.svelte-j4rvbp {
732
+ font: 500 10px / 1 var(--dt-sans, system-ui, sans-serif);
733
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
734
+ padding: 2px 8px;
735
+ cursor: pointer;
736
+ }
737
+
738
+ .wg-ev-more.svelte-j4rvbp:hover {
739
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
740
+ }
741
+
742
+ /* ─── Focus-visible ──────────────────────────────── */
743
+ .wg-cell.svelte-j4rvbp:focus-visible {
744
+ outline: 2px solid var(--dt-accent, #2563eb);
745
+ outline-offset: -2px;
746
+ }
747
+
748
+ .wg-ev.svelte-j4rvbp:focus-visible {
749
+ outline: 2px solid var(--ev-color, var(--dt-accent, #2563eb));
750
+ outline-offset: 1px;
751
+ }
752
+
753
+ .wg-ev--dragging.svelte-j4rvbp {
754
+ opacity: 0.6;
755
+ cursor: grabbing;
756
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
757
+ }
758
+
759
+ /* ═══ Container ═══ */
760
+ .ag.svelte-n8lbn1 {
761
+ position: relative;
762
+ overflow: hidden;
763
+ user-select: none;
764
+ display: flex;
765
+ flex-direction: column;
766
+ height: 100%;
767
+ width: 100%;
768
+ min-width: 0;
769
+ box-sizing: border-box;
770
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
771
+ font-family: var(--dt-sans, system-ui, sans-serif);
772
+ }
773
+
774
+ .ag--auto.svelte-n8lbn1 { height: auto; overflow: visible; }
775
+
776
+ .ag--disabled.svelte-n8lbn1 {
777
+ background-image: repeating-linear-gradient(
778
+ 135deg,
779
+ transparent,
780
+ transparent 6px,
781
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 6px,
782
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 12px
783
+ );
784
+ }
785
+
786
+ /* ═══ Body ═══ */
787
+ .ag-body.svelte-n8lbn1 {
788
+ flex: 1;
789
+ min-height: 0;
790
+ min-width: 0;
791
+ display: flex;
792
+ flex-direction: column;
793
+ overflow-y: auto;
794
+ overflow-x: hidden;
795
+ padding-top: 8px;
796
+ scrollbar-width: thin;
797
+ scrollbar-color: var(--dt-border) transparent;
798
+ }
799
+ .ag--auto.svelte-n8lbn1 .ag-body:where(.svelte-n8lbn1) { overflow-y: visible; min-height: auto; }
800
+ .ag-body.svelte-n8lbn1::-webkit-scrollbar {
801
+ width: 4px;
802
+ }
803
+ .ag-body.svelte-n8lbn1::-webkit-scrollbar-thumb {
804
+ background: var(--dt-border);
805
+ border-radius: 2px;
806
+ }
807
+
808
+ /* ═══ All-day strip ═══ */
809
+ .ag-allday.svelte-n8lbn1 {
810
+ display: flex;
811
+ align-items: center;
812
+ gap: 8px;
813
+ padding: 6px 16px;
814
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
815
+ }
816
+ .ag-allday-label.svelte-n8lbn1 {
817
+ font: 600 10px/1 var(--dt-sans, system-ui, sans-serif);
818
+ text-transform: uppercase;
819
+ letter-spacing: 0.06em;
820
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
821
+ white-space: nowrap;
822
+ flex-shrink: 0;
823
+ }
824
+ .ag-allday-items.svelte-n8lbn1 {
825
+ display: flex;
826
+ flex-wrap: wrap;
827
+ gap: 6px;
828
+ }
829
+ .ag-allday-chip.svelte-n8lbn1 {
830
+ display: flex;
831
+ align-items: center;
832
+ gap: 5px;
833
+ padding: 3px 10px;
834
+ border-radius: 6px;
835
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, var(--dt-bg, #ffffff)));
836
+ border: 1px solid color-mix(in srgb, var(--ev-color) 20%, transparent);
837
+ cursor: pointer;
838
+ transition: background 0.15s, border-color 0.15s;
839
+ }
840
+ .ag-allday-chip.svelte-n8lbn1:hover {
841
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
842
+ border-color: color-mix(in srgb, var(--ev-color) 35%, transparent);
843
+ }
844
+ .ag-allday-chip.svelte-n8lbn1:focus-visible {
845
+ outline: 2px solid var(--dt-accent, #2563eb);
846
+ outline-offset: 2px;
847
+ }
848
+ .ag-allday-chip--selected.svelte-n8lbn1 {
849
+ border-color: var(--ev-color);
850
+ background: color-mix(in srgb, var(--ev-color) 18%, var(--dt-surface, var(--dt-bg, #ffffff)));
851
+ }
852
+ .ag-allday-dot.svelte-n8lbn1 {
853
+ width: 6px;
854
+ height: 6px;
855
+ border-radius: 50%;
856
+ background: var(--ev-color);
857
+ flex-shrink: 0;
858
+ }
859
+ .ag-allday-title.svelte-n8lbn1 {
860
+ font: 500 0.75rem/1.2 var(--dt-sans, system-ui, sans-serif);
861
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
862
+ white-space: nowrap;
863
+ }
864
+
865
+ /* ═══ Shared: event card ═══ */
866
+ .ag-card.svelte-n8lbn1 {
867
+ display: flex;
868
+ align-items: stretch;
869
+ border-radius: 10px;
870
+ background: color-mix(in srgb, var(--ev-color) 15%, var(--dt-surface, var(--dt-bg, #ffffff)));
871
+ border: 1px solid color-mix(in srgb, var(--ev-color) 10%, var(--dt-border, rgba(0, 0, 0, 0.08)));
872
+ overflow: hidden;
873
+ cursor: pointer;
874
+ transition: background 150ms, border-color 150ms;
875
+ }
876
+ .ag-card.svelte-n8lbn1:hover {
877
+ background: color-mix(in srgb, var(--ev-color) 25%, var(--dt-surface, var(--dt-bg, #ffffff)));
878
+ border-color: color-mix(in srgb, var(--ev-color) 40%, transparent);
879
+ }
880
+ .ag-card.svelte-n8lbn1:focus-visible {
881
+ outline: 2px solid var(--dt-accent, #2563eb);
882
+ outline-offset: 2px;
883
+ }
884
+ .ag-card--selected.svelte-n8lbn1 {
885
+ border-color: var(--ev-color);
886
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
887
+ }
888
+ .ag-card--cancelled.svelte-n8lbn1 {
889
+ opacity: 0.5;
890
+ }
891
+ .ag-card--cancelled.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1) {
892
+ text-decoration: line-through;
893
+ }
894
+ .ag-card--tentative.svelte-n8lbn1 {
895
+ opacity: 0.65;
896
+ border-style: dashed;
897
+ }
898
+ .ag-card--full.svelte-n8lbn1 {
899
+ opacity: 0.55;
900
+ }
901
+ .ag-card--limited.svelte-n8lbn1 {
902
+ opacity: 0.65;
903
+ border-style: dashed;
904
+ }
905
+ .ag-card-body.svelte-n8lbn1 {
906
+ padding: 10px 12px;
907
+ display: flex;
908
+ flex-direction: column;
909
+ gap: 4px;
910
+ min-width: 0;
911
+ flex: 1;
912
+ }
913
+ .ag-card-top.svelte-n8lbn1 {
914
+ display: flex;
915
+ justify-content: space-between;
916
+ align-items: flex-start;
917
+ gap: 8px;
918
+ min-width: 0;
919
+ }
920
+ .ag-card-title.svelte-n8lbn1 {
921
+ font-size: 13px;
922
+ font-weight: 600;
923
+ line-height: 1.3;
924
+ word-break: break-word;
925
+ flex: 1;
926
+ min-width: 0;
927
+ }
928
+ .ag-card-meta.svelte-n8lbn1 {
929
+ font-size: 11px;
930
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
931
+ font-family: var(--dt-mono, monospace);
932
+ line-height: 1;
933
+ }
934
+ .ag-card-dur.svelte-n8lbn1 {
935
+ margin-left: 6px;
936
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
937
+ }
938
+ .ag-card-sub.svelte-n8lbn1 {
939
+ font-size: 11px;
940
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
941
+ line-height: 1;
942
+ }
943
+ .ag-card-loc.svelte-n8lbn1 {
944
+ font-size: 10px;
945
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
946
+ line-height: 1;
947
+ }
948
+ .ag-card-tags.svelte-n8lbn1 {
949
+ display: flex;
950
+ gap: 4px;
951
+ flex-wrap: wrap;
952
+ }
953
+ .ag-card-tag.svelte-n8lbn1 {
954
+ font: 500 9px / 1 var(--dt-sans, system-ui, sans-serif);
955
+ color: var(--ev-color, var(--dt-accent));
956
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
957
+ padding: 2px 5px;
958
+ border-radius: 3px;
959
+ white-space: nowrap;
960
+ }
961
+
962
+ /* ── Queue card variant ── */
963
+ .ag-card--q.svelte-n8lbn1 {
964
+ margin-bottom: 6px;
965
+ transition: border-color 150ms, transform 100ms;
966
+ }
967
+
968
+ .ag-card--q.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1) {
969
+ gap: 3px;
970
+ }
971
+ .ag-card--q.svelte-n8lbn1 .ag-card-tags:where(.svelte-n8lbn1) {
972
+ margin-top: 2px;
973
+ }
974
+ .ag-card-eta.svelte-n8lbn1 {
975
+ font-size: 9px;
976
+ font-weight: 600;
977
+ letter-spacing: 0.04em;
978
+ color: var(--dt-accent, #2563eb);
979
+ flex-shrink: 0;
980
+ white-space: nowrap;
981
+ }
982
+ .ag-card--hero.svelte-n8lbn1 {
983
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
984
+ border-color: color-mix(in srgb, var(--ev-color) 30%, transparent);
985
+ }
986
+ .ag-card--hero.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1) {
987
+ font-size: 16px;
988
+ font-weight: 700;
989
+ }
990
+ .ag-card--hero.svelte-n8lbn1 .ag-card-eta:where(.svelte-n8lbn1) {
991
+ font-size: 11px;
992
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 18%, transparent);
993
+ padding: 2px 7px;
994
+ border-radius: 4px;
995
+ }
996
+ .ag-card--hero.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1) {
997
+ padding: 14px 16px;
998
+ }
999
+
1000
+ /* ── Plan card variant ── */
1001
+
1002
+ .ag-card--plan.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1) {
1003
+ padding: 12px 14px;
1004
+ gap: 3px;
1005
+ }
1006
+ .ag-card--plan.svelte-n8lbn1 .ag-card-top:where(.svelte-n8lbn1) {
1007
+ align-items: baseline;
1008
+ }
1009
+ .ag-card-order.svelte-n8lbn1 {
1010
+ font-size: 10px;
1011
+ font-weight: 700;
1012
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1013
+ font-family: var(--dt-mono, monospace);
1014
+ flex-shrink: 0;
1015
+ }
1016
+ .ag-card--plan.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1) {
1017
+ font-size: 14px;
1018
+ }
1019
+ .ag-card--first.svelte-n8lbn1 {
1020
+ background: color-mix(in srgb, var(--ev-color) 20%, var(--dt-surface, var(--dt-bg, #ffffff)));
1021
+ border-color: color-mix(in srgb, var(--ev-color) 25%, transparent);
1022
+ }
1023
+ .ag-card--first.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1) {
1024
+ font-size: 16px;
1025
+ font-weight: 700;
1026
+ }
1027
+ .ag-card--plan.svelte-n8lbn1 .ag-card-sub:where(.svelte-n8lbn1) {
1028
+ padding-left: 22px;
1029
+ }
1030
+ .ag-card--plan.svelte-n8lbn1 .ag-card-tags:where(.svelte-n8lbn1) {
1031
+ padding-left: 22px;
1032
+ margin-top: 2px;
1033
+ }
1034
+
1035
+ /* ═══ The Queue: 2-column grid ═══ */
1036
+ .ag-q.svelte-n8lbn1 {
1037
+ display: grid;
1038
+ grid-template-columns: 1fr 1.8fr;
1039
+ gap: 0;
1040
+ flex: 1;
1041
+ padding: 8px 0 10px;
1042
+ min-height: 0;
1043
+ }
1044
+ /* Mobile: stack queue columns vertically */
1045
+ .ag--mobile.svelte-n8lbn1 .ag-q:where(.svelte-n8lbn1) {
1046
+ grid-template-columns: 1fr;
1047
+ min-height: auto;
1048
+ }
1049
+ .ag--mobile.svelte-n8lbn1 .ag-q-status:where(.svelte-n8lbn1) {
1050
+ border-right: none;
1051
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1052
+ padding-bottom: 10px;
1053
+ margin-bottom: 8px;
1054
+ overflow-y: visible;
1055
+ }
1056
+ .ag--mobile.svelte-n8lbn1 .ag-q-queue:where(.svelte-n8lbn1) {
1057
+ overflow-y: visible;
1058
+ padding-bottom: 16px;
1059
+ }
1060
+ .ag--mobile.svelte-n8lbn1 .ag-card-meta:where(.svelte-n8lbn1) {
1061
+ line-height: 1.3;
1062
+ padding-bottom: 1px;
1063
+ }
1064
+ /* Mobile: larger touch targets */
1065
+ .ag--mobile.svelte-n8lbn1 .ag-card-body:where(.svelte-n8lbn1) {
1066
+ padding: 14px 16px;
1067
+ }
1068
+ .ag--mobile.svelte-n8lbn1 .ag-card-title:where(.svelte-n8lbn1) {
1069
+ font-size: 15px;
1070
+ }
1071
+ .ag--mobile.svelte-n8lbn1 .ag-card--hero:where(.svelte-n8lbn1) .ag-card-title:where(.svelte-n8lbn1) {
1072
+ font-size: 18px;
1073
+ }
1074
+ .ag--mobile.svelte-n8lbn1 .ag-card--hero:where(.svelte-n8lbn1) .ag-card-body:where(.svelte-n8lbn1) {
1075
+ padding: 16px 18px;
1076
+ }
1077
+ .ag--mobile.svelte-n8lbn1 .ag-log-row:where(.svelte-n8lbn1) {
1078
+ padding: 12px 0;
1079
+ }
1080
+ .ag--mobile.svelte-n8lbn1 .ag-card--plan:where(.svelte-n8lbn1) .ag-card-body:where(.svelte-n8lbn1) {
1081
+ padding: 14px 16px;
1082
+ }
1083
+ .ag--mobile.svelte-n8lbn1 .ag-card--plan:where(.svelte-n8lbn1) .ag-card-title:where(.svelte-n8lbn1) {
1084
+ font-size: 15px;
1085
+ }
1086
+ .ag-q-label.svelte-n8lbn1 {
1087
+ font-size: 8px;
1088
+ font-weight: 600;
1089
+ letter-spacing: 0.14em;
1090
+ text-transform: uppercase;
1091
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1092
+ margin-bottom: 8px;
1093
+ padding: 0 12px;
1094
+ font-family: var(--dt-sans, system-ui, sans-serif);
1095
+ }
1096
+ .ag-q-empty.svelte-n8lbn1 {
1097
+ display: flex;
1098
+ align-items: center;
1099
+ justify-content: center;
1100
+ flex: 1;
1101
+ font-size: 13px;
1102
+ font-weight: 300;
1103
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1104
+ }
1105
+
1106
+ /* ── NOW column (includes Done above) ── */
1107
+ .ag-q-status.svelte-n8lbn1 {
1108
+ padding: 0 10px 0 14px;
1109
+ border-right: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1110
+ display: flex;
1111
+ flex-direction: column;
1112
+ overflow-y: auto;
1113
+ scrollbar-width: none;
1114
+ }
1115
+ .ag-q-status.svelte-n8lbn1::-webkit-scrollbar {
1116
+ display: none;
1117
+ }
1118
+ .ag-q-done-section.svelte-n8lbn1 {
1119
+ margin-bottom: 10px;
1120
+ padding-bottom: 8px;
1121
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1122
+ }
1123
+ .ag-q-clock.svelte-n8lbn1 {
1124
+ font-size: 10px;
1125
+ font-weight: 600;
1126
+ font-family: var(--dt-mono, monospace);
1127
+ color: var(--dt-accent, #2563eb);
1128
+ margin-left: 4px;
1129
+ }
1130
+ .ag-q-now.svelte-n8lbn1 {
1131
+ padding: 8px 10px;
1132
+ border-radius: 8px;
1133
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, var(--dt-surface, var(--dt-bg, #ffffff)));
1134
+ border: 1px solid color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
1135
+ cursor: pointer;
1136
+ transition: background 150ms, border-color 150ms;
1137
+ margin-right: 10px;
1138
+ }
1139
+ .ag-q-now.svelte-n8lbn1:hover {
1140
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 25%, var(--dt-surface, var(--dt-bg, #ffffff)));
1141
+ border-color: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 35%, transparent);
1142
+ }
1143
+ .ag-q-now.svelte-n8lbn1:focus-visible {
1144
+ outline: 2px solid var(--dt-accent, #2563eb);
1145
+ outline-offset: 2px;
1146
+ }
1147
+ .ag-q-now--selected.svelte-n8lbn1 {
1148
+ border-color: var(--ev-color, var(--dt-accent));
1149
+ }
1150
+ .ag-q-now-dot.svelte-n8lbn1 {
1151
+ width: 6px;
1152
+ height: 6px;
1153
+ border-radius: 50%;
1154
+ background: var(--ev-color, var(--dt-accent, #2563eb));
1155
+ margin-bottom: 6px;
1156
+ animation: svelte-n8lbn1-ag-pulse 2.5s ease-in-out infinite;
1157
+ }
1158
+ @keyframes svelte-n8lbn1-ag-pulse {
1159
+ 0%, 100% { opacity: 1; }
1160
+ 50% { opacity: 0.4; }
1161
+ }
1162
+ .ag-q-now-title.svelte-n8lbn1 {
1163
+ font-size: 11px;
1164
+ font-weight: 600;
1165
+ line-height: 1.2;
1166
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
1167
+ white-space: nowrap;
1168
+ overflow: hidden;
1169
+ text-overflow: ellipsis;
1170
+ margin-bottom: 3px;
1171
+ }
1172
+ .ag-q-now-time.svelte-n8lbn1 {
1173
+ font-size: 9px;
1174
+ font-family: var(--dt-mono, monospace);
1175
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1176
+ margin-bottom: 6px;
1177
+ }
1178
+ .ag-q-now-track.svelte-n8lbn1 {
1179
+ height: 2px;
1180
+ background: var(--dt-border, rgba(0, 0, 0, 0.08));
1181
+ border-radius: 1px;
1182
+ overflow: hidden;
1183
+ }
1184
+ .ag-q-now-fill.svelte-n8lbn1 {
1185
+ height: 100%;
1186
+ background: var(--ev-color, var(--dt-accent, #2563eb));
1187
+ border-radius: 1px;
1188
+ transition: width 1s linear;
1189
+ }
1190
+ .ag-q-free.svelte-n8lbn1 {
1191
+ padding: 8px 10px;
1192
+ margin-right: 10px;
1193
+ }
1194
+ .ag-q-free-label.svelte-n8lbn1 {
1195
+ font-size: 12px;
1196
+ font-weight: 300;
1197
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1198
+ margin-bottom: 2px;
1199
+ }
1200
+
1201
+ /* ── NEXT: hero center column ── */
1202
+ .ag-q-queue.svelte-n8lbn1 {
1203
+ padding: 0 16px;
1204
+ overflow-y: auto;
1205
+ scrollbar-width: none;
1206
+ display: flex;
1207
+ flex-direction: column;
1208
+ }
1209
+ .ag-q-queue.svelte-n8lbn1::-webkit-scrollbar {
1210
+ display: none;
1211
+ }
1212
+
1213
+
1214
+ .ag-q-done-item.svelte-n8lbn1 {
1215
+ display: flex;
1216
+ align-items: center;
1217
+ gap: 5px;
1218
+ padding: 3px 0;
1219
+ opacity: 0.35;
1220
+ cursor: pointer;
1221
+ }
1222
+ .ag-q-done-item.svelte-n8lbn1:hover {
1223
+ opacity: 0.6;
1224
+ }
1225
+ .ag-q-done-item.svelte-n8lbn1:focus-visible {
1226
+ outline: 2px solid var(--dt-accent, #2563eb);
1227
+ outline-offset: 2px;
1228
+ opacity: 0.6;
1229
+ }
1230
+ .ag-q-done-item--selected.svelte-n8lbn1 {
1231
+ opacity: 0.7;
1232
+ }
1233
+ .ag-q-done-check.svelte-n8lbn1 {
1234
+ font-size: 9px;
1235
+ color: var(--dt-success, rgba(22, 163, 74, 0.7));
1236
+ flex-shrink: 0;
1237
+ }
1238
+ .ag-q-done-title.svelte-n8lbn1 {
1239
+ font-size: 10px;
1240
+ line-height: 1.2;
1241
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1242
+ white-space: nowrap;
1243
+ overflow: hidden;
1244
+ text-overflow: ellipsis;
1245
+ text-decoration: line-through;
1246
+ text-decoration-color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1247
+ }
1248
+
1249
+ /* ═══ Past Day: "The Log" ═══ */
1250
+ .ag-log.svelte-n8lbn1 {
1251
+ flex: 1;
1252
+ padding: 8px 20px 12px;
1253
+ overflow-y: auto;
1254
+ scrollbar-width: none;
1255
+ opacity: 0.7;
1256
+ }
1257
+ .ag-log.svelte-n8lbn1::-webkit-scrollbar {
1258
+ display: none;
1259
+ }
1260
+ .ag-log-row.svelte-n8lbn1 {
1261
+ display: flex;
1262
+ align-items: center;
1263
+ gap: 10px;
1264
+ padding: 8px 0;
1265
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1266
+ cursor: pointer;
1267
+ transition: opacity 150ms;
1268
+ }
1269
+ .ag-log-row.svelte-n8lbn1:last-child {
1270
+ border-bottom: none;
1271
+ }
1272
+ .ag-log-row.svelte-n8lbn1:hover {
1273
+ opacity: 1;
1274
+ }
1275
+ .ag-log-row.svelte-n8lbn1:focus-visible {
1276
+ outline: 2px solid var(--dt-accent, #2563eb);
1277
+ outline-offset: 2px;
1278
+ }
1279
+ .ag-log-row--selected.svelte-n8lbn1 {
1280
+ opacity: 1;
1281
+ background: color-mix(in srgb, var(--ev-color) 6%, transparent);
1282
+ border-radius: 6px;
1283
+ padding-left: 8px;
1284
+ padding-right: 8px;
1285
+ }
1286
+ .ag-log-check.svelte-n8lbn1 {
1287
+ font-size: 10px;
1288
+ color: var(--dt-success, rgba(22, 163, 74, 0.7));
1289
+ flex-shrink: 0;
1290
+ }
1291
+ .ag-log-time.svelte-n8lbn1 {
1292
+ font-size: 11px;
1293
+ font-family: var(--dt-mono, monospace);
1294
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1295
+ width: 64px;
1296
+ flex-shrink: 0;
1297
+ }
1298
+ .ag-log-dot.svelte-n8lbn1 {
1299
+ width: 5px;
1300
+ height: 5px;
1301
+ border-radius: 50%;
1302
+ flex-shrink: 0;
1303
+ opacity: 0.6;
1304
+ }
1305
+ .ag-log-title.svelte-n8lbn1 {
1306
+ font-size: 13px;
1307
+ font-weight: 500;
1308
+ line-height: 1.2;
1309
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1310
+ flex: 1;
1311
+ white-space: nowrap;
1312
+ overflow: hidden;
1313
+ text-overflow: ellipsis;
1314
+ text-decoration: line-through;
1315
+ text-decoration-color: var(--dt-border, rgba(0, 0, 0, 0.08));
1316
+ }
1317
+ .ag-log-dur.svelte-n8lbn1 {
1318
+ font-size: 10px;
1319
+ font-family: var(--dt-mono, monospace);
1320
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1321
+ flex-shrink: 0;
1322
+ }
1323
+
1324
+ /* ═══ Compact Day ═══ */
1325
+ .ag-compact-list.svelte-n8lbn1 {
1326
+ flex: 1;
1327
+ padding: 8px 20px 12px;
1328
+ overflow-y: auto;
1329
+ scrollbar-width: none;
1330
+ }
1331
+ .ag-compact-list.svelte-n8lbn1::-webkit-scrollbar { display: none; }
1332
+ .ag-compact-row.svelte-n8lbn1 {
1333
+ display: flex;
1334
+ align-items: center;
1335
+ gap: 8px;
1336
+ padding: 4px 0;
1337
+ cursor: pointer;
1338
+ }
1339
+ .ag-compact-row--selected.svelte-n8lbn1 {
1340
+ background: color-mix(in srgb, var(--ev-color) 10%, transparent);
1341
+ border-radius: 4px;
1342
+ padding-left: 6px;
1343
+ padding-right: 6px;
1344
+ }
1345
+ .ag-compact-row.svelte-n8lbn1:hover .ag-compact-row-title:where(.svelte-n8lbn1) { color: var(--dt-text); }
1346
+ .ag-compact-row.svelte-n8lbn1:focus-visible {
1347
+ outline: 2px solid var(--dt-accent, #2563eb);
1348
+ outline-offset: 2px;
1349
+ }
1350
+ .ag-compact-row-dot.svelte-n8lbn1 {
1351
+ width: 5px;
1352
+ height: 5px;
1353
+ border-radius: 50%;
1354
+ background: var(--ev-color, var(--dt-accent));
1355
+ flex-shrink: 0;
1356
+ }
1357
+ .ag-compact-row-time.svelte-n8lbn1 {
1358
+ font-size: 11px;
1359
+ font-family: var(--dt-mono, monospace);
1360
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1361
+ min-width: 64px;
1362
+ flex-shrink: 0;
1363
+ }
1364
+ .ag-compact-row-title.svelte-n8lbn1 {
1365
+ font-size: 12px;
1366
+ font-weight: 500;
1367
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1368
+ flex: 1;
1369
+ white-space: nowrap;
1370
+ overflow: hidden;
1371
+ text-overflow: ellipsis;
1372
+ transition: color 150ms;
1373
+ }
1374
+ .ag-compact-row-dur.svelte-n8lbn1 {
1375
+ font-size: 10px;
1376
+ font-family: var(--dt-mono, monospace);
1377
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1378
+ flex-shrink: 0;
1379
+ }
1380
+ .ag-compact-row-sub.svelte-n8lbn1 {
1381
+ font-size: 10px;
1382
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1383
+ flex-shrink: 0;
1384
+ }
1385
+ .ag-compact-row-tag.svelte-n8lbn1 {
1386
+ font: 500 8px / 1 var(--dt-sans, system-ui, sans-serif);
1387
+ color: var(--ev-color, var(--dt-accent));
1388
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 12%, transparent);
1389
+ padding: 1px 4px;
1390
+ border-radius: 3px;
1391
+ white-space: nowrap;
1392
+ flex-shrink: 0;
1393
+ }
1394
+ .ag-compact-row--cancelled.svelte-n8lbn1 { opacity: 0.5; }
1395
+ .ag-compact-row--cancelled.svelte-n8lbn1 .ag-compact-row-title:where(.svelte-n8lbn1) { text-decoration: line-through; }
1396
+ .ag-compact-row--tentative.svelte-n8lbn1 { opacity: 0.65; }
1397
+ /* Mobile: larger touch targets for compact rows */
1398
+ .ag--mobile.svelte-n8lbn1 .ag-compact-row:where(.svelte-n8lbn1) { padding: 8px 0; }
1399
+ .ag--mobile.svelte-n8lbn1 .ag-compact-row-title:where(.svelte-n8lbn1) { font-size: 14px; }
1400
+ .ag--mobile.svelte-n8lbn1 .ag-compact-row-time:where(.svelte-n8lbn1) { font-size: 12px; }
1401
+
1402
+ /* ═══ Future Day: "The Plan" ═══ */
1403
+ .ag-plan.svelte-n8lbn1 {
1404
+ flex: 1;
1405
+ padding: 8px 20px 12px;
1406
+ overflow-y: auto;
1407
+ scrollbar-width: none;
1408
+ display: flex;
1409
+ flex-direction: column;
1410
+ gap: 6px;
1411
+ }
1412
+ .ag-plan.svelte-n8lbn1::-webkit-scrollbar {
1413
+ display: none;
1414
+ }
1415
+
1416
+ /* ═══ Container ═══ */
1417
+ .ag.svelte-uhwfyj {
1418
+ position: relative;
1419
+ overflow: hidden;
1420
+ user-select: none;
1421
+ display: flex;
1422
+ flex-direction: column;
1423
+ height: 100%;
1424
+ width: 100%;
1425
+ min-width: 0;
1426
+ box-sizing: border-box;
1427
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
1428
+ font-family: var(--dt-sans, system-ui, sans-serif);
1429
+ }
1430
+ .ag--auto.svelte-uhwfyj {
1431
+ height: auto;
1432
+ overflow: visible;
1433
+ }
1434
+
1435
+ /* ═══ Body ═══ */
1436
+ .ag-body.svelte-uhwfyj {
1437
+ flex: 1;
1438
+ min-width: 0;
1439
+ overflow-y: auto;
1440
+ overflow-x: hidden;
1441
+ box-sizing: border-box;
1442
+ padding-top: 8px;
1443
+ scrollbar-width: thin;
1444
+ scrollbar-color: var(--dt-border) transparent;
1445
+ }
1446
+ .ag--auto.svelte-uhwfyj .ag-body:where(.svelte-uhwfyj) {
1447
+ overflow-y: visible;
1448
+ }
1449
+ .ag-body.svelte-uhwfyj::-webkit-scrollbar {
1450
+ width: 4px;
1451
+ }
1452
+ .ag-body.svelte-uhwfyj::-webkit-scrollbar-thumb {
1453
+ background: var(--dt-border);
1454
+ border-radius: 2px;
1455
+ }
1456
+
1457
+ /* ═══ All-day chips ═══ */
1458
+ .ag-allday.svelte-uhwfyj {
1459
+ display: flex;
1460
+ flex-wrap: wrap;
1461
+ gap: 4px;
1462
+ padding: 4px 14px 6px;
1463
+ }
1464
+ .ag-allday-chip.svelte-uhwfyj {
1465
+ display: flex;
1466
+ align-items: center;
1467
+ gap: 4px;
1468
+ padding: 2px 8px;
1469
+ border-radius: 5px;
1470
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, var(--dt-bg, #ffffff)));
1471
+ border: 1px solid color-mix(in srgb, var(--ev-color) 18%, transparent);
1472
+ cursor: pointer;
1473
+ transition: background 0.15s, border-color 0.15s;
1474
+ }
1475
+ .ag-allday-chip.svelte-uhwfyj:hover {
1476
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, var(--dt-bg, #ffffff)));
1477
+ border-color: color-mix(in srgb, var(--ev-color) 30%, transparent);
1478
+ }
1479
+ .ag-allday-chip.svelte-uhwfyj:focus-visible {
1480
+ outline: 2px solid var(--dt-accent, #2563eb);
1481
+ outline-offset: 2px;
1482
+ }
1483
+ .ag-allday-chip--selected.svelte-uhwfyj {
1484
+ border-color: var(--ev-color);
1485
+ background: color-mix(in srgb, var(--ev-color) 18%, var(--dt-surface, var(--dt-bg, #ffffff)));
1486
+ }
1487
+ .ag-allday-dot.svelte-uhwfyj {
1488
+ width: 5px;
1489
+ height: 5px;
1490
+ border-radius: 50%;
1491
+ background: var(--ev-color);
1492
+ flex-shrink: 0;
1493
+ }
1494
+ .ag-allday-title.svelte-uhwfyj {
1495
+ font: 500 0.7rem/1.2 var(--dt-sans, system-ui, sans-serif);
1496
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
1497
+ white-space: nowrap;
1498
+ }
1499
+
1500
+ /* ═══ Shared: event card ═══ */
1501
+ .ag-card.svelte-uhwfyj {
1502
+ display: flex;
1503
+ align-items: stretch;
1504
+ border-radius: 6px;
1505
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, var(--dt-bg, #ffffff)));
1506
+ border: 1px solid color-mix(in srgb, var(--ev-color) 8%, var(--dt-border, rgba(0, 0, 0, 0.08)));
1507
+ overflow: hidden;
1508
+ cursor: pointer;
1509
+ transition: background 150ms, border-color 150ms;
1510
+ }
1511
+ .ag-card.svelte-uhwfyj:hover {
1512
+ background: color-mix(in srgb, var(--ev-color) 20%, var(--dt-surface, var(--dt-bg, #ffffff)));
1513
+ border-color: color-mix(in srgb, var(--ev-color) 30%, transparent);
1514
+ }
1515
+ .ag-card.svelte-uhwfyj:focus-visible {
1516
+ outline: 2px solid var(--dt-accent, #2563eb);
1517
+ outline-offset: 2px;
1518
+ }
1519
+ .ag-card--selected.svelte-uhwfyj {
1520
+ border-color: var(--ev-color);
1521
+ background: color-mix(in srgb, var(--ev-color) 20%, var(--dt-surface, var(--dt-bg, #ffffff)));
1522
+ }
1523
+ .ag-card--cancelled.svelte-uhwfyj {
1524
+ opacity: 0.5;
1525
+ }
1526
+ .ag-card--cancelled.svelte-uhwfyj .ag-card-title:where(.svelte-uhwfyj) {
1527
+ text-decoration: line-through;
1528
+ }
1529
+ .ag-card--tentative.svelte-uhwfyj {
1530
+ opacity: 0.65;
1531
+ border-style: dashed;
1532
+ }
1533
+ .ag-card--full.svelte-uhwfyj {
1534
+ opacity: 0.55;
1535
+ }
1536
+ .ag-card--limited.svelte-uhwfyj {
1537
+ opacity: 0.65;
1538
+ border-style: dashed;
1539
+ }
1540
+ .ag-card-body.svelte-uhwfyj {
1541
+ padding: 7px 10px;
1542
+ display: flex;
1543
+ flex-direction: column;
1544
+ gap: 2px;
1545
+ min-width: 0;
1546
+ flex: 1;
1547
+ }
1548
+ .ag-card-title.svelte-uhwfyj {
1549
+ font-size: 13px;
1550
+ font-weight: 600;
1551
+ line-height: 1.3;
1552
+ word-break: break-word;
1553
+ flex: 1;
1554
+ min-width: 0;
1555
+ }
1556
+ .ag-card-meta.svelte-uhwfyj {
1557
+ display: flex;
1558
+ align-items: center;
1559
+ font-size: 11px;
1560
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1561
+ font-family: var(--dt-mono, monospace);
1562
+ line-height: 1;
1563
+ }
1564
+ .ag-card-dur.svelte-uhwfyj {
1565
+ margin-left: 6px;
1566
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1567
+ }
1568
+ .ag-card-eta.svelte-uhwfyj {
1569
+ margin-left: auto;
1570
+ font-size: 10px;
1571
+ font-weight: 600;
1572
+ color: color-mix(in srgb, var(--ev-color) 80%, var(--dt-text));
1573
+ opacity: 0.85;
1574
+ letter-spacing: 0.02em;
1575
+ }
1576
+ .ag-card-sub.svelte-uhwfyj {
1577
+ font-size: 11px;
1578
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1579
+ line-height: 1;
1580
+ }
1581
+ .ag-card-loc.svelte-uhwfyj {
1582
+ font-size: 10px;
1583
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1584
+ line-height: 1;
1585
+ }
1586
+ .ag-card-tags.svelte-uhwfyj {
1587
+ display: flex;
1588
+ gap: 4px;
1589
+ flex-wrap: wrap;
1590
+ }
1591
+ .ag-card-tag.svelte-uhwfyj {
1592
+ font: 500 9px / 1 var(--dt-sans, system-ui, sans-serif);
1593
+ color: var(--ev-color, var(--dt-accent));
1594
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
1595
+ padding: 2px 5px;
1596
+ border-radius: 3px;
1597
+ white-space: nowrap;
1598
+ }
1599
+ .ag-card-progress.svelte-uhwfyj {
1600
+ height: 3px;
1601
+ background: var(--dt-border, rgba(0, 0, 0, 0.08));
1602
+ border-radius: 2px;
1603
+ overflow: hidden;
1604
+ margin-top: 2px;
1605
+ }
1606
+ .ag-card-progress-fill.svelte-uhwfyj {
1607
+ height: 100%;
1608
+ background: var(--ev-color, var(--dt-accent));
1609
+ border-radius: 2px;
1610
+ transition: width 1s linear;
1611
+ }
1612
+
1613
+ /* ═══ Week day groups ═══ */
1614
+ .ag-wday.svelte-uhwfyj {
1615
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1616
+ }
1617
+ .ag-wday--today.svelte-uhwfyj {
1618
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 2%, transparent);
1619
+ }
1620
+ .ag-wday--tomorrow.svelte-uhwfyj .ag-card:where(.svelte-uhwfyj) {
1621
+ opacity: 0.82;
1622
+ }
1623
+ .ag-wday--past.svelte-uhwfyj {
1624
+ opacity: 0.4;
1625
+ }
1626
+ .ag-wday--past.svelte-uhwfyj .ag-wday-head:where(.svelte-uhwfyj) {
1627
+ padding: 8px 20px;
1628
+ }
1629
+ .ag-wday--disabled.svelte-uhwfyj {
1630
+ position: relative;
1631
+ }
1632
+ .ag-wday--disabled.svelte-uhwfyj::after {
1633
+ content: '';
1634
+ position: absolute;
1635
+ inset: 0;
1636
+ background: repeating-linear-gradient(
1637
+ 135deg,
1638
+ transparent,
1639
+ transparent 4px,
1640
+ rgba(128, 128, 128, 0.08) 4px,
1641
+ rgba(128, 128, 128, 0.08) 8px
1642
+ );
1643
+ pointer-events: none;
1644
+ }
1645
+ .ag-wday-custom-header.svelte-uhwfyj {
1646
+ padding: 2px 0 4px;
1647
+ }
1648
+
1649
+ .ag-wday-head.svelte-uhwfyj {
1650
+ display: flex;
1651
+ justify-content: space-between;
1652
+ align-items: center;
1653
+ padding: 8px 20px;
1654
+ }
1655
+ .ag-wday-head-left.svelte-uhwfyj {
1656
+ display: flex;
1657
+ align-items: center;
1658
+ gap: 8px;
1659
+ }
1660
+ .ag-wday-badge.svelte-uhwfyj {
1661
+ font-size: 10px;
1662
+ font-weight: 600;
1663
+ letter-spacing: 0.08em;
1664
+ text-transform: uppercase;
1665
+ color: var(--dt-accent, #2563eb);
1666
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 12%, transparent);
1667
+ padding: 2px 7px;
1668
+ border-radius: 3px;
1669
+ }
1670
+ .ag-wday-badge--muted.svelte-uhwfyj {
1671
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1672
+ background: color-mix(
1673
+ in srgb,
1674
+ var(--dt-text-2, rgba(0, 0, 0, 0.54)) 10%,
1675
+ transparent
1676
+ );
1677
+ }
1678
+ .ag-wday-name.svelte-uhwfyj {
1679
+ font-size: 13px;
1680
+ font-weight: 600;
1681
+ }
1682
+ .ag-wday-date.svelte-uhwfyj {
1683
+ font-size: 11px;
1684
+ font-family: var(--dt-mono, monospace);
1685
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1686
+ }
1687
+
1688
+ .ag-wday-empty.svelte-uhwfyj {
1689
+ padding: 2px 20px 6px;
1690
+ font-size: 11px;
1691
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1692
+ font-style: italic;
1693
+ }
1694
+
1695
+ /* Expanded day */
1696
+ .ag-wday-expanded.svelte-uhwfyj {
1697
+ padding: 0 20px 10px;
1698
+ }
1699
+ .ag-wslot.svelte-uhwfyj {
1700
+ margin-bottom: 4px;
1701
+ }
1702
+ .ag-wslot-header.svelte-uhwfyj {
1703
+ display: flex;
1704
+ align-items: baseline;
1705
+ gap: 8px;
1706
+ padding: 2px 0;
1707
+ }
1708
+ .ag-wslot-now.svelte-uhwfyj {
1709
+ font-size: 9px;
1710
+ font-weight: 700;
1711
+ letter-spacing: 0.08em;
1712
+ text-transform: uppercase;
1713
+ color: var(--dt-accent, #2563eb);
1714
+ }
1715
+ .ag-wslot-cards.svelte-uhwfyj {
1716
+ display: flex;
1717
+ flex-direction: column;
1718
+ gap: 4px;
1719
+ }
1720
+ .ag-wslot-cards--multi.svelte-uhwfyj {
1721
+ display: grid;
1722
+ grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
1723
+ gap: 4px;
1724
+ }
1725
+ .ag-wday-past-line.svelte-uhwfyj {
1726
+ font-size: 10px;
1727
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1728
+ padding: 6px 0 0;
1729
+ opacity: 0.5;
1730
+ }
1731
+
1732
+ /* Compact day events */
1733
+ .ag-wday-compact.svelte-uhwfyj {
1734
+ padding: 0 20px 6px;
1735
+ }
1736
+ .ag-compact.svelte-uhwfyj {
1737
+ display: flex;
1738
+ align-items: center;
1739
+ gap: 6px;
1740
+ padding: 3px 0;
1741
+ cursor: pointer;
1742
+ min-width: 0;
1743
+ overflow: hidden;
1744
+ }
1745
+ .ag-compact--selected.svelte-uhwfyj {
1746
+ background: color-mix(in srgb, var(--ev-color) 10%, transparent);
1747
+ border-radius: 4px;
1748
+ padding-left: 6px;
1749
+ padding-right: 6px;
1750
+ }
1751
+ .ag-compact.svelte-uhwfyj:hover .ag-compact-title:where(.svelte-uhwfyj) {
1752
+ color: var(--dt-text);
1753
+ }
1754
+ .ag-compact.svelte-uhwfyj:focus-visible {
1755
+ outline: 2px solid var(--dt-accent, #2563eb);
1756
+ outline-offset: 2px;
1757
+ }
1758
+ .ag-compact-dot.svelte-uhwfyj {
1759
+ width: 5px;
1760
+ height: 5px;
1761
+ border-radius: 50%;
1762
+ background: var(--ev-color, var(--dt-accent));
1763
+ flex-shrink: 0;
1764
+ }
1765
+ .ag-compact-time.svelte-uhwfyj {
1766
+ font-size: 11px;
1767
+ font-family: var(--dt-mono, monospace);
1768
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1769
+ min-width: 40px;
1770
+ flex-shrink: 0;
1771
+ white-space: nowrap;
1772
+ }
1773
+ .ag-compact-title.svelte-uhwfyj {
1774
+ font-size: 12px;
1775
+ font-weight: 500;
1776
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1777
+ flex: 1;
1778
+ min-width: 0;
1779
+ white-space: nowrap;
1780
+ overflow: hidden;
1781
+ text-overflow: ellipsis;
1782
+ transition: color 150ms;
1783
+ }
1784
+ .ag-compact-dur.svelte-uhwfyj {
1785
+ font-size: 10px;
1786
+ font-family: var(--dt-mono, monospace);
1787
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1788
+ flex-shrink: 0;
1789
+ white-space: nowrap;
1790
+ }
1791
+ .ag-compact-sub.svelte-uhwfyj {
1792
+ font-size: 10px;
1793
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1794
+ flex-shrink: 0;
1795
+ white-space: nowrap;
1796
+ overflow: hidden;
1797
+ text-overflow: ellipsis;
1798
+ max-width: 120px;
1799
+ }
1800
+ .ag-compact-loc.svelte-uhwfyj {
1801
+ font-size: 9px;
1802
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1803
+ flex-shrink: 0;
1804
+ white-space: nowrap;
1805
+ overflow: hidden;
1806
+ text-overflow: ellipsis;
1807
+ max-width: 100px;
1808
+ }
1809
+ .ag-compact--cancelled.svelte-uhwfyj {
1810
+ opacity: 0.5;
1811
+ }
1812
+ .ag-compact--cancelled.svelte-uhwfyj .ag-compact-title:where(.svelte-uhwfyj) {
1813
+ text-decoration: line-through;
1814
+ }
1815
+ .ag-compact--tentative.svelte-uhwfyj {
1816
+ opacity: 0.65;
1817
+ }
1818
+ .ag-compact--full.svelte-uhwfyj {
1819
+ opacity: 0.55;
1820
+ }
1821
+ .ag-compact--limited.svelte-uhwfyj {
1822
+ opacity: 0.65;
1823
+ }
1824
+ .ag-compact-tag.svelte-uhwfyj {
1825
+ font: 500 8px / 1 var(--dt-sans, system-ui, sans-serif);
1826
+ color: var(--ev-color, var(--dt-accent));
1827
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 12%, transparent);
1828
+ padding: 1px 4px;
1829
+ border-radius: 3px;
1830
+ white-space: nowrap;
1831
+ flex-shrink: 0;
1832
+ max-width: 80px;
1833
+ overflow: hidden;
1834
+ text-overflow: ellipsis;
1835
+ }
1836
+ .ag-compact-more.svelte-uhwfyj {
1837
+ font-size: 11px;
1838
+ color: var(--dt-text-3);
1839
+ padding: 2px 0 0 13px;
1840
+ }
1841
+
1842
+ /* ═══ Mobile adaptations ═══ */
1843
+ .ag--mobile.svelte-uhwfyj .ag-wday-head:where(.svelte-uhwfyj) {
1844
+ padding: 12px 16px;
1845
+ }
1846
+ .ag--mobile.svelte-uhwfyj .ag-wday-expanded:where(.svelte-uhwfyj) {
1847
+ padding: 0 16px 12px;
1848
+ }
1849
+ .ag--mobile.svelte-uhwfyj .ag-wday-compact:where(.svelte-uhwfyj) {
1850
+ padding: 0 16px 12px;
1851
+ }
1852
+ .ag--mobile.svelte-uhwfyj .ag-card-body:where(.svelte-uhwfyj) {
1853
+ padding: 12px 14px;
1854
+ }
1855
+ .ag--mobile.svelte-uhwfyj .ag-card-title:where(.svelte-uhwfyj) {
1856
+ font-size: 14px;
1857
+ }
1858
+ .ag--mobile.svelte-uhwfyj .ag-compact:where(.svelte-uhwfyj) {
1859
+ padding: 8px 0;
1860
+ }
1861
+ .ag--mobile.svelte-uhwfyj .ag-compact-title:where(.svelte-uhwfyj) {
1862
+ font-size: 14px;
1863
+ }
1864
+ .ag--mobile.svelte-uhwfyj .ag-compact-time:where(.svelte-uhwfyj) {
1865
+ font-size: 12px;
1866
+ }
1867
+ .ag--mobile.svelte-uhwfyj .ag-wslot-cards--multi:where(.svelte-uhwfyj) {
1868
+ grid-template-columns: 1fr;
1869
+ }
1870
+
1871
+ /* ─── Container ──────────────────────────────────── */
1872
+ .mb.svelte-zbkzcp {
1873
+ position: relative;
1874
+ display: flex;
1875
+ flex-direction: column;
1876
+ user-select: none;
1877
+ font-variant-numeric: tabular-nums;
1878
+ overflow: hidden;
1879
+ background: var(--dt-bg, #fff);
1880
+ -webkit-tap-highlight-color: transparent;
1881
+ }
1882
+ .mb--auto.svelte-zbkzcp { overflow: visible; }
1883
+
1884
+ /* ─── All-day bar ────────────────────────────────── */
1885
+ .mb-allday.svelte-zbkzcp {
1886
+ display: flex;
1887
+ gap: 4px;
1888
+ padding: 4px 8px;
1889
+ overflow-x: auto;
1890
+ scrollbar-width: none;
1891
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
1892
+ flex-shrink: 0;
1893
+ align-items: center;
1894
+ }
1895
+ .mb-allday.svelte-zbkzcp::-webkit-scrollbar { display: none; }
1896
+
1897
+ .mb-allday-chip.svelte-zbkzcp {
1898
+ display: flex;
1899
+ align-items: center;
1900
+ gap: 4px;
1901
+ padding: 4px 8px;
1902
+ border-radius: 5px;
1903
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, #f9fafb));
1904
+ border: none;
1905
+ cursor: pointer;
1906
+ flex-shrink: 0;
1907
+ transition: background 120ms;
1908
+ -webkit-tap-highlight-color: transparent;
1909
+ max-width: 160px;
1910
+ }
1911
+ .mb-allday-chip.svelte-zbkzcp:active {
1912
+ background: color-mix(in srgb, var(--ev-color) 22%, var(--dt-surface, #f9fafb));
1913
+ }
1914
+ .mb-allday-chip--selected.svelte-zbkzcp {
1915
+ box-shadow: 0 0 0 1.5px var(--ev-color);
1916
+ }
1917
+
1918
+ .mb-allday-dot.svelte-zbkzcp {
1919
+ width: 6px;
1920
+ height: 6px;
1921
+ border-radius: 50%;
1922
+ background: var(--ev-color);
1923
+ flex-shrink: 0;
1924
+ }
1925
+
1926
+ .mb-allday-title.svelte-zbkzcp {
1927
+ font: 500 11px/1 var(--dt-sans, system-ui, sans-serif);
1928
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
1929
+ white-space: nowrap;
1930
+ max-width: 100px;
1931
+ overflow: hidden;
1932
+ text-overflow: ellipsis;
1933
+ }
1934
+
1935
+ .mb-allday-span.svelte-zbkzcp {
1936
+ font: 400 10px/1 var(--dt-sans, system-ui, sans-serif);
1937
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1938
+ }
1939
+
1940
+ .mb-allday-more.svelte-zbkzcp {
1941
+ font: 500 11px/1 var(--dt-sans, system-ui, sans-serif);
1942
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
1943
+ white-space: nowrap;
1944
+ flex-shrink: 0;
1945
+ padding: 0 4px;
1946
+ }
1947
+
1948
+ /* ─── Grid ───────────────────────────────────────── */
1949
+ .mb-grid.svelte-zbkzcp {
1950
+ flex: 1;
1951
+ overflow-y: auto;
1952
+ overflow-x: hidden;
1953
+ -webkit-overflow-scrolling: touch;
1954
+ scrollbar-width: thin;
1955
+ scrollbar-color: var(--dt-scrollbar, rgba(0, 0, 0, 0.1)) transparent;
1956
+ position: relative;
1957
+ padding-top: 8px;
1958
+ }
1959
+ .mb--auto.svelte-zbkzcp .mb-grid:where(.svelte-zbkzcp) { overflow-y: visible; }
1960
+
1961
+ .mb-grid-inner.svelte-zbkzcp {
1962
+ position: relative;
1963
+ min-width: 100%;
1964
+ }
1965
+
1966
+ /* ─── Hour row ───────────────────────────────────── */
1967
+ .mb-hour.svelte-zbkzcp {
1968
+ position: absolute;
1969
+ left: 0;
1970
+ right: 0;
1971
+ display: flex;
1972
+ align-items: flex-start;
1973
+ }
1974
+
1975
+ .mb-hour-label.svelte-zbkzcp {
1976
+ width: 40px;
1977
+ flex-shrink: 0;
1978
+ font: 500 11px/1 var(--dt-mono, ui-monospace, monospace);
1979
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
1980
+ text-align: right;
1981
+ padding-right: 8px;
1982
+ padding-top: 0;
1983
+ position: relative;
1984
+ top: -6px;
1985
+ }
1986
+
1987
+ .mb-hour-line.svelte-zbkzcp {
1988
+ flex: 1;
1989
+ height: 1px;
1990
+ background: var(--dt-border, rgba(0, 0, 0, 0.08));
1991
+ }
1992
+
1993
+ .mb-hour--blocked.svelte-zbkzcp {
1994
+ background: repeating-linear-gradient(
1995
+ -45deg,
1996
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 3%, transparent),
1997
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 3%, transparent) 4px,
1998
+ transparent 4px,
1999
+ transparent 8px
2000
+ );
2001
+ }
2002
+
2003
+ .mb-blocked-label.svelte-zbkzcp {
2004
+ position: absolute;
2005
+ left: 44px;
2006
+ top: 50%;
2007
+ transform: translateY(-50%);
2008
+ font: 500 9px/1 var(--dt-sans, system-ui, sans-serif);
2009
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2010
+ text-transform: uppercase;
2011
+ letter-spacing: 0.04em;
2012
+ }
2013
+
2014
+ /* ─── Now line ───────────────────────────────────── */
2015
+ .mb-now.svelte-zbkzcp {
2016
+ position: absolute;
2017
+ left: 0;
2018
+ right: 0;
2019
+ z-index: 10;
2020
+ display: flex;
2021
+ align-items: center;
2022
+ pointer-events: none;
2023
+ }
2024
+
2025
+ .mb-now-label.svelte-zbkzcp {
2026
+ width: 40px;
2027
+ flex-shrink: 0;
2028
+ text-align: right;
2029
+ padding-right: 6px;
2030
+ font: 700 10px/1 var(--dt-mono, ui-monospace, monospace);
2031
+ color: var(--dt-accent, #2563eb);
2032
+ }
2033
+
2034
+ .mb-now-line.svelte-zbkzcp {
2035
+ flex: 1;
2036
+ height: 2px;
2037
+ background: var(--dt-accent, #2563eb);
2038
+ box-shadow: 0 0 6px var(--dt-glow, rgba(37, 99, 235, 0.25));
2039
+ position: relative;
2040
+ }
2041
+
2042
+ .mb-now-line.svelte-zbkzcp::before {
2043
+ content: '';
2044
+ position: absolute;
2045
+ left: -4px;
2046
+ top: -4px;
2047
+ width: 10px;
2048
+ height: 10px;
2049
+ border-radius: 50%;
2050
+ background: var(--dt-accent, #2563eb);
2051
+ }
2052
+
2053
+ /* ─── Events ─────────────────────────────────────── */
2054
+ .mb-event.svelte-zbkzcp {
2055
+ position: absolute;
2056
+ z-index: 5;
2057
+ border-radius: 8px;
2058
+ cursor: pointer;
2059
+ background: color-mix(in srgb, var(--ev-color) 12%, var(--dt-surface, #f9fafb));
2060
+ border: none;
2061
+ display: flex;
2062
+ align-items: stretch;
2063
+ overflow: hidden;
2064
+ transition: box-shadow 120ms, background 120ms;
2065
+ text-align: left;
2066
+ padding: 0;
2067
+ -webkit-tap-highlight-color: transparent;
2068
+ min-height: 24px;
2069
+ }
2070
+ .mb-event.svelte-zbkzcp:active {
2071
+ background: color-mix(in srgb, var(--ev-color) 20%, var(--dt-surface, #f9fafb));
2072
+ }
2073
+ .mb-event--selected.svelte-zbkzcp {
2074
+ box-shadow: 0 0 0 2px var(--ev-color),
2075
+ 0 2px 12px color-mix(in srgb, var(--ev-color) 25%, transparent);
2076
+ }
2077
+ .mb-event--current.svelte-zbkzcp {
2078
+ background: color-mix(in srgb, var(--ev-color) 18%, var(--dt-surface, #f9fafb));
2079
+ }
2080
+ .mb-event--next.svelte-zbkzcp {
2081
+ background: color-mix(in srgb, var(--ev-color) 8%, var(--dt-surface, #f9fafb));
2082
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
2083
+ }
2084
+ .mb-event--cancelled.svelte-zbkzcp {
2085
+ opacity: 0.5;
2086
+ }
2087
+ .mb-event--cancelled.svelte-zbkzcp .mb-ev-title:where(.svelte-zbkzcp) {
2088
+ text-decoration: line-through;
2089
+ }
2090
+ .mb-event--tentative.svelte-zbkzcp {
2091
+ opacity: 0.65;
2092
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
2093
+ }
2094
+ .mb-event--full.svelte-zbkzcp {
2095
+ opacity: 0.55;
2096
+ }
2097
+ .mb-event--limited.svelte-zbkzcp {
2098
+ opacity: 0.65;
2099
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
2100
+ }
2101
+
2102
+ .mb-ev-stripe.svelte-zbkzcp {
2103
+ width: 4px;
2104
+ background: var(--ev-color);
2105
+ flex-shrink: 0;
2106
+ border-radius: 8px 0 0 8px;
2107
+ }
2108
+
2109
+ .mb-ev-body.svelte-zbkzcp {
2110
+ flex: 1;
2111
+ min-width: 0;
2112
+ padding: 4px 8px;
2113
+ display: flex;
2114
+ flex-direction: column;
2115
+ gap: 1px;
2116
+ justify-content: center;
2117
+ }
2118
+
2119
+ .mb-ev-title.svelte-zbkzcp {
2120
+ font: 600 13px/1.2 var(--dt-sans, system-ui, sans-serif);
2121
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2122
+ white-space: nowrap;
2123
+ overflow: hidden;
2124
+ text-overflow: ellipsis;
2125
+ }
2126
+
2127
+ .mb-ev-time.svelte-zbkzcp {
2128
+ font: 400 11px/1 var(--dt-mono, ui-monospace, monospace);
2129
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2130
+ }
2131
+
2132
+ .mb-ev-sub.svelte-zbkzcp {
2133
+ font: 400 11px/1.1 var(--dt-sans, system-ui, sans-serif);
2134
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2135
+ white-space: nowrap;
2136
+ overflow: hidden;
2137
+ text-overflow: ellipsis;
2138
+ }
2139
+
2140
+ .mb-ev-loc.svelte-zbkzcp {
2141
+ font: 400 10px/1 var(--dt-sans, system-ui, sans-serif);
2142
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2143
+ white-space: nowrap;
2144
+ overflow: hidden;
2145
+ text-overflow: ellipsis;
2146
+ }
2147
+
2148
+ .mb-ev-tags.svelte-zbkzcp {
2149
+ display: flex;
2150
+ gap: 4px;
2151
+ margin-top: 2px;
2152
+ }
2153
+
2154
+ .mb-ev-tag.svelte-zbkzcp {
2155
+ font: 500 9px/1 var(--dt-sans, system-ui, sans-serif);
2156
+ color: var(--ev-color, var(--dt-accent));
2157
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
2158
+ padding: 2px 5px;
2159
+ border-radius: 3px;
2160
+ white-space: nowrap;
2161
+ }
2162
+
2163
+ .mb-ev-live.svelte-zbkzcp {
2164
+ position: absolute;
2165
+ top: 6px;
2166
+ right: 6px;
2167
+ width: 7px;
2168
+ height: 7px;
2169
+ border-radius: 50%;
2170
+ background: var(--ev-color, var(--dt-accent));
2171
+ animation: svelte-zbkzcp-mb-pulse 2s ease-in-out infinite;
2172
+ }
2173
+ .mb-ev-next-badge.svelte-zbkzcp {
2174
+ position: absolute;
2175
+ top: 4px;
2176
+ right: 4px;
2177
+ font: 600 8px/1 var(--dt-sans, system-ui, sans-serif);
2178
+ text-transform: uppercase;
2179
+ letter-spacing: 0.06em;
2180
+ color: var(--ev-color, var(--dt-accent));
2181
+ background: color-mix(in srgb, var(--ev-color, var(--dt-accent)) 15%, transparent);
2182
+ padding: 2px 5px;
2183
+ border-radius: 3px;
2184
+ white-space: nowrap;
2185
+ }
2186
+
2187
+ @keyframes svelte-zbkzcp-mb-pulse {
2188
+ 0%, 100% { opacity: 1; }
2189
+ 50% { opacity: 0.4; }
2190
+ }
2191
+
2192
+ /* ─── Focus ──────────────────────────────────────── */
2193
+ .mb-event.svelte-zbkzcp:focus-visible {
2194
+ outline: 2px solid var(--dt-accent, #2563eb);
2195
+ outline-offset: 2px;
2196
+ }
2197
+
2198
+ /* ─── Container ──────────────────────────────────── */
2199
+ .mw.svelte-1d18hkf {
2200
+ position: relative;
2201
+ display: flex;
2202
+ flex-direction: column;
2203
+ user-select: none;
2204
+ font-variant-numeric: tabular-nums;
2205
+ overflow: hidden;
2206
+ background: var(--dt-bg, #fff);
2207
+ -webkit-tap-highlight-color: transparent;
2208
+ }
2209
+ .mw--auto.svelte-1d18hkf { overflow: visible; }
2210
+
2211
+ /* ─── Scrollable day list ────────────────────────── */
2212
+ .mw-list.svelte-1d18hkf {
2213
+ flex: 1;
2214
+ overflow-y: auto;
2215
+ -webkit-overflow-scrolling: touch;
2216
+ scrollbar-width: thin;
2217
+ scrollbar-color: var(--dt-scrollbar, rgba(0, 0, 0, 0.1)) transparent;
2218
+ }
2219
+ .mw--auto.svelte-1d18hkf .mw-list:where(.svelte-1d18hkf) { overflow-y: visible; }
2220
+
2221
+ /* ─── Day row ────────────────────────────────────── */
2222
+ .mw-row.svelte-1d18hkf {
2223
+ display: flex;
2224
+ align-items: center;
2225
+ gap: 12px;
2226
+ position: relative;
2227
+ padding: 10px 12px;
2228
+ background: transparent;
2229
+ transition: background 120ms;
2230
+ text-align: left;
2231
+ width: 100%;
2232
+ -webkit-tap-highlight-color: transparent;
2233
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2234
+ min-height: 56px;
2235
+ }
2236
+ .mw-row.svelte-1d18hkf:last-child {
2237
+ border-bottom: none;
2238
+ }
2239
+ .mw-row.svelte-1d18hkf:has(.mw-row-target:where(.svelte-1d18hkf):active) {
2240
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 6%, transparent);
2241
+ }
2242
+ .mw-row--today.svelte-1d18hkf {
2243
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 4%, transparent);
2244
+ }
2245
+ .mw-row--past.svelte-1d18hkf {
2246
+ opacity: 0.5;
2247
+ }
2248
+ .mw-row--disabled.svelte-1d18hkf {
2249
+ background-image: repeating-linear-gradient(
2250
+ 135deg,
2251
+ transparent,
2252
+ transparent 6px,
2253
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 6px,
2254
+ color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 4%, transparent) 12px
2255
+ );
2256
+ }
2257
+ .mw-row-target.svelte-1d18hkf {
2258
+ position: absolute;
2259
+ inset: 0;
2260
+ z-index: 0;
2261
+ border: none;
2262
+ background: transparent;
2263
+ cursor: pointer;
2264
+ padding: 0;
2265
+ -webkit-tap-highlight-color: transparent;
2266
+ }
2267
+ .mw-row-target.svelte-1d18hkf:disabled {
2268
+ cursor: default;
2269
+ }
2270
+ .mw-row-target.svelte-1d18hkf:focus-visible {
2271
+ outline: 2px solid var(--dt-accent, #2563eb);
2272
+ outline-offset: -2px;
2273
+ }
2274
+
2275
+ /* ─── Date column ────────────────────────────────── */
2276
+ .mw-date.svelte-1d18hkf {
2277
+ display: flex;
2278
+ flex-direction: column;
2279
+ align-items: center;
2280
+ width: 40px;
2281
+ flex-shrink: 0;
2282
+ gap: 2px;
2283
+ position: relative;
2284
+ z-index: 1;
2285
+ pointer-events: none;
2286
+ }
2287
+
2288
+ .mw-day-name.svelte-1d18hkf {
2289
+ font: 600 10px/1 var(--dt-sans, system-ui, sans-serif);
2290
+ letter-spacing: 0.06em;
2291
+ text-transform: uppercase;
2292
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2293
+ }
2294
+ .mw-day-name--today.svelte-1d18hkf {
2295
+ color: var(--dt-accent, #2563eb);
2296
+ }
2297
+
2298
+ .mw-day-num.svelte-1d18hkf {
2299
+ font: 700 18px/1 var(--dt-sans, system-ui, sans-serif);
2300
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2301
+ }
2302
+ .mw-day-num--today.svelte-1d18hkf {
2303
+ background: var(--dt-accent, #2563eb);
2304
+ color: var(--dt-btn-text, #fff);
2305
+ width: 30px;
2306
+ height: 30px;
2307
+ display: inline-flex;
2308
+ align-items: center;
2309
+ justify-content: center;
2310
+ border-radius: 50%;
2311
+ font-size: 15px;
2312
+ }
2313
+
2314
+ /* ─── Events column ──────────────────────────────── */
2315
+ .mw-events.svelte-1d18hkf {
2316
+ flex: 1;
2317
+ min-width: 0;
2318
+ display: flex;
2319
+ flex-direction: column;
2320
+ gap: 4px;
2321
+ position: relative;
2322
+ z-index: 2;
2323
+ }
2324
+
2325
+ .mw-empty.svelte-1d18hkf {
2326
+ font: 400 12px/1 var(--dt-sans, system-ui, sans-serif);
2327
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2328
+ font-style: italic;
2329
+ }
2330
+
2331
+ /* ─── Event chip ─────────────────────────────────── */
2332
+ .mw-ev.svelte-1d18hkf {
2333
+ display: flex;
2334
+ align-items: center;
2335
+ gap: 0;
2336
+ border-radius: 6px;
2337
+ background: color-mix(in srgb, var(--ev-color) 10%, var(--dt-surface, #f9fafb));
2338
+ overflow: hidden;
2339
+ cursor: pointer;
2340
+ transition: background 120ms;
2341
+ -webkit-tap-highlight-color: transparent;
2342
+ border: none;
2343
+ text-align: left;
2344
+ padding: 0;
2345
+ }
2346
+ .mw-ev.svelte-1d18hkf:active {
2347
+ background: color-mix(in srgb, var(--ev-color) 20%, var(--dt-surface, #f9fafb));
2348
+ }
2349
+ .mw-ev--selected.svelte-1d18hkf {
2350
+ box-shadow: 0 0 0 1.5px var(--ev-color);
2351
+ }
2352
+ .mw-ev--current.svelte-1d18hkf {
2353
+ background: color-mix(in srgb, var(--ev-color) 16%, var(--dt-surface, #f9fafb));
2354
+ }
2355
+ .mw-ev--allday.svelte-1d18hkf {
2356
+ background: color-mix(in srgb, var(--ev-color) 14%, var(--dt-surface, #f9fafb));
2357
+ }
2358
+ .mw-ev--cancelled.svelte-1d18hkf {
2359
+ opacity: 0.5;
2360
+ }
2361
+ .mw-ev--cancelled.svelte-1d18hkf .mw-ev-title:where(.svelte-1d18hkf) {
2362
+ text-decoration: line-through;
2363
+ }
2364
+ .mw-ev--tentative.svelte-1d18hkf {
2365
+ opacity: 0.65;
2366
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
2367
+ }
2368
+ .mw-ev--full.svelte-1d18hkf {
2369
+ opacity: 0.55;
2370
+ }
2371
+ .mw-ev--limited.svelte-1d18hkf {
2372
+ opacity: 0.65;
2373
+ border: 1px dashed color-mix(in srgb, var(--ev-color) 35%, transparent);
2374
+ }
2375
+
2376
+ .mw-ev-stripe.svelte-1d18hkf {
2377
+ width: 3px;
2378
+ align-self: stretch;
2379
+ background: var(--ev-color, var(--dt-accent));
2380
+ flex-shrink: 0;
2381
+ border-radius: 6px 0 0 6px;
2382
+ }
2383
+
2384
+ .mw-ev-body.svelte-1d18hkf {
2385
+ flex: 1;
2386
+ min-width: 0;
2387
+ padding: 5px 8px;
2388
+ display: flex;
2389
+ align-items: baseline;
2390
+ gap: 6px;
2391
+ }
2392
+
2393
+ .mw-ev-title.svelte-1d18hkf {
2394
+ font: 500 12px/1.2 var(--dt-sans, system-ui, sans-serif);
2395
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2396
+ white-space: nowrap;
2397
+ overflow: hidden;
2398
+ text-overflow: ellipsis;
2399
+ flex: 1;
2400
+ min-width: 0;
2401
+ }
2402
+
2403
+ .mw-ev-time.svelte-1d18hkf {
2404
+ font: 400 11px/1 var(--dt-mono, ui-monospace, monospace);
2405
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2406
+ white-space: nowrap;
2407
+ flex-shrink: 0;
2408
+ }
2409
+
2410
+ .mw-ev-more.svelte-1d18hkf {
2411
+ font: 400 11px/1 var(--dt-sans, system-ui, sans-serif);
2412
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2413
+ padding: 2px 0;
2414
+ }
2415
+
2416
+ /* ─── Chevron ────────────────────────────────────── */
2417
+ .mw-chevron.svelte-1d18hkf {
2418
+ flex-shrink: 0;
2419
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2420
+ position: relative;
2421
+ z-index: 1;
2422
+ pointer-events: none;
2423
+ }
2424
+
2425
+ /* ─── Focus ──────────────────────────────────────── */
2426
+ .mw-ev.svelte-1d18hkf:focus-visible {
2427
+ outline: 2px solid var(--ev-color, var(--dt-accent));
2428
+ outline-offset: 1px;
2429
+ }
2430
+
2431
+ .cal.svelte-1b53e7w {
2432
+ position: relative;
2433
+ width: 100%;
2434
+ min-width: 0;
2435
+ height: var(--cal-h, 600px);
2436
+ background: var(--dt-bg, inherit);
2437
+ border-radius: var(--cal-r, 12px);
2438
+ overflow: clip;
2439
+ display: flex;
2440
+ flex-direction: column;
2441
+ border: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2442
+ box-sizing: border-box;
2443
+ }
2444
+ .cal--auto.svelte-1b53e7w {
2445
+ height: auto;
2446
+ overflow: visible;
2447
+ }
2448
+
2449
+
2450
+ /* ── Desktop header ── */
2451
+ .cal-hd.svelte-1b53e7w {
2452
+ display: flex;
2453
+ align-items: center;
2454
+ gap: 8px;
2455
+ padding: 8px 12px;
2456
+ min-height: 48px;
2457
+ box-sizing: border-box;
2458
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2459
+ flex-shrink: 0;
2460
+ }
2461
+
2462
+ .cal-hd-side.svelte-1b53e7w {
2463
+ display: flex;
2464
+ align-items: center;
2465
+ gap: 4px;
2466
+ flex: 1;
2467
+ min-width: 0;
2468
+ }
2469
+
2470
+ .cal-hd-side--end.svelte-1b53e7w {
2471
+ justify-content: flex-end;
2472
+ }
2473
+
2474
+ .cal-hd-title.svelte-1b53e7w {
2475
+ font: 600 14px/1.2 var(--dt-sans, system-ui, sans-serif);
2476
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2477
+ white-space: nowrap;
2478
+ overflow: hidden;
2479
+ text-overflow: ellipsis;
2480
+ }
2481
+
2482
+ .cal-hd-btn.svelte-1b53e7w {
2483
+ display: flex;
2484
+ align-items: center;
2485
+ justify-content: center;
2486
+ width: 28px;
2487
+ height: 28px;
2488
+ border: none;
2489
+ background: transparent;
2490
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2491
+ border-radius: 6px;
2492
+ cursor: pointer;
2493
+ transition: background 120ms, color 120ms;
2494
+ }
2495
+
2496
+ .cal-hd-btn.svelte-1b53e7w:hover {
2497
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2498
+ background: color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 8%, transparent);
2499
+ }
2500
+
2501
+ .cal-hd-btn.svelte-1b53e7w:focus-visible,
2502
+ .cal-hd-today.svelte-1b53e7w:focus-visible,
2503
+ .cal-pill.svelte-1b53e7w:focus-visible {
2504
+ outline: 2px solid color-mix(in srgb, var(--dt-accent, #2563eb) 55%, transparent);
2505
+ outline-offset: 2px;
2506
+ }
2507
+
2508
+ .cal-hd-today.svelte-1b53e7w {
2509
+ font: 500 12px/1 var(--dt-sans, system-ui, sans-serif);
2510
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2511
+ background: transparent;
2512
+ border: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2513
+ padding: 6px 10px;
2514
+ border-radius: 6px;
2515
+ cursor: pointer;
2516
+ white-space: nowrap;
2517
+ margin-right: 2px;
2518
+ transition: background 120ms, color 120ms, border-color 120ms;
2519
+ }
2520
+
2521
+ .cal-hd-today.svelte-1b53e7w:hover {
2522
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2523
+ border-color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2524
+ }
2525
+
2526
+ .cal-pills.svelte-1b53e7w {
2527
+ display: flex;
2528
+ gap: 2px;
2529
+ background: color-mix(in srgb, var(--dt-surface, var(--dt-bg, #ffffff)) 85%, transparent);
2530
+ border-radius: 8px;
2531
+ padding: 2px;
2532
+ border: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2533
+ flex-shrink: 0;
2534
+ }
2535
+
2536
+ .cal-pill.svelte-1b53e7w {
2537
+ border: none;
2538
+ background: transparent;
2539
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2540
+ cursor: pointer;
2541
+ font: 500 12px/1 var(--dt-sans, system-ui, sans-serif);
2542
+ padding: 5px 12px;
2543
+ border-radius: 6px;
2544
+ transition: background 100ms, color 100ms;
2545
+ }
2546
+
2547
+ .cal-pill.svelte-1b53e7w:hover {
2548
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2549
+ }
2550
+
2551
+ .cal-pill--active.svelte-1b53e7w {
2552
+ background: var(--dt-accent, #2563eb);
2553
+ color: var(--dt-btn-text, #fff);
2554
+ }
2555
+
2556
+ .cal-body.svelte-1b53e7w {
2557
+ flex: 1;
2558
+ min-height: 0;
2559
+ position: relative;
2560
+ overflow: hidden;
2561
+ }
2562
+ .cal--auto.svelte-1b53e7w .cal-body:where(.svelte-1b53e7w) {
2563
+ overflow: visible;
2564
+ }
2565
+
2566
+ .cal-empty.svelte-1b53e7w {
2567
+ display: flex;
2568
+ align-items: center;
2569
+ justify-content: center;
2570
+ height: 100%;
2571
+ font: 400 13px / 1 var(--dt-sans, system-ui, sans-serif);
2572
+ color: var(--dt-text-3, rgba(0, 0, 0, 0.38));
2573
+ }
2574
+
2575
+ .cal-loading.svelte-1b53e7w {
2576
+ position: absolute;
2577
+ top: 0;
2578
+ left: 0;
2579
+ right: 0;
2580
+ height: 2px;
2581
+ background: linear-gradient(
2582
+ 90deg,
2583
+ transparent 0%,
2584
+ var(--dt-accent, #2563eb) 50%,
2585
+ transparent 100%
2586
+ );
2587
+ animation: svelte-1b53e7w-cal-slide 1.2s ease-in-out infinite;
2588
+ }
2589
+
2590
+ @keyframes svelte-1b53e7w-cal-slide {
2591
+ 0% { transform: translateX(-100%); }
2592
+ 100% { transform: translateX(100%); }
2593
+ }
2594
+
2595
+ /* ── Mobile header (flow layout) ── */
2596
+ .cal-m-hd.svelte-1b53e7w {
2597
+ display: flex;
2598
+ align-items: center;
2599
+ gap: 4px;
2600
+ padding: 8px 8px 6px;
2601
+ border-bottom: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2602
+ flex-shrink: 0;
2603
+ min-height: 44px;
2604
+ }
2605
+
2606
+ .cal-m-left.svelte-1b53e7w,
2607
+ .cal-m-right.svelte-1b53e7w {
2608
+ display: flex;
2609
+ align-items: center;
2610
+ gap: 2px;
2611
+ flex-shrink: 0;
2612
+ }
2613
+
2614
+ .cal-m-right.svelte-1b53e7w {
2615
+ justify-content: flex-end;
2616
+ }
2617
+
2618
+ .cal-m-nav.svelte-1b53e7w {
2619
+ display: flex;
2620
+ align-items: center;
2621
+ justify-content: center;
2622
+ width: 32px;
2623
+ height: 32px;
2624
+ border: none;
2625
+ background: transparent;
2626
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2627
+ border-radius: 50%;
2628
+ cursor: pointer;
2629
+ transition: background 120ms, color 120ms;
2630
+ -webkit-tap-highlight-color: transparent;
2631
+ flex-shrink: 0;
2632
+ }
2633
+ .cal-m-nav.svelte-1b53e7w:hover {
2634
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2635
+ background: color-mix(in srgb, var(--dt-text, rgba(0, 0, 0, 0.87)) 8%, transparent);
2636
+ }
2637
+ .cal-m-nav.svelte-1b53e7w:active {
2638
+ background: var(--dt-accent-dim, rgba(37, 99, 235, 0.12));
2639
+ }
2640
+ .cal-m-nav.svelte-1b53e7w:focus-visible {
2641
+ outline: 2px solid color-mix(in srgb, var(--dt-accent, #2563eb) 55%, transparent);
2642
+ outline-offset: 2px;
2643
+ }
2644
+
2645
+ .cal-m-pills.svelte-1b53e7w {
2646
+ display: flex;
2647
+ gap: 2px;
2648
+ background: color-mix(in srgb, var(--dt-surface, var(--dt-bg, #ffffff)) 85%, transparent);
2649
+ border-radius: 8px;
2650
+ padding: 2px;
2651
+ border: 1px solid var(--dt-border, rgba(0, 0, 0, 0.08));
2652
+ flex-shrink: 0;
2653
+ }
2654
+ .cal-m-pill.svelte-1b53e7w {
2655
+ border: none;
2656
+ background: transparent;
2657
+ color: var(--dt-text-2, rgba(0, 0, 0, 0.54));
2658
+ cursor: pointer;
2659
+ font: 600 11px / 1 var(--dt-sans, system-ui, sans-serif);
2660
+ padding: 5px 10px;
2661
+ border-radius: 6px;
2662
+ letter-spacing: 0.04em;
2663
+ text-transform: uppercase;
2664
+ transition: background 100ms, color 100ms;
2665
+ -webkit-tap-highlight-color: transparent;
2666
+ }
2667
+ .cal-m-pill.svelte-1b53e7w:hover {
2668
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2669
+ }
2670
+ .cal-m-pill--active.svelte-1b53e7w {
2671
+ background: var(--dt-accent, #2563eb);
2672
+ color: var(--dt-btn-text, #fff);
2673
+ }
2674
+
2675
+ .cal-m-title.svelte-1b53e7w {
2676
+ flex: 1;
2677
+ text-align: center;
2678
+ font: 600 14px / 1.2 var(--dt-sans, system-ui, sans-serif);
2679
+ color: var(--dt-text, rgba(0, 0, 0, 0.87));
2680
+ white-space: nowrap;
2681
+ overflow: hidden;
2682
+ text-overflow: ellipsis;
2683
+ min-width: 0;
2684
+ }
2685
+
2686
+ .cal-m-today-bar.svelte-1b53e7w {
2687
+ display: flex;
2688
+ justify-content: center;
2689
+ padding: 12px 8px 6px;
2690
+ flex-shrink: 0;
2691
+ }
2692
+
2693
+ .cal-m-today.svelte-1b53e7w {
2694
+ font: 600 11px / 1 var(--dt-sans, system-ui, sans-serif);
2695
+ color: var(--dt-accent, #2563eb);
2696
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 10%, transparent);
2697
+ border: none;
2698
+ padding: 5px 10px;
2699
+ border-radius: 6px;
2700
+ cursor: pointer;
2701
+ white-space: nowrap;
2702
+ letter-spacing: 0.04em;
2703
+ text-transform: uppercase;
2704
+ transition: background 120ms, color 120ms;
2705
+ -webkit-tap-highlight-color: transparent;
2706
+ flex-shrink: 0;
2707
+ }
2708
+ .cal-m-today.svelte-1b53e7w:hover {
2709
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 18%, transparent);
2710
+ }
2711
+ .cal-m-today.svelte-1b53e7w:active {
2712
+ background: color-mix(in srgb, var(--dt-accent, #2563eb) 25%, transparent);
2713
+ }
2714
+ .cal-m-today.svelte-1b53e7w:focus-visible {
2715
+ outline: 2px solid color-mix(in srgb, var(--dt-accent, #2563eb) 55%, transparent);
2716
+ outline-offset: 2px;
2717
+ }