.field-group{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.field-labelrow{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.field-label{font:var(--type-field-label);color:var(--color-ink)}.field-label--hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.field-label__optional{color:var(--color-muted);font-weight:400}.field-hint{color:var(--color-muted)}.field-error,.field-hint{font:var(--type-body-small);margin:0}.field-error{color:var(--color-danger-text);font-weight:600}.field{display:flex;align-items:center;gap:var(--space-3);box-sizing:border-box;width:100%;min-width:0;min-height:var(--hit-target-min);border:1px solid var(--color-border);border-radius:var(--radius-button);padding:11px 14px;background:var(--color-surface);color:var(--color-ink);font:var(--type-body)}.field--multiline:focus-visible,.field--select:focus-visible,.field:focus-within{outline:none;border:2px solid var(--color-accent);padding:10px 13px;box-shadow:var(--color-focus-ring)}.field[data-invalid]{border-color:var(--color-danger-text)}.field--multiline[data-invalid]:focus-visible,.field--select[data-invalid]:focus-visible,.field[data-invalid]:focus-within{border-color:var(--color-danger-text);box-shadow:none}.field__input{flex:1 1;min-width:0;border:0;outline:0;padding:0;background:transparent;color:inherit;font:inherit}.field--multiline::placeholder,.field__input::placeholder{color:var(--color-placeholder)}.field--multiline:disabled,.field--select:disabled,.field__input:disabled{color:var(--color-muted);cursor:not-allowed}.field__affix{flex:none;display:inline-flex;align-items:center;color:var(--color-muted);font:var(--type-body-compact)}.field--multiline{display:block;resize:vertical;min-height:96px}.field-select{position:relative;width:100%}.field--select{display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:38px}.field--select:focus-visible{padding-right:37px}.field-select__caret{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--color-muted);pointer-events:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);box-sizing:border-box;border:1px solid transparent;border-radius:var(--radius-button);background:none;text-align:center;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,opacity .12s ease}.button:focus-visible{outline:none;box-shadow:var(--color-focus-ring)}.button:disabled,.button[aria-disabled=true]{opacity:.5;cursor:not-allowed}.button--full{display:flex;width:100%}.button--sm{min-height:34px;padding:7px 14px;font:600 13px/1 var(--font-display);border-radius:var(--radius-field)}.button--md{min-height:var(--hit-target-min);padding:11px 20px;font:var(--type-button-secondary)}.button--lg{min-height:52px;padding:15px 28px;font:var(--type-button-primary)}.button--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.button--primary:hover:not(:disabled){background:var(--color-accent-pressed);border-color:var(--color-accent-pressed)}.button--secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-ink)}.button--secondary:hover:not(:disabled){border-color:var(--color-accent)}.button--destructive{background:var(--color-surface);border-color:var(--color-danger-tint-border);color:var(--color-danger-text)}.button--destructive:hover:not(:disabled){background:var(--color-danger-tint)}.button[data-loading=true]{cursor:progress}.button__spinner{width:15px;height:15px;border:2px solid;border-right:2px solid transparent;border-radius:var(--radius-pill);opacity:.7;animation:spin .62s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.button{transition:none}.button__spinner{animation-duration:2s}}.checkbox{display:flex;gap:var(--space-3);align-items:flex-start}.checkbox__box{position:relative;display:inline-flex}.checkbox input,.checkbox__box{flex:none;width:20px;height:20px}.checkbox input{-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;margin:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);cursor:pointer}.checkbox input:checked{border-color:var(--color-accent);background:var(--color-accent)}.checkbox__tick{position:absolute;inset:0;margin:auto;color:var(--color-on-accent);pointer-events:none;opacity:0}.checkbox input:checked+.checkbox__tick{opacity:1}.checkbox input:focus-visible{outline:none;box-shadow:var(--color-focus-ring);border-color:var(--color-accent)}.checkbox input:disabled{opacity:.5;cursor:not-allowed}.checkbox label{font:var(--type-body-compact);color:var(--color-ink);cursor:pointer;padding-top:0}.checkbox__hint{display:block;font:var(--type-body-small);color:var(--color-muted);margin-top:2px}.checkbox a{color:var(--color-accent-pressed);font-weight:600;text-decoration:none}.checkbox a:hover{text-decoration:underline}.banner{display:flex;gap:var(--space-3);align-items:flex-start;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:12px 14px;background:var(--color-surface-soft);color:var(--color-body);font:var(--type-body-compact)}.banner[data-titled]{padding:16px}.banner__icon{flex:none;margin-top:-1px}.banner__content{flex:1 1;min-width:0}.banner__title{font:600 15px/21px var(--font-display);color:var(--color-ink);margin:0}.banner__body,.banner__body p{margin:0}.banner[data-titled] .banner__body{color:var(--color-body);margin-top:4px}.banner__action{margin-top:12px}.banner[data-tone=info]{background:var(--color-accent-tint);border-color:var(--color-accent-tint-border);color:var(--color-accent-tint-text)}.banner[data-tone=info] .banner__icon{color:var(--color-accent)}.banner[data-tone=success]{background:var(--color-success-tint);border-color:var(--color-success-tint-border);color:var(--color-success-text)}.banner[data-tone=warning]{background:var(--color-warning-tint);border-color:var(--color-warning-tint-border);color:var(--color-warning-text)}.banner[data-tone=danger]{background:var(--color-danger-tint);border-color:var(--color-danger-tint-border);color:var(--color-danger-text)}.reveal{flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin:-6px -6px -6px 0;padding:0;border:0;border-radius:var(--radius-control);background:none;color:var(--color-muted);cursor:pointer}.reveal:hover{color:var(--color-ink)}.reveal:focus-visible{outline:none;box-shadow:var(--color-focus-ring);color:var(--color-accent)}.account{position:relative;flex:none}.account__trigger{display:flex;align-items:center;padding:0;border:0;background:none;border-radius:var(--radius-pill);cursor:pointer;color:inherit;font:inherit}.account__trigger:focus-visible{outline:none;box-shadow:var(--color-focus-ring)}.account__panel{position:absolute;top:calc(100% + 8px);right:0;z-index:30;min-width:220px;max-width:min(280px,calc(100vw - 32px));padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--color-shadow)}.account__who{padding:var(--space-3) var(--space-3) var(--space-4);border-bottom:1px solid var(--color-rule);margin-bottom:var(--space-2)}.account__name{font:600 14px/1.35 var(--font-text);color:var(--color-ink);margin:0}.account__email{font:var(--type-body-small);color:var(--color-muted);margin:2px 0 0;overflow-wrap:anywhere}.account__action{display:block;width:100%;text-align:left;padding:var(--space-3)}.signout{flex:none;border:0;background:none;padding:6px 8px;border-radius:var(--radius-control);color:var(--color-muted);font:600 13px/1.4 var(--font-text);cursor:pointer;white-space:nowrap}.signout:hover:not(:disabled){color:var(--color-ink);background:var(--color-surface-soft)}.signout:focus-visible{outline:none;box-shadow:var(--color-focus-ring);color:var(--color-ink)}.signout:disabled{cursor:progress;opacity:.6}.signout[data-failed]{color:var(--color-danger-text)}.signout[data-failed]:hover{background:var(--color-danger-tint)}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:0.5;--rdp-outside-opacity:0.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:0.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:0.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction),transparent 50%,var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction),var(--rdp-range_middle-background-color) 50%,transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:0.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:0.75;--rdp-weekday-padding:0.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:0.3s;--rdp-animation_timing:cubic-bezier(0.4,0,0.2,1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{position:relative}.rdp-root,.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=after] .rdp-month,.rdp-root[data-nav-layout=around] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;-webkit-margin-start:var(--rdp-nav_button-width);margin-inline-start:var(--rdp-nav_button-width);-webkit-margin-end:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:-moz-fit-content;max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes rdp-slide_in_right{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes rdp-slide_out_left{0%{transform:translateX(0)}to{transform:translateX(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translateX(0)}to{transform:translateX(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.calendar{--rdp-accent-color:var(--color-accent);--rdp-accent-background-color:var(--color-accent-tint);--rdp-day-height:40px;--rdp-day-width:40px;--rdp-day_button-height:36px;--rdp-day_button-width:36px;--rdp-day_button-border-radius:var(--radius-field);--rdp-day_button-border:0;--rdp-selected-border:0;--rdp-disabled-opacity:1;--rdp-nav_button-height:32px;--rdp-nav_button-width:32px;--rdp-nav-height:40px;--rdp-weekday-opacity:1;--rdp-weekday-padding:6px 0;--rdp-today-color:var(--color-accent-pressed);width:max-content;max-width:100%;color:var(--color-ink);font:600 14px/1 var(--font-text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calendar .rdp-month_caption{justify-content:center;height:var(--rdp-nav-height)}.calendar .rdp-caption_label{font:600 15px/1 var(--font-display);color:var(--color-ink)}.calendar .rdp-button_next,.calendar .rdp-button_previous{border:1px solid var(--color-rule);border-radius:var(--radius-field);background:var(--color-surface);color:var(--color-ink)}.calendar .rdp-button_next:hover:not(:disabled),.calendar .rdp-button_previous:hover:not(:disabled){border-color:var(--color-border-strong)}.calendar .rdp-button_next:disabled,.calendar .rdp-button_previous:disabled{opacity:.35}.calendar .rdp-chevron{fill:none}.calendar .rdp-weekday{font:600 12px/1 var(--font-text);color:var(--color-muted);text-transform:uppercase}.calendar .rdp-day_button{color:var(--color-ink);font:inherit;transition:background-color .12s ease}.calendar .rdp-day:not(.rdp-disabled):not(.rdp-selected) .rdp-day_button:hover{background:var(--color-surface-soft)}.calendar .rdp-day_button:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-accent)}.calendar .rdp-today:not(.rdp-outside):not(.rdp-selected) .rdp-day_button{color:var(--rdp-today-color);font-weight:700}.calendar .rdp-today:not(.rdp-selected) .rdp-day_button:after{content:"";position:absolute;bottom:5px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:currentColor}.calendar .rdp-day_button{position:relative}.calendar .rdp-selected{font:inherit}.calendar .rdp-selected .rdp-day_button{background:var(--color-accent);color:var(--color-on-accent);font-weight:700}.calendar .rdp-disabled .rdp-day_button{color:var(--color-placeholder);font-weight:400;cursor:not-allowed}.calendar .rdp-outside .rdp-day_button{color:var(--color-placeholder)}@media (prefers-reduced-motion:reduce){.calendar .rdp-day_button{transition:none}}.picker{position:relative;width:100%}.picker__trigger{cursor:pointer;justify-content:space-between;text-align:left}.picker__trigger:focus-visible,.picker__trigger[data-open]{outline:none;border:2px solid var(--color-accent);padding:10px 13px;box-shadow:var(--color-focus-ring)}.picker__trigger:disabled{color:var(--color-muted);cursor:not-allowed}.picker__value{flex:1 1;min-width:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.picker__value--empty{color:var(--color-placeholder)}.picker__icon{flex:none;color:var(--color-muted)}.picker__trigger[data-open] .picker__icon{color:var(--color-accent)}.picker__panel{position:absolute;z-index:20;top:calc(100% + 6px);left:0;box-sizing:border-box;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--color-shadow)}.picker__panel--calendar{padding:12px}.picker__list{width:100%;min-width:160px;max-height:264px;overflow-y:auto;margin:0;padding:6px;list-style:none;outline:none;scrollbar-width:thin}.picker__list li{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:var(--radius-field);font:500 14px/20px var(--font-text);color:var(--color-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer}.picker__list li[aria-disabled=true]{color:var(--color-placeholder);cursor:not-allowed}.picker__list li[data-active]{background:var(--color-surface-soft)}.picker__list:focus-visible li[data-active]{box-shadow:inset 0 0 0 1px var(--color-border-strong)}.picker__list li[aria-selected=true]{background:var(--color-accent-tint);color:var(--color-accent-tint-text);font-weight:600}