.date-picker-trigger{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-align:left;cursor:pointer}.date-picker-trigger.date-chip{min-width:44px;flex-shrink:0;justify-content:center;border-radius:10px;padding:8px;font-size:12px;transition:background .15s,color .15s}.date-picker-trigger.date-chip:hover,.date-picker-trigger[aria-expanded=true]{background:rgb(var(--ff-primary-soft));color:rgb(var(--ff-fg))}.date-picker-trigger.date-field{font-size:16px}.date-picker-trigger:focus-visible{outline:2px solid rgb(var(--ff-primary));outline-offset:3px}.date-picker-trigger:disabled{cursor:not-allowed}.date-picker-inline{position:relative;display:inline-flex}.date-picker-inline,.date-picker-inline>.date-picker-trigger{width:100%;min-width:0}.date-picker-inline[data-has-clear=true]>.date-picker-trigger{padding-right:48px}.date-picker-inline-chip{width:auto}.date-picker-clear{position:absolute;top:50%;right:1px;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:rgb(var(--ff-muted))}.date-picker-clear:hover:enabled{color:rgb(var(--ff-fg));background:rgb(var(--ff-primary-soft)/.65)}.date-picker-clear:focus-visible{outline:2px solid rgb(var(--ff-primary));outline-offset:-3px}.date-picker-clear:disabled{opacity:.45;cursor:not-allowed}.date-picker-dialog[open]{display:grid;place-items:center;overflow-y:auto;padding:24px 0;overscroll-behavior:contain}.date-picker-dialog.modal-surface::backdrop{background:rgb(var(--ff-canopy-deep)/.27);backdrop-filter:blur(4px)}.calendar-surface{width:min(384px,calc(100% - 32px));min-width:0;overflow:hidden;color:rgb(var(--ff-fg));background:rgb(var(--ff-surface));border:1px solid rgb(var(--ff-border));border-radius:26px;box-shadow:0 28px 80px -24px rgb(var(--ff-canopy-deep)/.35),inset 0 1px 0 rgb(var(--ff-on-primary)/.8);animation:calendar-arrive .18s ease-out}.calendar-surface button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.calendar-surface button:focus-visible{outline:2px solid rgb(var(--ff-primary));outline-offset:-3px}.calendar-surface button:disabled{color:rgb(var(--ff-muted));opacity:.42;cursor:not-allowed}.calendar-heading{position:relative;isolation:isolate;padding:10px 16px 14px;border-bottom:1px solid rgb(var(--ff-border)/.4);background:radial-gradient(ellipse at 95% 0,rgb(var(--coast-warmth)/.65),transparent 70%),linear-gradient(115deg,rgb(var(--ff-primary-soft)),rgb(var(--ff-surface)))}.calendar-contours{position:absolute;inset:0;width:100%;height:100%;opacity:.2;color:rgb(var(--coast-contour));z-index:-1;pointer-events:none}.calendar-title-row{display:flex;align-items:center;justify-content:space-between}.calendar-title-row .label{font-size:10px;letter-spacing:.15em}.calendar-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;color:rgb(var(--ff-fg))}.calendar-icon:hover:enabled{background:rgb(var(--ff-surface)/.72)}.calendar-month-nav{display:flex;align-items:center;justify-content:space-between;gap:4px}.calendar-month-title{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:70px;padding:0 12px;border-radius:14px}.calendar-month-title>.font-display{font-size:36px;line-height:1.1}.calendar-year{display:flex;align-items:center;gap:5px;padding-top:6px;color:rgb(var(--ff-fg-soft));font-size:12px}.calendar-body{padding:12px 16px 0}.calendar-grid{width:100%;table-layout:fixed;border-collapse:collapse}.calendar-grid th{height:30px;color:rgb(var(--ff-muted));font-size:11px;font-weight:500}.calendar-grid abbr{text-decoration:none}.calendar-grid td{padding:0;text-align:center}.calendar-day{width:100%;height:46px;position:relative;display:flex;align-items:center;justify-content:center;border-radius:14px;isolation:isolate;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums;color:rgb(var(--ff-fg))}.calendar-day:before{content:"";position:absolute;inset:3px;border-radius:12px;z-index:-1;transition:background .12s,box-shadow .12s}.calendar-day[data-outside=true]{color:rgb(var(--ff-muted));font-weight:400}.calendar-day[data-outside=true]:before{background:rgb(var(--ff-surface-2)/.4)}.calendar-day:hover:enabled:before{background:rgb(var(--ff-primary-soft))}.calendar-day[aria-current=date]:before{box-shadow:inset 0 0 0 1px rgb(var(--ff-control-border))}.calendar-day[data-selected=true]{color:rgb(var(--ff-on-primary))}.calendar-day[data-selected=true]:before,.calendar-day[data-selected=true]:hover:before{background:rgb(var(--ff-primary));box-shadow:0 3px 8px -4px rgb(var(--ff-primary)/.5);border:0}.calendar-day[data-selected=true]:focus-visible{outline-color:rgb(var(--ff-on-primary));outline-offset:-7px}.calendar-today-dot{position:absolute;width:3px;height:3px;border-radius:50%;bottom:7px;background:currentColor}.calendar-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0 14px;margin-top:6px;border-top:1px solid rgb(var(--ff-border)/.4)}.calendar-shortcuts button{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;-moz-column-gap:6px;column-gap:6px;row-gap:0;min-height:48px;border:1px solid rgb(var(--ff-border));border-radius:14px;padding:8px;background:rgb(var(--ff-surface-2));color:rgb(var(--ff-fg));font-size:12px}.calendar-shortcuts button:hover:enabled{border-color:rgb(var(--ff-control-border));background:rgb(var(--ff-primary-soft))}.calendar-shortcut-date{color:rgb(var(--ff-fg-soft));font-size:10px}.calendar-footer{display:flex;align-items:center;justify-content:space-between;padding:0 20px 6px;min-height:50px;background:rgb(var(--ff-surface-2)/.6);border-top:1px solid rgb(var(--ff-border)/.35);font-size:12px}.calendar-footer button{min-height:44px;padding:0 8px;margin-left:-8px;border-radius:10px;color:rgb(var(--ff-fg-soft));text-decoration:underline;text-underline-offset:3px}.calendar-today-key{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:rgb(var(--ff-muted))}.calendar-today-key i{width:5px;height:5px;border-radius:50%;background:rgb(var(--ff-primary))}.calendar-months{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;min-height:306px;padding:10px 0}.calendar-months button{min-height:44px;border-radius:14px;color:rgb(var(--ff-fg));font-size:14px}.calendar-months button:hover:enabled{background:rgb(var(--ff-primary-soft))}.calendar-months button[aria-pressed=true]{background:rgb(var(--ff-primary));color:rgb(var(--ff-on-primary))}@keyframes calendar-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.date-picker-dialog[open]{align-items:end;padding:calc(env(safe-area-inset-top) + 12px) 0 0}.calendar-surface{width:min(420px,100%);border-radius:26px 26px 0 0;border-bottom:0}.calendar-footer{padding-bottom:calc(env(safe-area-inset-bottom) + 6px)}}@media(max-width:360px){.calendar-body{padding-left:5px;padding-right:5px}.calendar-heading{padding-left:12px;padding-right:12px}.calendar-shortcuts{margin-left:7px;margin-right:7px}}@media(prefers-reduced-motion:reduce){.calendar-surface{animation:none}.calendar-day:before,.date-picker-trigger{transition:none}}@media(forced-colors:active){.calendar-surface button:focus-visible,.date-picker-clear:focus-visible,.date-picker-trigger:focus-visible{outline-color:Highlight}.calendar-day[data-selected=true]:before{border:2px solid Highlight}.calendar-day[aria-current=date]:before{border:1px solid ButtonText}.calendar-day[data-selected=true][aria-current=date]:before{border:2px solid Highlight}}