.calendar-demo{--cal-color-mon:light-dark(#fff,#1f2125);--cal-color-out:light-dark(#f5f6f8,#1a1c20);--cal-color-today-ring:light-dark(#2563eb,#3b82f6);--cal-cat-work:light-dark(#2563eb,#60a5fa);--cal-cat-personal:light-dark(#16a34a,#4ade80);--cal-cat-travel:light-dark(#9333ea,#c084fc);--cal-cat-health:light-dark(#dc2626,#f87171);--cal-cat-social:light-dark(#ea580c,#fb923c);flex-direction:column;height:100%;min-height:0;display:flex}.calendar-demo__grid{flex:1;min-height:0;container:calendar/inline-size}.cal-header{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.cal-header__title{font-size:1.15rem;font-weight:600}.cal-header__year{border:1px solid var(--demo-color-border);background:var(--demo-color-surface);color:var(--demo-color-fg);border-radius:6px;padding:4px 8px;font-size:.95rem}.cal-toolbar-nav{gap:4px;display:inline-flex}.cal-header__btn{background:var(--demo-color-surface);border:1px solid var(--demo-color-border);color:var(--demo-color-fg);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.9rem;line-height:1.2}.cal-header__btn:hover{border-color:var(--demo-color-accent)}.cal-legend{color:var(--demo-color-fg-muted);align-items:center;gap:14px;padding:4px 10px;font-size:.8rem;display:flex}.cal-legend__item{align-items:center;gap:5px;display:inline-flex}.cal-legend__swatch{border-radius:50%;width:10px;height:10px;display:inline-block}.cal-cell{flex-direction:column;align-items:stretch;gap:4px;height:100%;padding:6px 6px 4px;display:flex;overflow:hidden}.calendar-demo{--cal-color-cell-border:light-dark(#cbd0d6,#4a4d54);--cal-color-cell-focus:light-dark(#2563eb,#3b82f6)}tbw-grid .data-grid-row>.cell{border-top:1px solid var(--cal-color-cell-border);border-right:1px solid var(--cal-color-cell-border);border-bottom:1px solid var(--cal-color-cell-border)}tbw-grid .data-grid-row>.cell:first-child{border-left:1px solid var(--cal-color-cell-border)}tbw-grid .data-grid-row>.cell.cell-focus{outline:2px dotted var(--cal-color-cell-focus);outline-offset:-3px;z-index:1;position:relative}.cal-cell--out-of-month{opacity:.4}.cal-cell--today{background:color-mix(in oklab, var(--cal-color-today-ring) 12%, transparent)}.cal-cell--today .cal-cell__date{color:var(--cal-color-today-ring);border:2px solid var(--cal-color-today-ring);box-sizing:border-box;border-radius:999px;align-self:center;min-width:1.9em;padding:0 .3em;font-weight:800;line-height:1.5}.cal-cell__date{text-align:center;font-size:.95rem;font-weight:600;line-height:1.6}.cal-cell__events{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow:hidden}.cal-cell__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.cal-event{color:#fff;background:var(--cal-cat-color,var(--cal-cat-work));white-space:nowrap;text-overflow:ellipsis;border-radius:4px;align-items:baseline;gap:4px;padding:1px 6px;font-size:.75rem;line-height:1.25;display:flex;overflow:hidden}.cal-event--work,.cal-dot--work{--cal-cat-color:var(--cal-cat-work)}.cal-event--personal,.cal-dot--personal{--cal-cat-color:var(--cal-cat-personal)}.cal-event--travel,.cal-dot--travel{--cal-cat-color:var(--cal-cat-travel)}.cal-event--health,.cal-dot--health{--cal-cat-color:var(--cal-cat-health)}.cal-event--social,.cal-dot--social{--cal-cat-color:var(--cal-cat-social)}.cal-event__time{font-variant-numeric:tabular-nums;opacity:.85;font-size:.7rem}.cal-event__title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-cell__dots{flex-wrap:wrap;place-content:flex-start center;gap:3px;display:none}.cal-dot{background:var(--cal-cat-color,var(--cal-cat-work));border-radius:50%;width:8px;height:8px;display:inline-block}.cal-dot__more{color:var(--demo-color-fg-muted);align-self:center;font-size:.65rem;line-height:1}@container calendar (width<534px){.cal-cell__list{display:none}.cal-cell__dots{display:flex}}@container calendar (width<480px){.cal-cell__events{display:none}.cal-cell{justify-content:center}.cal-cell__date{font-size:1.1rem}}.cal-wday__full,.cal-wday__mini{display:none}.cal-wday__short{display:inline}@container calendar (width>=534px){.cal-wday__full{display:inline}.cal-wday__short,.cal-wday__mini{display:none}}@container calendar (width<480px){.cal-wday__mini{display:inline}.cal-wday__short,.cal-wday__full{display:none}}.cal-week-cell,tbw-grid .data-grid-row .cell[data-field=weekNumber]{text-align:center;color:var(--demo-color-fg-muted);font-variant-numeric:tabular-nums;padding-top:4px;font-size:.75rem}.cal-event-dialog{border:1px solid var(--demo-color-border,#d0d4dc);background:var(--demo-color-surface,light-dark(#fff,#1f2125));color:var(--demo-color-fg,light-dark(#1a1c20,#f0f2f5));border-radius:10px;min-width:min(380px,92vw);max-height:calc(100vh - 2rem);margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 12px 32px light-dark(#0000002e,#0000008c)}.cal-event-dialog::backdrop{backdrop-filter:blur(2px);background:light-dark(#00000040,#0000008c)}.cal-event-dialog__form{flex-direction:column;gap:14px;padding:20px;display:flex}.cal-event-dialog__title{margin:0;font-size:1rem;font-weight:600}.cal-event-dialog__field{flex-direction:column;gap:4px;font-size:.85rem;display:flex}.cal-event-dialog__field>span{color:var(--demo-color-fg-muted,light-dark(#586070,#aab0bd))}.cal-event-dialog__field input,.cal-event-dialog__field select{font:inherit;border:1px solid var(--demo-color-border,#d0d4dc);background:var(--demo-color-bg,light-dark(#fff,#15171b));color:inherit;border-radius:6px;padding:6px 8px}.cal-event-dialog__field input:focus-visible,.cal-event-dialog__field select:focus-visible{outline:2px solid var(--demo-color-accent,#2563eb);outline-offset:1px}.cal-event-dialog__actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.cal-header__btn--primary{background:var(--demo-color-accent,#2563eb);border-color:var(--demo-color-accent,#2563eb);color:#fff}.cal-header__btn--primary:hover{filter:brightness(1.08)}
