.kumiki-calendar{--kumiki-calendar-bg:var(--kumiki-color-bg);--kumiki-calendar-border:var(--kumiki-color-line);--kumiki-calendar-cell-bg-hover:var(--kumiki-color-surface);--kumiki-calendar-cell-bg-selected:var(--kumiki-color-accent);--kumiki-calendar-cell-bg-in-range:var(--kumiki-color-accent-soft);--kumiki-calendar-cell-bg-today:oklch(97% .005 247);--kumiki-calendar-cell-fg:var(--kumiki-color-fg);--kumiki-calendar-cell-fg-selected:var(--kumiki-color-accent-fg);--kumiki-calendar-cell-fg-disabled:var(--kumiki-color-fg-quiet);--kumiki-calendar-cell-radius:8px;border:1px solid var(--kumiki-calendar-border);background:var(--kumiki-calendar-bg);font-variant-numeric:tabular-nums;letter-spacing:-.005em;border-radius:12px;padding:.875rem;font-size:.8125rem;box-shadow:0 1px 2px oklch(0% 0 0/.04),0 1px 1px oklch(0% 0 0/.02)}.kumiki-calendar [data-component-part=header]{color:var(--kumiki-color-fg);justify-content:space-between;align-items:center;margin-bottom:.625rem;padding-inline:.125rem;font-weight:600;display:flex}.kumiki-calendar [data-component-part=grid]{border-collapse:separate;border-spacing:.125rem;table-layout:fixed;width:100%}.kumiki-calendar [data-component-part=grid] thead th{color:var(--kumiki-color-fg-quiet);text-transform:uppercase;letter-spacing:.06em;padding:.25rem 0 .5rem;font-size:.6875rem;font-weight:600}.kumiki-calendar [data-component-part=grid] td{text-align:center;padding:0}.kumiki-calendar [data-component-part=day]{border-radius:var(--kumiki-calendar-cell-radius);width:2.125rem;height:2.125rem;color:var(--kumiki-calendar-cell-fg);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;font-size:.8125rem;font-weight:500;transition:background-color .12s cubic-bezier(.32,.72,0,1);display:inline-flex}.kumiki-calendar [data-component-part=day]:not([data-in-month]){color:var(--kumiki-color-fg-faint)}.kumiki-calendar [data-component-part=header] button{appearance:none;color:var(--kumiki-color-fg-quiet);border-radius:var(--kumiki-radius-pill,9999px);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;font-size:1rem;line-height:1;transition:background-color .12s cubic-bezier(.32,.72,0,1);display:inline-flex}.kumiki-calendar [data-component-part=header] button:hover{background:var(--kumiki-color-surface);color:var(--kumiki-color-fg)}.kumiki-calendar [data-component-part=header] [data-component-part=label]{letter-spacing:-.005em;color:var(--kumiki-color-fg);font-size:.875rem;font-weight:600}.kumiki-calendar [data-component-part=day]:hover:not([data-disabled]){background:var(--kumiki-calendar-cell-bg-hover)}.kumiki-calendar [data-component-part=day][data-today]:not([data-state=selected]){background:var(--kumiki-calendar-cell-bg-today);color:var(--kumiki-color-accent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--kumiki-color-accent) 40%, transparent);font-weight:700}.kumiki-calendar [data-component-part=day][data-in-range]:not([data-state=selected]){background:var(--kumiki-calendar-cell-bg-in-range)}.kumiki-calendar [data-component-part=day][data-state=selected]{background:var(--kumiki-calendar-cell-bg-selected);color:var(--kumiki-calendar-cell-fg-selected);box-shadow:0 1px 2px color-mix(in oklab, var(--kumiki-color-accent) 22%, transparent);font-weight:600}.kumiki-calendar [data-component-part=day][data-disabled]{color:var(--kumiki-calendar-cell-fg-disabled);cursor:not-allowed}.kumiki-calendar [data-component-part=day]:focus-visible{box-shadow:0 0 0 2px var(--kumiki-color-accent-fg), 0 0 0 4px var(--kumiki-color-accent);outline:0}:root[data-theme=dark] .kumiki-calendar{--kumiki-calendar-bg:oklch(20% .012 256);--kumiki-calendar-border:var(--kumiki-color-fg);--kumiki-calendar-cell-bg-hover:var(--kumiki-color-surface-raised);--kumiki-calendar-cell-bg-selected:var(--kumiki-color-accent);--kumiki-calendar-cell-bg-in-range:oklch(32% .04 35);--kumiki-calendar-cell-bg-today:oklch(25% .014 256);--kumiki-calendar-cell-fg:var(--kumiki-color-fg-muted);--kumiki-calendar-cell-fg-disabled:oklch(42% .012 256)}:root[data-theme=dark] .kumiki-calendar [data-component-part=header]{color:var(--kumiki-color-surface)}:root[data-theme=dark] .kumiki-calendar [data-component-part=day][data-today]:not([data-state=selected]){color:var(--kumiki-color-accent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--kumiki-color-accent) 50%, transparent)}:root[data-theme=dark] .kumiki-calendar [data-component-part=day]:focus-visible{box-shadow:0 0 0 2px var(--kumiki-color-bg), 0 0 0 4px var(--kumiki-color-accent)}@media (prefers-reduced-motion:reduce){.kumiki-calendar [data-component-part=day]{transition:none}}
