.ds-button-base,.ds-button-base *{box-sizing:border-box}.ds-button-base{min-width:var(--ds-control-touch-target);justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-family-sans);font-weight:var(--font-weight-bold);white-space:nowrap;cursor:pointer;touch-action:manipulation;transition:background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease, color var(--motion-fast) ease;border:1px solid #0000;display:inline-flex}.ds-button-base:focus-visible:not(:disabled){box-shadow:inset 0 0 0 var(--ds-focus-width) var(--ds-button-focus-ring,var(--color-focus));outline:none}.ds-button-base--compact{min-height:var(--ds-control-height-compact);font-size:var(--font-size-2);line-height:var(--line-height-2)}.ds-button-base--base{min-height:var(--ds-control-height);font-size:var(--font-size-3);line-height:var(--line-height-3)}.ds-button-base--large{min-height:var(--ds-control-height-large);font-size:var(--font-size-3);line-height:var(--line-height-3)}.ds-button-base--full-width{width:100%}.ds-button{padding:var(--space-3);border-radius:var(--ds-radius-button)}.ds-button-base--large.ds-button{padding:var(--space-4)}.ds-button-base--compact.ds-button{padding:var(--space-2) var(--space-3);border-radius:var(--radius-round)}.ds-button .ds-button-base__leading,.ds-button .ds-button-base__trailing{font-size:var(--ds-button-icon-size)}.ds-button-base--compact.ds-button .ds-button-base__leading,.ds-button-base--compact.ds-button .ds-button-base__trailing{font-size:var(--ds-button-icon-size-inline)}.ds-button--icon-only{width:var(--ds-control-height);height:var(--ds-control-height);border-radius:var(--radius-round);min-width:0;font-size:var(--ds-button-icon-size);padding:0}.ds-button--icon-only .ds-button-base__label{justify-content:center;align-items:center;display:inline-flex}.ds-button-base--compact.ds-button--icon-only{width:var(--ds-control-height-compact);height:var(--ds-control-height-compact);font-size:var(--ds-button-icon-size-inline);padding:0}.ds-button-base--large.ds-button--icon-only{width:var(--ds-control-height-large);height:var(--ds-control-height-large);font-size:var(--ds-button-icon-size);padding:0}.ds-button-base--primary{background:var(--ds-button-fill);color:var(--ds-button-on-fill);border-color:#0000}.ds-button-base--primary:hover:not(:disabled){background:var(--ds-button-fill-hover)}.ds-button-base--primary:active:not(:disabled){background:var(--ds-button-fill-press)}.ds-button-base--primary:focus-visible:not(:disabled){background:var(--ds-button-fill-focus);outline:var(--ds-focus-width) solid var(--ds-button-focus-outline);box-shadow:inset 0 0 0 2px var(--ds-button-focus-gap)}.ds-button-base--secondary{background:var(--ds-button-secondary-surface);color:var(--ds-button-accent);border-color:#0000}.ds-button-base--secondary:hover:not(:disabled){border-color:var(--ds-button-accent);background:var(--ds-button-secondary-hover-surface)}.ds-button-base--secondary:active:not(:disabled){background:var(--ds-button-press-surface);color:var(--ds-button-accent-press);border-color:#0000}.ds-button-base--secondary:focus-visible:not(:disabled){background:var(--ds-button-secondary-surface);color:var(--ds-button-secondary-focus-text);outline:var(--ds-focus-width) solid var(--ds-button-accent);box-shadow:none}.ds-button-base--secondary.ds-button--icon-only,.ds-button-base--secondary.ds-button--icon-only:active:not(:disabled),.ds-button-base--secondary.ds-button--icon-only:focus-visible:not(:disabled){color:var(--ds-button-secondary-icon-color)}.ds-button-base--secondary.ds-button--icon-only:hover:not(:disabled){background:var(--ds-button-secondary-icon-hover-surface)}.ds-button-base--secondary.ds-button--icon-only:disabled{background:var(--ds-button-secondary-icon-disabled-surface);color:var(--ds-button-disabled-text);border-color:#0000}.ds-button-base--ghost{color:var(--ds-button-accent);background:0 0;border-color:#0000}.ds-button-base--ghost:hover:not(:disabled){background:var(--ds-button-ghost-hover-surface)}.ds-button-base--ghost:active:not(:disabled){background:var(--ds-button-press-surface);color:var(--ds-button-accent-press)}.ds-button-base--ghost:focus-visible:not(:disabled){box-shadow:none;outline:var(--ds-focus-width) solid var(--ds-button-focus-ring);outline-offset:0}.ds-button-base--ghost.ds-button--icon-only,.ds-button-base--ghost.ds-button--icon-only:active:not(:disabled),.ds-button-base--ghost.ds-button--icon-only:focus-visible:not(:disabled){color:var(--ds-button-ghost-icon-color)}.ds-button-base--tertiary{border-color:var(--ds-button-tertiary-border);color:var(--ds-button-tertiary-text);background:0 0}.ds-button-base--tertiary:hover:not(:disabled){border-color:var(--ds-button-accent);color:var(--ds-button-accent)}.ds-button-base--tertiary:active:not(:disabled){border-color:var(--ds-button-accent-press);color:var(--ds-button-accent-press)}.ds-button-base--tertiary.ds-button--icon-only:active:not(:disabled){border-color:var(--ds-button-tertiary-icon-press-border);color:var(--ds-button-tertiary-icon-press-text)}.ds-button-base--tertiary:focus-visible:not(:disabled){border-color:var(--ds-button-accent);box-shadow:none;outline:var(--ds-focus-width) solid var(--ds-button-focus-ring);outline-offset:0}.ds-button-base--destructive{border-color:var(--ds-button-danger);color:var(--ds-button-danger);background:0 0}.ds-button-base--destructive:hover:not(:disabled){background:var(--ds-button-danger);color:var(--ds-button-on-danger)}.ds-button-base--destructive:active:not(:disabled){border-color:var(--ds-button-danger-press);background:var(--ds-button-danger-press);color:var(--ds-button-on-danger)}.ds-button-base--destructive:focus-visible:not(:disabled){box-shadow:none;outline:var(--ds-focus-width) solid var(--ds-button-danger);outline-offset:0}.ds-button-base:disabled{cursor:not-allowed}.ds-button-base--primary:disabled{background:var(--ds-button-disabled-surface);color:var(--ds-button-disabled-text);border-color:#0000}.ds-button-base--secondary:disabled{border-color:var(--ds-button-secondary-disabled-border);background:var(--ds-button-secondary-disabled-surface);color:var(--ds-button-disabled-text)}.ds-button-base--ghost:disabled{color:var(--ds-button-disabled-text);background:0 0;border-color:#0000}.ds-button-base--tertiary:disabled,.ds-button-base--destructive:disabled{border-color:var(--ds-button-disabled-text);color:var(--ds-button-disabled-text);background:0 0}.ds-button-base--loading:disabled{background:var(--ds-button-disabled-surface);cursor:progress;border-color:#0000}.ds-button-base--loading{position:relative}.ds-button-base--loading .ds-button-base__leading,.ds-button-base--loading .ds-button-base__label,.ds-button-base--loading .ds-button-base__trailing{opacity:0}.ds-button-base__spinner{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ds-button-base__spinner-svg{width:var(--ds-button-icon-size);height:var(--ds-button-icon-size);animation:.7s linear infinite ds-spin}.ds-button-base--compact .ds-button-base__spinner-svg{width:var(--ds-button-icon-size-inline);height:var(--ds-button-icon-size-inline)}.ds-button-base__spinner-track{stroke:var(--ds-button-spinner-track)}.ds-button-base__spinner-indicator{stroke:var(--ds-button-spinner-indicator)}.ds-button-base__label{text-overflow:ellipsis;min-width:0;overflow:hidden}.ds-button-base__leading,.ds-button-base__trailing{flex:none;justify-content:center;align-items:center;display:inline-flex}@keyframes ds-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ds-button-base,.ds-button-base__spinner-svg{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}.ds-switch,.ds-switch *{box-sizing:border-box}.ds-switch{--ds-switch-track-width:2.5rem;--ds-switch-track-height:1rem;--ds-switch-thumb-size:1.5rem;--ds-switch-track-off:var(--gray-solid);--ds-switch-track-off-hover:var(--gray-solid-hover);--ds-switch-track-on:var(--accent-solid);--ds-switch-track-on-hover:var(--accent-solid-hover);--ds-switch-track-on-focus:var(--ds-switch-track-on);--ds-switch-track-disabled:var(--ds-control-disabled-surface);--ds-switch-track-invalid:var(--danger-solid);--ds-switch-track-invalid-hover:var(--danger-solid-hover);--ds-switch-thumb-color:var(--accent-contrast);--ds-switch-thumb-color-disabled:var(--ds-control-disabled-text);--ds-switch-thumb-shadow:var(--elevation-1);--ds-switch-thumb-ring:var(--accent-border-hover);--ds-switch-thumb-ring-width:2px;--ds-switch-thumb-halo-width:2px;align-items:center;gap:var(--space-2);color:var(--ds-switch-color,var(--ds-control-text));font-family:var(--font-family-sans);display:inline-flex}.ds-switch--invalid{--ds-switch-thumb-ring:var(--danger-border)}.ds-switch--compact{--ds-switch-track-width:2rem;--ds-switch-track-height:.75rem;--ds-switch-thumb-size:1.125rem}.ds-switch__control{width:var(--ds-switch-track-width);height:max(var(--ds-switch-thumb-size), var(--ds-switch-track-height));cursor:pointer;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;flex:none;padding:0;display:inline-block;position:relative}.ds-switch__control:before{content:"";height:var(--ds-switch-track-height);border-radius:var(--radius-round);background:var(--ds-switch-track-off);transition:background-color var(--motion-fast) ease;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.ds-switch__control[data-state=checked]:before{background:var(--ds-switch-track-on)}.ds-switch__control:not([data-disabled]):hover:before{background:var(--ds-switch-track-off-hover)}.ds-switch__control[data-state=checked]:not([data-disabled]):hover:before{background:var(--ds-switch-track-on-hover)}.ds-switch__control[data-state=checked]:not([data-disabled]):focus-visible:before{background:var(--ds-switch-track-on-focus)}.ds-switch--invalid .ds-switch__control:before,.ds-switch--invalid .ds-switch__control[data-state=checked]:before{background:var(--ds-switch-track-invalid)}.ds-switch--invalid .ds-switch__control:not([data-disabled]):hover:before,.ds-switch--invalid .ds-switch__control[data-state=checked]:not([data-disabled]):hover:before{background:var(--ds-switch-track-invalid-hover)}.ds-switch--invalid .ds-switch__control[data-state=checked]:not([data-disabled]):focus-visible:before{background:var(--ds-switch-track-invalid)}.ds-switch__control[data-disabled]:before{background:var(--ds-switch-track-disabled)}.ds-switch__thumb{width:var(--ds-switch-thumb-size);height:var(--ds-switch-thumb-size);background:var(--ds-switch-thumb-color);box-shadow:var(--ds-switch-thumb-shadow);transition:transform var(--motion-fast) ease, background-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;pointer-events:none;border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ds-switch__thumb[data-state=checked]{transform:translate(calc(var(--ds-switch-track-width) - var(--ds-switch-thumb-size)), -50%)}.ds-switch__control[data-disabled] .ds-switch__thumb{background:var(--ds-switch-thumb-color-disabled)}.ds-switch--disabled,.ds-switch__control[data-disabled]{cursor:not-allowed}.ds-switch--disabled .ds-switch__label{color:var(--ds-control-disabled-text);cursor:not-allowed}.ds-switch__control:focus-visible{outline:none}.ds-switch__control:not([data-disabled]):hover .ds-switch__thumb,.ds-switch__control:not([data-disabled]):focus-visible .ds-switch__thumb{border:var(--ds-switch-thumb-halo-width) solid var(--ds-switch-thumb-color);box-shadow:var(--ds-switch-thumb-shadow), inset 0 0 0 var(--ds-switch-thumb-ring-width) var(--ds-switch-thumb-ring)}.ds-switch__label{cursor:pointer;-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion:reduce){.ds-switch__control:before,.ds-switch__thumb{transition-duration:.01ms}}
