.SkipLink-skipLink-NVcZ7 {
  position: absolute !important;
  background: var(--color-background-highlighted-emphasis-base) !important;
}

  @media (prefers-reduced-motion: no-preference) {.SkipLink-skipLink-NVcZ7 {
    transition: var(--motion-property-primary) var(--motion-duration-200)
}
  }

/* visually hidden when not focused */
.SkipLink-skipLink-NVcZ7:not(:focus-visible) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  width: 1px;
  transform: translateY(-100%);
}

.SkipLink-skipLink-NVcZ7:focus-visible {
  transform: translateY(0%);
  top: var(--unit-space-75);
  left: var(--unit-space-75);
  z-index: var(--elevation-zIndex-xxl) !important;
}

.Toaster-toastRack-_XJg5 {
  position: fixed;
  top: var(--unit-space-300);
  left: 0;
  right: 0;
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
  z-index: var(--elevation-zIndex-xxl);
}

  .Toaster-toastRack-_XJg5 > div:first-child {
    margin-block-end: var(--unit-space-75);
  }

.AppShell-siteBodyWithNavigation-CYQ_m {
  background-color: var(--color-surface-app-background);
}

.AppShell-siteMainWithNavigation-mSG7o {
  background-color: var(--color-surface-primary-base);
  border-radius: var(--unit-border-radius-xl);
  border: var(--unit-border-width-xs) var(--unit-border-style-solid)
    var(--color-border-subtle-base);
  margin-block-end: var(--unit-space-50);
  margin-inline-end: var(--unit-space-50);
  transition: width var(--motion-duration-600) var(--motion-timing-ease-in-out);
}

/* Box API does not support single-side border; keep block-end border only here */
.AppShell-headerFallbackBorder-O1XOK {
  border-block-end: var(--unit-border-width-xs) var(--unit-border-style-solid)
    var(--color-border-subtle-base);
}

/* Define animatable angle property for smooth gradient rotation */
@property --gradient-angle {
  syntax: '<angle>';
  initial-value: 0turn;
  inherits: false;
}

/* Keyframe animation for rotating gradient angle */
@keyframes AIBorder-rotateBorderGradient-QByvm {
  to {
    --gradient-angle: 1turn;
  }
}

/* Container that holds the gradient border via ::before pseudo-element */
.AIBorder-container-HDOtu {
  --gradient-border-radius: var(--unit-border-radius-xl);
  --gradient-border-width: var(--unit-border-width-sm);
  position: relative;
  padding: var(--gradient-border-width);
  /* Add border width to the base radius to account for border */
  border-radius: calc(
    var(--gradient-border-radius) + var(--gradient-border-width)
  );
}

/* Gradient border using ::before pseudo-element */
.AIBorder-container-HDOtu::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  z-index: 0;
  pointer-events: none;
}

/* Animation enabled state */
@media (prefers-reduced-motion: no-preference) {
  .AIBorder-animated-GT0Av::before {
    animation: AIBorder-rotateBorderGradient-QByvm 2.4s ease infinite;
    animation-fill-mode: forwards;
  }
}

/* Content wrapper to sit above the gradient border */
.AIBorder-content-Zp4S1 {
  position: relative;
  z-index: 1;
  height: 100%;
  background: var(--color-background-input-base);
  /* Inner radius matches the base radius (same as wrapped component) */
  border-radius: var(--gradient-border-radius);
}

/* Hide the border of the wrapped child element */
.AIBorder-content-Zp4S1 > * {
  border-color: transparent !important;
}

/* Hide nested input/textarea borders only when forInput is set */
.AIBorder-content-Zp4S1.AIBorder-forInput-NEjuk input,
.AIBorder-content-Zp4S1.AIBorder-forInput-NEjuk textarea {
  border-color: transparent !important;
}

/* Border radius variants */
.AIBorder-borderRadiusNone-wvy2R {
  --gradient-border-radius: 0;
}

.AIBorder-borderRadiusXs-AgrB8 {
  --gradient-border-radius: var(--unit-border-radius-xs);
}

.AIBorder-borderRadiusSm-z4hCU {
  --gradient-border-radius: var(--unit-border-radius-sm);
}

.AIBorder-borderRadiusMd-CLbZL {
  --gradient-border-radius: var(--unit-border-radius-md);
}

.AIBorder-borderRadiusLg-iOaMF {
  --gradient-border-radius: var(--unit-border-radius-lg);
}

.AIBorder-borderRadiusXl-UgkeW {
  --gradient-border-radius: var(--unit-border-radius-xl);
}

/* Border width variants */
.AIBorder-borderWidthSm-hbUwG {
  --gradient-border-width: var(--unit-border-width-sm);
}

.AIBorder-borderWidthLg-cZ5QA {
  --gradient-border-width: var(--unit-border-width-lg);
}

/* Gradient style variants - applied directly to ::before to preserve animation */
.AIBorder-gradientEmphasis-VQhpP::before {
  background: var(--color-border-kai-emphasis-base);
}

.AIBorder-gradientSubtle-cP_Nk::before {
  background: var(--color-border-kai-subtle-base);
}

