/* Swipe-to-dismiss progress (0 at rest, 1 gone), written by attachSheetDrag in mobileSheet.js. */
@property --sheet-drag { syntax: '<number>'; inherits: true; initial-value: 0; }
/* Shared motion vocabulary; utilities are opt-in. */
.kairos-redesign {
  --rd-ease: cubic-bezier(.2,.8,.2,1);
  --rd-spring: cubic-bezier(.32,1.25,.5,1);
  --rd-dur-tab: 240ms;
  --rd-dur-fade: 200ms;
  --rd-dur-push: 280ms;
  --rd-dur-sheet: 320ms;
  --rd-dur-menu: 160ms;
  --rd-stagger: 30ms;
}
.kairos-redesign .rd-enter-rise,
.kairos-redesign .rd-stagger > * { animation: rd-rise var(--rd-dur-fade) var(--rd-ease) backwards; }
.kairos-redesign .rd-stagger > :nth-child(1) { animation-delay: 0ms; }
.kairos-redesign .rd-stagger > :nth-child(2) { animation-delay: var(--rd-stagger); }
.kairos-redesign .rd-stagger > :nth-child(3) { animation-delay: calc(var(--rd-stagger) * 2); }
.kairos-redesign .rd-stagger > :nth-child(4) { animation-delay: calc(var(--rd-stagger) * 3); }
.kairos-redesign .rd-stagger > :nth-child(5) { animation-delay: calc(var(--rd-stagger) * 4); }
.kairos-redesign .rd-stagger > :nth-child(6) { animation-delay: calc(var(--rd-stagger) * 5); }
.kairos-redesign .rd-sheet-in { animation: rd-sheet var(--rd-dur-sheet) var(--rd-spring) backwards; }
.kairos-redesign .rd-scrim-in { animation: rd-opacity var(--rd-dur-fade) var(--rd-ease) both; }
.kairos-redesign .rd-push-in { animation: rd-push var(--rd-dur-push) var(--rd-ease) backwards; }
.kairos-redesign .rd-menu-in { animation: rd-menu var(--rd-dur-menu) var(--rd-ease) backwards; }
/* Entrances yield back to normal layout after finishing, including fixed children. */
@keyframes rd-rise { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes rd-sheet { from { transform: translateY(100%); } to { transform: none; } }
@keyframes rd-opacity { from { opacity: 0; } to { opacity: 1; } }
@keyframes rd-push { from { transform: translateX(100%); } to { transform: none; } }
@keyframes rd-menu { from { opacity: 0; transform: scale(.96); } to { opacity: 1; transform: none; } }
/* Follows the OS preference only. Appearance's `motion` setting is the Flow
   background's own "Animate background" switch, not a UI-wide one. */
@media (prefers-reduced-motion: reduce) {
  .kairos-redesign :is(.rd-enter-rise, .rd-stagger > *, .rd-sheet-in, .rd-scrim-in, .rd-push-in, .rd-menu-in) {
    animation: rd-opacity 120ms var(--rd-ease) both; animation-delay: 0ms !important; transform: none;
  }
  .kairos-redesign .rd-segmented .rd-segmented-thumb { transition: none; }
}

/* While a sheet is dragged away its scrim fades with the distance. */
.kairos-redesign :is(.modal-backdrop, .ts-sheet-backdrop)[data-sheet-dragging],
.kairos-redesign dialog[data-sheet-dragging]::backdrop { background: rgba(var(--shade-rgb), calc(.38 * (1 - var(--sheet-drag)))) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
