/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
    ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    :root,
    :host {
      --shimmer-angle: 20deg;
    }
    *,
    :before,
    :after {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-content: '';
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
    ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-x-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-content: '';
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-animation-delay: 0s;
      --tw-animation-direction: normal;
      --tw-animation-duration: initial;
      --tw-animation-fill-mode: none;
      --tw-animation-iteration-count: 1;
      --tw-enter-blur: 0;
      --tw-enter-opacity: 1;
      --tw-enter-rotate: 0;
      --tw-enter-scale: 1;
      --tw-enter-translate-x: 0;
      --tw-enter-translate-y: 0;
      --tw-exit-blur: 0;
      --tw-exit-opacity: 1;
      --tw-exit-rotate: 0;
      --tw-exit-scale: 1;
      --tw-exit-translate-x: 0;
      --tw-exit-translate-y: 0;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
  }
}
@layer theme {
  :root,
  :host {
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --tracking-tight: -0.025em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --radius-4xl: 2rem;
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-xs: 4px;
    --aspect-video: 16 / 9;
    --default-transition-duration: 0.15s;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--sans);
    --default-mono-font-family: var(--mono);
    --radius: 0;
    --color-border: var(--border);
  }
}
@layer base {
  *,
  :after,
  :before {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  html,
  :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(
      --default-font-family,
      ui-sans-serif,
      system-ui,
      sans-serif,
      'Apple Color Emoji',
      'Segoe UI Emoji',
      'Segoe UI Symbol',
      'Noto Color Emoji'
    );
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b,
  strong {
    font-weight: bolder;
  }
  code,
  kbd,
  samp,
  pre {
    font-family: var(
      --default-mono-font-family,
      ui-monospace,
      SFMono-Regular,
      Menlo,
      Monaco,
      Consolas,
      'Liberation Mono',
      'Courier New',
      monospace
    );
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(
      --default-mono-font-variation-settings,
      normal
    );
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub,
  sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol,
  ul,
  menu {
    list-style: none;
  }
  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    vertical-align: middle;
    display: block;
  }
  img,
  video {
    max-width: 100%;
    height: auto;
  }
  button,
  input,
  select,
  optgroup,
  textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not ((-webkit-appearance: -apple-pay-button))) or
    (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }
    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }
  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button,
  input:where([type='button'], [type='reset'], [type='submit']) {
    -webkit-appearance: button;
    appearance: button;
  }
  ::file-selector-button {
    -webkit-appearance: button;
    appearance: button;
  }
  ::-webkit-inner-spin-button {
    height: auto;
  }
  ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden='until-found'])) {
    display: none !important;
  }
}
@layer components;
@layer utilities {
  .\@container\/card-header {
    container: card-header/inline-size;
  }
  .\@container\/field-group {
    container: field-group/inline-size;
  }
  .-top-12 {
    top: calc(var(--spacing) * -12);
  }
  .-right-12 {
    right: calc(var(--spacing) * -12);
  }
  .-bottom-12 {
    bottom: calc(var(--spacing) * -12);
  }
  .-left-12 {
    left: calc(var(--spacing) * -12);
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .-my-2 {
    margin-block: calc(var(--spacing) * -2);
  }
  .-mt-4 {
    margin-top: calc(var(--spacing) * -4);
  }
  .-mb-4 {
    margin-bottom: calc(var(--spacing) * -4);
  }
  .-ml-1 {
    margin-left: calc(var(--spacing) * -1);
  }
  .-ml-4 {
    margin-left: calc(var(--spacing) * -4);
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-x-px {
    --tw-translate-x: -1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-3\/4 {
    --tw-translate-y: calc(calc(3 / 4 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .\[transform\:translateX\(var\(--toast-swipe-movement-x\)\)_translateY\(calc\(var\(--toast-swipe-movement-y\)-\(var\(--toast-index\)\*var\(--peek\)\)-\(var\(--shrink\)\*var\(--height\)\)\)\)_scale\(var\(--scale\)\)\] {
    transform: translateX(var(--toast-swipe-movement-x))
      translateY(
        calc(
          var(--toast-swipe-movement-y) - (var(--toast-index) * var(--peek)) -
            (var(--shrink) * var(--height))
        )
      )
      scale(var(--scale));
  }
  :where(.-space-x-2 > :not(:last-child)) {
    --tw-space-x-reverse: 0;
    margin-inline-start: calc(
      calc(var(--spacing) * -2) * var(--tw-space-x-reverse)
    );
    margin-inline-end: calc(
      calc(var(--spacing) * -2) * calc(1 - var(--tw-space-x-reverse))
    );
  }
  .\[--bleed\:3rem\] {
    --bleed: 3rem;
  }
  .\[--card-spacing\:--spacing\(4\)\] {
    --card-spacing: calc(var(--spacing) * 4);
  }
  .\[--cell-radius\:var\(--radius-md\)\] {
    --cell-radius: var(--radius-md);
  }
  .\[--cell-size\:--spacing\(7\)\] {
    --cell-size: calc(var(--spacing) * 7);
  }
  .\[--drawer-content-height\:var\(--drawer-height\,auto\)\] {
    --drawer-content-height: var(--drawer-height, auto);
  }
  .\[--gap\:0\.75rem\] {
    --gap: 0.75rem;
  }
  .\[--height\:var\(--toast-frontmost-height\,var\(--toast-height\)\)\] {
    --height: var(--toast-frontmost-height, var(--toast-height));
  }
  .\[--offset-y\:calc\(var\(--toast-offset-y\)\*-1\+calc\(var\(--toast-index\)\*var\(--gap\)\*-1\)\+var\(--toast-swipe-movement-y\)\)\] {
    --offset-y: calc(
      var(--toast-offset-y) * -1 + calc(var(--toast-index) * var(--gap) * -1) +
        var(--toast-swipe-movement-y)
    );
  }
  .\[--peek\:0\.75rem\] {
    --peek: 0.75rem;
  }
  .\[--peek\:1rem\] {
    --peek: 1rem;
  }
  .\[--scale\:calc\(max\(0\,1-\(var\(--toast-index\)\*0\.1\)\)\)\] {
    --scale: calc(max(0, 1 - (var(--toast-index) * 0.1)));
  }
  .\[--shrink\:calc\(1-var\(--scale\)\)\] {
    --shrink: calc(1 - var(--scale));
  }
  .\[--stack-height\:var\(--drawer-frontmost-height\,var\(--drawer-height\,0px\)\)\] {
    --stack-height: var(--drawer-frontmost-height, var(--drawer-height, 0px));
  }
  .\[--stack-peek-offset\:max\(0px\,calc\(\(var\(--nested-drawers\)-var\(--stack-progress\)\)\*var\(--peek\)\)\)\] {
    --stack-peek-offset: max(
      0px,
      calc((var(--nested-drawers) - var(--stack-progress)) * var(--peek))
    );
  }
  .\[--stack-progress\:clamp\(0\,var\(--drawer-swipe-progress\)\,1\)\] {
    --stack-progress: clamp(0, var(--drawer-swipe-progress), 1);
  }
  .\[--stack-scale-base\:max\(0\,calc\(1-\(var\(--nested-drawers\)\*var\(--stack-step\)\)\)\)\] {
    --stack-scale-base: max(
      0,
      calc(1 - (var(--nested-drawers) * var(--stack-step)))
    );
  }
  .\[--stack-scale\:clamp\(0\,calc\(var\(--stack-scale-base\)\+\(var\(--stack-step\)\*var\(--stack-progress\)\)\)\,1\)\] {
    --stack-scale: clamp(
      0,
      calc(
        var(--stack-scale-base) + (var(--stack-step) * var(--stack-progress))
      ),
      1
    );
  }
  .\[--stack-shrink\:calc\(1-var\(--stack-scale\)\)\] {
    --stack-shrink: calc(1 - var(--stack-scale));
  }
  .\[--stack-step\:0\.05\] {
    --stack-step: 0.05;
  }
  .\[contain-intrinsic-size\:auto_10rem\] {
    contain-intrinsic-size: auto 10rem;
  }
  .\[content-visibility\:auto\] {
    content-visibility: auto;
  }
  .\[interpolate-size\:allow-keywords\] {
    interpolate-size: allow-keywords;
  }
  .\[transition\:transform_500ms_cubic-bezier\(0\.22\,1\,0\.36\,1\)\,opacity_500ms\,height_150ms\] {
    transition:
      transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
      opacity 0.5s,
      height 0.15s;
  }
  :is(.\*\:w-full > *) {
    width: 100%;
  }
  :is(.\*\:focus-visible\:relative > *):focus-visible {
    position: relative;
  }
  :is(.\*\:focus-visible\:z-10 > *):focus-visible {
    z-index: 10;
  }
  :is(.\*\:data-slot\:rounded-r-none > *)[data-slot] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  :is(.\*\:data-slot\:rounded-b-none > *)[data-slot] {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  :is(
    .\*\*\:data-\[slot\=accordion-trigger-icon\]\:ml-auto *
  )[data-slot='accordion-trigger-icon'] {
    margin-left: auto;
  }
  :is(
    .\*\*\:data-\[slot\=accordion-trigger-icon\]\:size-4 *
  )[data-slot='accordion-trigger-icon'] {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  :is(
    .\*\*\:data-\[slot\=accordion-trigger-icon\]\:text-muted-foreground *
  )[data-slot='accordion-trigger-icon'] {
    color: var(--muted-foreground);
  }
  :is(
    .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
  )[data-slot='alert-description'] {
    color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
    )[data-slot='alert-description'] {
      color: color-mix(in oklab, var(--destructive) 90%, transparent);
    }
  }
  :is(.\*\:data-\[slot\=attachment\]\:flex-none > *)[data-slot='attachment'] {
    flex: none;
  }
  :is(.\*\:data-\[slot\=attachment\]\:snap-start > *)[data-slot='attachment'] {
    scroll-snap-align: start;
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-2 > *)[data-slot='avatar'] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  :is(.\*\:data-\[slot\=avatar\]\:ring-background > *)[data-slot='avatar'] {
    --tw-ring-color: var(--background);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:rounded-none > *
  )[data-slot='bubble-content'] {
    border-radius: 0;
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:border-border > *
  )[data-slot='bubble-content'] {
    border-color: var(--border);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-\[oklch\(from_var\(--primary\)_0\.93_calc\(c\*0\.4\)_h\)\]
      > *
  )[data-slot='bubble-content'] {
    background-color: oklch(from var(--primary) 0.93 calc(c * 0.4) h);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-background > *
  )[data-slot='bubble-content'] {
    background-color: var(--background);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-destructive\/10 > *
  )[data-slot='bubble-content'] {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=bubble-content\]\:bg-destructive\/10 > *
    )[data-slot='bubble-content'] {
      background-color: color-mix(
        in oklab,
        var(--destructive) 10%,
        transparent
      );
    }
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-muted > *
  )[data-slot='bubble-content'] {
    background-color: var(--muted);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-primary > *
  )[data-slot='bubble-content'] {
    background-color: var(--primary);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:bg-transparent > *
  )[data-slot='bubble-content'] {
    background-color: #0000;
  }
  :is(.\*\:data-\[slot\=bubble-content\]\:p-0 > *)[data-slot='bubble-content'] {
    padding: calc(var(--spacing) * 0);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-destructive > *
  )[data-slot='bubble-content'] {
    color: var(--destructive);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-foreground > *
  )[data-slot='bubble-content'] {
    color: var(--foreground);
  }
  :is(
    .\*\:data-\[slot\=bubble-content\]\:text-primary-foreground > *
  )[data-slot='bubble-content'] {
    color: var(--primary-foreground);
  }
  :is(.\*\:data-\[slot\=field\]\:p-2\.5 > *)[data-slot='field'] {
    padding: calc(var(--spacing) * 2.5);
  }
  :is(.\*\:data-\[slot\=field-group\]\:gap-4 > *)[data-slot='field-group'] {
    gap: calc(var(--spacing) * 4);
  }
  :is(.\*\:data-\[slot\=field-label\]\:flex-auto > *)[data-slot='field-label'] {
    flex: auto;
  }
  :is(.\*\:data-\[slot\=input-group\]\:m-1 > *)[data-slot='input-group'] {
    margin: calc(var(--spacing) * 1);
  }
  :is(.\*\:data-\[slot\=input-group\]\:mb-0 > *)[data-slot='input-group'] {
    margin-bottom: calc(var(--spacing) * 0);
  }
  :is(.\*\:data-\[slot\=input-group\]\:h-8 > *)[data-slot='input-group'] {
    height: calc(var(--spacing) * 8);
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
  )[data-slot='input-group'] {
    border-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:border-input\/30 > *
    )[data-slot='input-group'] {
      border-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
  )[data-slot='input-group'] {
    background-color: var(--input);
  }
  @supports (color: color-mix(in lab, red, red)) {
    :is(
      .\*\:data-\[slot\=input-group\]\:bg-input\/30 > *
    )[data-slot='input-group'] {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  :is(
    .\*\:data-\[slot\=input-group\]\:shadow-none > *
  )[data-slot='input-group'] {
    --tw-shadow: 0 0 #0000;
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  :is(
    .\*\:data-\[slot\=input-group-addon\]\:pl-2\! > *
  )[data-slot='input-group-addon'] {
    padding-left: calc(var(--spacing) * 2) !important;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot='kbd'] {
    position: relative;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot='kbd'] {
    isolation: isolate;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot='kbd'] {
    z-index: 50;
  }
  :is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot='kbd'] {
    border-radius: var(--radius-sm);
  }
  :is(
      .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *
    )[data-slot='navigation-menu-link']:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  :is(
      .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *
    )[data-slot='navigation-menu-link']:focus {
    --tw-outline-style: none;
    outline-style: none;
  }
  :is(
    .\*\:data-\[slot\=select-value\]\:line-clamp-1 > *
  )[data-slot='select-value'] {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }
  :is(.\*\:data-\[slot\=select-value\]\:flex > *)[data-slot='select-value'] {
    display: flex;
  }
  :is(
    .\*\:data-\[slot\=select-value\]\:items-center > *
  )[data-slot='select-value'] {
    align-items: center;
  }
  :is(
    .\*\:data-\[slot\=select-value\]\:gap-1\.5 > *
  )[data-slot='select-value'] {
    gap: calc(var(--spacing) * 1.5);
  }
  @container field-group (width>=28rem) {
    .\@md\/field-group\:flex-row {
      flex-direction: row;
    }
    .\@md\/field-group\:items-center {
      align-items: center;
    }
    :is(.\@md\/field-group\:\*\:w-auto > *) {
      width: auto;
    }
    .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(
      > [data-slot='field-content']
    ) {
      align-items: flex-start;
    }
    :is(
      .\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto > *
    )[data-slot='field-label'] {
      flex: auto;
    }
  }
  .\[\&_a\]\:underline a {
    text-decoration-line: underline;
  }
  .\[\&_a\]\:underline-offset-3 a {
    text-underline-offset: 3px;
  }
  @media (hover: hover) {
    .\[\&_a\]\:hover\:text-foreground a:hover {
      color: var(--foreground);
    }
  }
  .\[\&_img\]\:size-full img {
    width: 100%;
    height: 100%;
  }
  .\[\&_img\]\:object-cover img {
    object-fit: cover;
  }
  .\[\&_p\:not\(\:last-child\)\]\:mb-4 p:not(:last-child) {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:size-4 svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*='size-']) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5
    svg:not([class*='size-']) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*='size-']) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&_tr\]\:border-b tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .\[\&_tr\:last-child\]\:border-0 tr:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }
  .\[\&\+\[data-slot\=item-content\]\]\:flex-none + [data-slot='item-content'] {
    flex: none;
  }
  .\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-\(--cell-radius\):first-child[data-selected='true']
    button {
    border-top-left-radius: var(--cell-radius);
    border-bottom-left-radius: var(--cell-radius);
  }
  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role='checkbox']) {
    padding-right: calc(var(--spacing) * 0);
  }
  :is(.\*\*\:\[\[cmdk-group-heading\]\]\:px-2 *)[cmdk-group-heading] {
    padding-inline: calc(var(--spacing) * 2);
  }
  :is(.\*\*\:\[\[cmdk-group-heading\]\]\:py-1\.5 *)[cmdk-group-heading] {
    padding-block: calc(var(--spacing) * 1.5);
  }
  :is(.\*\*\:\[\[cmdk-group-heading\]\]\:text-xs *)[cmdk-group-heading] {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  :is(.\*\*\:\[\[cmdk-group-heading\]\]\:font-medium *)[cmdk-group-heading] {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  :is(
    .\*\*\:\[\[cmdk-group-heading\]\]\:text-muted-foreground *
  )[cmdk-group-heading] {
    color: var(--muted-foreground);
  }
  .\[a\]\:underline:is(a) {
    text-decoration-line: underline;
  }
  .\[a\]\:underline-offset-3:is(a) {
    text-underline-offset: 3px;
  }
  .\[a\]\:transition-colors:is(a) {
    transition-property:
      color, background-color, border-color, outline-color,
      text-decoration-color, fill, stroke, --tw-gradient-from,
      --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  :is(.\*\:\[a\]\:underline > *):is(a) {
    text-decoration-line: underline;
  }
  :is(.\*\:\[a\]\:underline-offset-3 > *):is(a) {
    text-underline-offset: 3px;
  }
  @media (hover: hover) {
    .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
        background-color: color-mix(
          in oklab,
          var(--destructive) 20%,
          transparent
        );
      }
    }
    .\[a\]\:hover\:bg-muted:is(a):hover {
      background-color: var(--muted);
    }
    .\[a\]\:hover\:bg-primary\/80:is(a):hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-primary\/80:is(a):hover {
        background-color: color-mix(in oklab, var(--primary) 80%, transparent);
      }
    }
    .\[a\]\:hover\:text-foreground:is(a):hover {
      color: var(--foreground);
    }
    .\[a\]\:hover\:text-muted-foreground:is(a):hover {
      color: var(--muted-foreground);
    }
    :is(.\*\:\[a\]\:hover\:text-foreground > *):is(a):hover {
      color: var(--foreground);
    }
  }
  .\[button\]\:text-left:is(button) {
    text-align: left;
  }
  .\[button\,a\]\:transition-colors:is(button, a) {
    transition-property:
      color, background-color, border-color, outline-color,
      text-decoration-color, fill, stroke, --tw-gradient-from,
      --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(
      --tw-ease,
      var(--default-transition-timing-function)
    );
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .\[button\,a\]\:outline-none:is(button, a) {
    --tw-outline-style: none;
    outline-style: none;
  }
  .\[button\,a\]\:focus-visible\:border-ring:is(button, a):focus-visible {
    border-color: var(--ring);
  }
  .\[button\,a\]\:focus-visible\:ring-3:is(button, a):focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
      calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow:
      var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
      var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .\[button\,a\]\:focus-visible\:ring-ring\/50:is(button, a):focus-visible {
    --tw-ring-color: var(--ring);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[button\,a\]\:focus-visible\:ring-ring\/50:is(button, a):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  :is(.\*\:\[img\]\:aspect-square > *):is(img) {
    aspect-ratio: 1;
  }
  :is(.\*\:\[img\]\:w-full > *):is(img) {
    width: 100%;
  }
  :is(.\*\:\[img\]\:object-cover > *):is(img) {
    object-fit: cover;
  }
  :is(.\*\:\[img\:first-child\]\:rounded-t-xl > *):is(img:first-child) {
    border-top-left-radius: var(--radius-xl);
    border-top-right-radius: var(--radius-xl);
  }
  :is(.\*\:\[img\:last-child\]\:rounded-b-xl > *):is(img:last-child) {
    border-bottom-right-radius: var(--radius-xl);
    border-bottom-left-radius: var(--radius-xl);
  }
  :is(.\*\:\[span\]\:last\:flex > *):is(span):last-child {
    display: flex;
  }
  :is(.\*\:\[span\]\:last\:items-center > *):is(span):last-child {
    align-items: center;
  }
  :is(.\*\:\[span\]\:last\:gap-2 > *):is(span):last-child {
    gap: calc(var(--spacing) * 2);
  }
  :is(.\*\:\[svg\]\:row-span-2 > *):is(svg) {
    grid-row: span 2/span 2;
  }
  :is(.\*\:\[svg\]\:translate-y-0\.5 > *):is(svg) {
    --tw-translate-y: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  :is(.\*\:\[svg\]\:text-current > *):is(svg) {
    color: currentColor;
  }
  :is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 > *):is(
    svg:not([class*='size-'])
  ) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  :is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6 > *):is(
    svg:not([class*='size-'])
  ) {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-\(--cell-radius\):last-child[data-selected='true']
    button {
    border-top-right-radius: var(--cell-radius);
    border-bottom-right-radius: var(--cell-radius);
  }
  .\[\&\:nth-child\(2\)\[data-selected\=true\]_button\]\:rounded-l-\(--cell-radius\):nth-child(
      2
    )[data-selected='true']
    button {
    border-top-left-radius: var(--cell-radius);
    border-bottom-left-radius: var(--cell-radius);
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: var(--muted);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--muted\)\,var\(--foreground\)_5\%\)\]
      > [data-slot='bubble-content']:is(button, a):hover {
      background-color: color-mix(in oklch, var(--muted), var(--foreground) 5%);
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: var(--secondary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]
      > [data-slot='bubble-content']:is(button, a):hover {
      background-color: color-mix(
        in oklch,
        var(--secondary),
        var(--foreground) 5%
      );
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-\[oklch\(from_var\(--primary\)_0\.88_calc\(c\*0\.5\)_h\)\]
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: oklch(from var(--primary) 0.88 calc(c * 0.5) h);
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/20
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: var(--destructive);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-destructive\/20
      > [data-slot='bubble-content']:is(button, a):hover {
      background-color: color-mix(
        in oklab,
        var(--destructive) 20%,
        transparent
      );
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-muted
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: var(--muted);
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-primary\/80
    > [data-slot='bubble-content']:is(button, a):hover {
    background-color: var(--primary);
  }
  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:bg-primary\/80
      > [data-slot='bubble-content']:is(button, a):hover {
      background-color: color-mix(in oklab, var(--primary) 80%, transparent);
    }
  }
  .\[\&\>\[data-slot\=bubble-content\]\:is\(button\,a\)\:hover\]\:text-foreground
    > [data-slot='bubble-content']:is(button, a):hover {
    color: var(--foreground);
  }
  .\[\&\>\[data-slot\=select-trigger\]\:not\(\[class\*\=\'w-\'\]\)\]\:w-fit
    > [data-slot='select-trigger']:not([class*='w-']) {
    width: fit-content;
  }
  .\[\&\>\[data-slot\]\:not\(\:has\(\~\[data-slot\]\)\)\]\:rounded-r-lg\!
    > [data-slot]:not(:has(~ [data-slot])) {
    border-top-right-radius: var(--radius-lg) !important;
    border-bottom-right-radius: var(--radius-lg) !important;
  }
  .\[\&\>\[data-slot\]\:not\(\:has\(\~\[data-slot\]\)\)\]\:rounded-b-lg\!
    > [data-slot]:not(:has(~ [data-slot])) {
    border-bottom-right-radius: var(--radius-lg) !important;
    border-bottom-left-radius: var(--radius-lg) !important;
  }
  .\[\&\>\[data-slot\]\~\[data-slot\]\]\:rounded-t-none
    > [data-slot]
    ~ [data-slot] {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  .\[\&\>\[data-slot\]\~\[data-slot\]\]\:rounded-l-none
    > [data-slot]
    ~ [data-slot] {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .\[\&\>\[data-slot\]\~\[data-slot\]\]\:border-t-0
    > [data-slot]
    ~ [data-slot] {
    border-top-style: var(--tw-border-style);
    border-top-width: 0;
  }
  .\[\&\>\[data-slot\]\~\[data-slot\]\]\:border-l-0
    > [data-slot]
    ~ [data-slot] {
    border-left-style: var(--tw-border-style);
    border-left-width: 0;
  }
  @container field-group (width>=28rem) {
    :is(
      .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
          > [data-slot='field-content']
        )
        > [role='checkbox'],
      .\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(
          > [data-slot='field-content']
        )
        [role='radio']
    ) {
      margin-top: 1px;
    }
  }
  .\[\&\>a\]\:underline > a {
    text-decoration-line: underline;
  }
  .\[\&\>a\]\:underline-offset-4 > a {
    text-underline-offset: 4px;
  }
  .\[\&\>a\:hover\]\:text-primary > a:hover {
    color: var(--primary);
  }
  .\[\&\>button\]\:hidden > button {
    display: none;
  }
  .\[\&\>input\]\:flex-1 > input {
    flex: 1;
  }
  .\[\&\>kbd\]\:rounded-\[calc\(var\(--radius\)-5px\)\] > kbd {
    border-radius: calc(var(--radius) - 5px);
  }
  .\[\&\>span\]\:text-xs > span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\[\&\>span\]\:opacity-70 > span {
    opacity: 0.7;
  }
  .\[\&\>span\:last-child\]\:truncate > span:last-child {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }
  .\[\&\>svg\]\:pointer-events-none > svg {
    pointer-events: none;
  }
  .\[\&\>svg\]\:size-3\! > svg {
    width: calc(var(--spacing) * 3) !important;
    height: calc(var(--spacing) * 3) !important;
  }
  .\[\&\>svg\]\:size-3\.5 > svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&\>svg\]\:size-4 > svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&\>svg\]\:h-2\.5 > svg {
    height: calc(var(--spacing) * 2.5);
  }
  .\[\&\>svg\]\:h-3 > svg {
    height: calc(var(--spacing) * 3);
  }
  .\[\&\>svg\]\:w-2\.5 > svg {
    width: calc(var(--spacing) * 2.5);
  }
  .\[\&\>svg\]\:w-3 > svg {
    width: calc(var(--spacing) * 3);
  }
  .\[\&\>svg\]\:shrink-0 > svg {
    flex-shrink: 0;
  }
  .\[\&\>svg\]\:text-muted-foreground > svg {
    color: var(--muted-foreground);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5
    > svg:not([class*='size-']) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&\>svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4
    > svg:not([class*='size-']) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }
  .\[\&\[aria-orientation\=horizontal\]\>div\]\:rotate-90[aria-orientation='horizontal']
    > div {
    rotate: 90deg;
  }
  .\[\&\[data-ending-style\]\:not\(\[data-limited\]\)\:not\(\[data-swipe-direction\]\)\]\:\[transform\:translateY\(150\%\)\][data-ending-style]:not(
      [data-limited]
    ):not([data-swipe-direction]) {
    transform: translateY(150%);
  }
  [data-side='left'][data-collapsible='offcanvas']
    .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
    right: calc(var(--spacing) * -2);
  }
  [data-side='left'][data-state='collapsed']
    .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize {
    cursor: e-resize;
  }
  [data-side='right'][data-collapsible='offcanvas']
    .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
    left: calc(var(--spacing) * -2);
  }
  [data-side='right'][data-state='collapsed']
    .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
    cursor: w-resize;
  }
  [data-variant='legend'] + .\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5 {
    margin-top: calc(var(--spacing) * -1.5);
  }
}
@property --tw-animation-delay {
  syntax: '*';
  inherits: false;
  initial-value: 0s;
}
@property --tw-animation-direction {
  syntax: '*';
  inherits: false;
  initial-value: normal;
}
@property --tw-animation-duration {
  syntax: '*';
  inherits: false;
}
@property --tw-animation-fill-mode {
  syntax: '*';
  inherits: false;
  initial-value: none;
}
@property --tw-animation-iteration-count {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-blur {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-opacity {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-rotate {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-scale {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-enter-translate-x {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-enter-translate-y {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-blur {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-opacity {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-rotate {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-scale {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-exit-translate-x {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-exit-translate-y {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-t {
  syntax: '<length-percentage>';
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-b {
  syntax: '<length-percentage>';
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-s {
  syntax: '<length-percentage>';
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-e {
  syntax: '<length-percentage>';
  inherits: false;
  initial-value: 0;
}
@property --scroll-fade-mask {
  syntax: '*';
  inherits: false;
}
@property --shimmer-angle {
  syntax: '<angle>';
  inherits: true;
  initial-value: 20deg;
}
@property --shimmer-image {
  syntax: '*';
  inherits: false;
}
@property --shimmer-text-fill {
  syntax: '*';
  inherits: false;
}
:root {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
  --background: #101d2a;
  --foreground: #edf1ee;
  --primary: #c9ac71;
  --primary-foreground: #101d2a;
  --muted: #1d3041;
  --muted-foreground: #a7b6c1;
  --border: #344655;
  --input: #344655;
  --ring: #c9ac71;
  --destructive: #ffb6a9;
  --sans:
    -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', Helvetica,
    Arial, sans-serif;
  --serif:
    Palatino, 'Palatino Linotype', 'Book Antiqua', 'Iowan Old Style', Georgia,
    serif;
  --mono: ui-monospace, 'SF Mono', SFMono-Regular, Menlo, Consolas, monospace;
}
* {
  box-sizing: border-box;
}
html {
  scroll-padding-top: 30px;
}
body {
  background: var(--background);
  color: var(--foreground);
  font: 16px/1.55 var(--sans);
  -webkit-font-smoothing: antialiased;
  margin: 0;
}
a {
  color: inherit;
  text-decoration: none;
}
button,
input {
  font: inherit;
}
button,
a,
input,
summary {
  touch-action: manipulation;
}
:is(
  a:focus-visible,
  button:focus-visible,
  input:focus-visible,
  summary:focus-visible
) {
  outline: 2px solid var(--primary);
  outline-offset: 5px;
}
::selection {
  color: #0c1d2d;
  background: #b69b60;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1,
h2 {
  font-family: var(--serif);
  letter-spacing: -0.045em;
  font-weight: 400;
}
h1 {
  font-size: clamp(3.1rem, 5.7vw, 5.4rem);
  line-height: 1.01;
}
h2 {
  font-size: clamp(2.2rem, 4vw, 3.6rem);
  line-height: 1.06;
}
h3 {
  font-size: 1.15rem;
  font-weight: 500;
}
.shell {
  width: min(1224px, 100% - 96px);
  margin-inline: auto;
}
.eyebrow {
  font-family: var(--mono);
}
.eyebrow {
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--primary);
  font-size: 12px;
  line-height: 1.6;
}
.arrow {
  font-family: var(--sans);
  margin-left: 0.5em;
}
.skip-link {
  background: var(--foreground);
  color: var(--background);
  z-index: 100;
  padding: 12px;
  position: fixed;
  top: -100px;
}
.skip-link:focus {
  top: 10px;
}
.site {
  --background: #101d2a;
  --plate: #122333;
  background: var(--background);
  flex-direction: column;
  min-height: calc(100svh - 38px);
  display: flex;
}
.site-header {
  border-bottom: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  height: 88px;
  display: flex;
}
.brand {
  letter-spacing: -0.04em;
  white-space: nowrap;
  align-items: center;
  gap: 11px;
  font-size: 23px;
  font-weight: 550;
  display: flex;
}
.brand svg {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
}
.brand small {
  font-size: 12px;
  font-family: var(--mono);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted-foreground);
  margin-left: 4px;
  font-weight: 400;
}
.header-links {
  align-items: center;
  gap: 26px;
  font-size: 14px;
  display: flex;
}
.header-links a:hover,
.footer-links a:hover {
  text-underline-offset: 5px;
  text-decoration: underline;
}
.footer {
  border-top: 1px solid var(--border);
  color: var(--muted-foreground);
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: auto;
  padding-block: 23px;
  font-size: 13px;
  display: flex;
}
.footer-copyright {
  flex-basis: 100%;
  font: 12px var(--mono);
  color: var(--muted-foreground);
}
.footer-brand {
  color: #e2e8e7;
  white-space: nowrap;
  align-items: center;
  gap: 10px;
  display: flex;
}
.footer-brand svg {
  width: 22px;
  height: 22px;
}
.footer-links {
  flex-wrap: wrap;
  gap: 22px;
  display: flex;
}
.footer-note {
  font: 12px var(--mono);
  color: var(--muted-foreground);
}
@media (max-width: 900px) {
  .shell {
    width: calc(100% - 48px);
  }
  .footer-note {
    display: none;
  }
  .header-links {
    gap: 18px;
  }
  .brand small {
    display: none;
  }
}
@media (max-width: 640px) {
  .shell {
    width: calc(100% - 36px);
  }
  .site-header {
    height: 76px;
  }
  .brand {
    font-size: 21px;
  }
  .header-links {
    gap: 14px;
  }
  .footer {
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    padding-block: 24px;
  }
  .footer-links {
    gap: 22px;
    font-size: 13px;
  }
  .header-links .optional {
    display: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
  a,
  button {
    transition:
      color 0.15s,
      background-color 0.15s,
      border-color 0.15s;
  }
}
figure {
  margin: 0;
}
.breakover {
  --background: #152820;
  --plate: #17372f;
  --foreground: #edf1e9;
  --border: #365347;
  --muted-foreground: #b0c2b6;
  --primary: #f59e0b;
  --primary-foreground: #152820;
  --input: #597368;
  --ring: #f59e0b;
  --leaf: #9fcb70;
}
.breakover .brand svg {
  color: var(--primary);
}
em {
  color: var(--primary);
  font-style: normal;
}
.action-row {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 31px;
  display: flex;
}
.action {
  border: 1px solid var(--border);
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 48px;
  padding: 12px 18px;
  font-size: 14px;
  font-weight: 550;
  display: inline-flex;
}
.action.primary {
  color: var(--primary-foreground);
  background: var(--primary);
  border-color: var(--primary);
}
.action.primary.soon {
  background: transparent;
  color: var(--leaf);
  border: 1px solid color-mix(in srgb, var(--leaf) 45%, transparent);
  cursor: default;
}
.header-soon {
  font-size: 13px;
  letter-spacing: 0.04em;
  color: var(--leaf);
  border: 1px solid color-mix(in srgb, var(--leaf) 35%, transparent);
  border-radius: 999px;
  padding: 5px 12px;
}
.action.primary:hover {
  background: #e4c88d;
}
.action.secondary:hover {
  background: var(--muted);
}
.micro {
  font: 12px/1.7 var(--mono);
  color: var(--muted-foreground);
  margin-top: 17px;
}
.micro span {
  color: var(--border);
  padding-inline: 10px;
}
@media (max-width: 1000px) {
  .header-links {
    font-size: 13px;
  }
}
@media (max-width: 480px) {
  .header-links {
    font-size: 12px;
  }
  .action-row {
    gap: 9px;
  }
  .action {
    gap: 15px;
    padding-inline: 13px;
    font-size: 13px;
  }
  .micro {
    font-size: 12px;
  }
  .micro span {
    display: none;
  }
  .micro {
    max-width: 290px;
  }
  .breakover .header-links {
    text-align: right;
    max-width: 115px;
  }
}
.site {
  min-height: 100svh;
}
.breakover .action-row {
  align-items: center;
  margin-top: 25px;
}
.breakover .action.primary:hover {
  background: #ffb735;
  border-color: #ffb735;
}
.breakover .micro {
  max-width: 520px;
  line-height: 1.9;
}
@media (max-width: 480px) {
  .breakover .action-row {
    gap: 20px;
  }
}
.site {
  --logo-breakover: #78ae91;
}
.brand-mark {
  flex-shrink: 0;
}
.built-with a {
  color: var(--foreground);
  text-underline-offset: 4px;
  -webkit-text-decoration: underline #607d73;
  text-decoration: underline #607d73;
}
.built-with a:hover {
  color: #f59e0b;
  text-decoration-color: currentColor;
}
.breakover .micro.built-with {
  font-size: 14px;
  line-height: 1.6;
}
.brand-mark {
  aspect-ratio: 1;
  flex-shrink: 0;
  display: block;
}
.bo-page {
  overflow: hidden;
}
.bo-hero {
  isolation: isolate;
  border-bottom: 1px solid var(--border);
  position: relative;
}
.bo-hero:before {
  content: '';
  opacity: 0.2;
  pointer-events: none;
  z-index: -1;
  background: url(./assets/trail.png) 100%/cover no-repeat;
  position: absolute;
  inset: 0 0 0 24%;
}
.bo-hero-content {
  min-height: 680px;
  padding-top: 70px;
  padding-bottom: 35px;
  position: relative;
}
.bo-hero h1 {
  max-width: 980px;
  margin: 22px 0 25px;
  font-size: clamp(3.7rem, 6.1vw, 5.8rem);
  line-height: 1.02;
}
.bo-hero h1 em {
  color: var(--leaf);
}
.bo-section-head h2 em {
  color: var(--leaf);
  font-style: normal;
}
.bo-lead {
  color: #e8ede9;
  text-wrap: balance;
  max-width: 640px;
  font-size: 23px;
  line-height: 1.5;
}
.bo-description em {
  color: var(--leaf);
  font-style: normal;
  font-weight: 600;
}
.bo-lead em {
  color: var(--leaf);
  font-style: normal;
  font-weight: 600;
}
.bo-description {
  color: #c2ccc7;
  text-wrap: balance;
  max-width: 600px;
  margin-top: 16px;
  font-size: 18px;
  line-height: 1.65;
}
.bo-explainer .bo-section-head > p.bo-pair,
.bo-pair {
  margin-top: 22px;
  max-width: none;
  color: #9db3a2;
  font-size: 19px;
  line-height: 1.55;
  text-wrap: balance;
}
.bo-description.bo-entry {
  margin-top: 10px;
}
.soon-note {
  color: #8fa596;
}
.bo-hero .action-row {
  margin-top: 29px;
}
.bo-hero .action.secondary {
  background: #152820;
  border-color: #73917f;
}
.bo-hero .action.secondary:hover {
  background: #223e30;
}
.bo-hero .micro {
  margin-top: 19px;
  font-size: 14px;
}
.bo-scroll {
  font: 13px var(--mono);
  color: #b7c7bb;
  align-items: center;
  gap: 22px;
  margin-top: 55px;
  display: flex;
}
.bo-scroll:hover {
  color: #edf1e9;
}
.bo-explainer {
  padding-top: 68px;
  padding-bottom: 48px;
  scroll-margin-top: 24px;
}
.bo-section-head h2 {
  margin: 18px 0 19px;
  font-size: clamp(2.5rem, 4vw, 3.7rem);
  line-height: 1.07;
}
.bo-section-head > p:last-child {
  color: #c2ccc7;
  font-size: 18px;
  line-height: 1.6;
}
.bo-components {
  background: #193126;
  border: 1px solid #365347;
  grid-template-columns: 1fr 40px 1fr 40px 1fr;
  align-items: center;
  gap: 18px;
  margin-top: 32px;
  padding: 27px 24px;
  display: grid;
}
.bo-components > div {
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  display: flex;
}
.bo-components > div > svg,
.bo-component-icons > svg {
  color: #9fcb90;
  flex: none;
  width: 28px;
  height: 28px;
}
.bo-component-icons {
  align-items: center;
  gap: 13px;
  display: flex;
}
.bo-components strong {
  margin-top: 7px;
  font-size: 18px;
  font-weight: 500;
}
.bo-components > div > span:last-child {
  color: #bfcbc3;
  font-size: 14px;
}
.bo-plus {
  text-align: center;
  color: #819e8b;
  font: 24px var(--mono);
}
.bo-steps {
  grid-template-columns: 1fr 1fr;
  gap: 32px 58px;
  margin-top: 38px;
  display: grid;
}
.bo-steps article {
  border-top: 1px solid #365347;
  padding-top: 23px;
}
.bo-steps h3 {
  font: 400 29px/1.15 var(--serif);
  letter-spacing: -0.03em;
  margin-top: 12px;
}
.bo-steps p {
  color: #c2ccc7;
  text-wrap: pretty;
  max-width: 52ch;
  margin-top: 12px;
  font-size: 16px;
  line-height: 1.65;
}
.bo-closing {
  border-top: 1px solid #365347;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  margin-top: 38px;
  padding-top: 29px;
  display: flex;
}
.bo-closing p {
  color: #dae4da;
  font-size: 19px;
}
@media (max-width: 850px) {
  .bo-hero-content {
    min-height: 650px;
    padding-top: 52px;
  }
  .bo-hero h1 {
    font-size: 67px;
  }
  .bo-hero:before {
    opacity: 0.14;
    left: 0;
  }
  .bo-components {
    grid-template-columns: 1fr 24px 1fr 24px 1fr;
    gap: 7px;
    padding: 23px 12px;
  }
  .bo-components strong {
    font-size: 16px;
  }
  .bo-components > div > span:last-child {
    font-size: 14px;
  }
  .bo-steps {
    column-gap: 30px;
  }
  .bo-closing {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 580px) {
  .bo-hero-content {
    min-height: 0;
    padding-top: 39px;
    padding-bottom: 31px;
  }
  .bo-hero h1 {
    max-width: 12ch;
    font-size: 49px;
  }
  .bo-lead {
    font-size: 20px;
  }
  .bo-description {
    font-size: 17px;
  }
  .bo-scroll {
    gap: 15px;
    margin-top: 34px;
    line-height: 1.6;
  }
  .bo-explainer {
    padding-top: 40px;
  }
  .bo-section-head h2 {
    font-size: 37px;
  }
  .bo-section-head h2 br {
    display: none;
  }
  .bo-components {
    grid-template-columns: 1fr;
    gap: 17px;
    padding: 23px;
  }
  .bo-plus {
    font-size: 18px;
  }
  .bo-steps {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .bo-steps h3 {
    font-size: 28px;
  }
  .bo-closing {
    margin-top: 28px;
  }
  .breakover .header-links {
    max-width: none;
  }
}
.bo-components {
  grid-template-columns: 1fr 24px 1fr 24px 1fr;
  gap: 13px;
  padding-inline: 21px;
}
@media (max-width: 850px) {
  .bo-components {
    grid-template-columns: 1fr 16px 1fr 16px 1fr;
    gap: 5px;
    padding-inline: 12px;
  }
  .bo-components strong {
    font-size: 16px;
  }
  .bo-components > div > span:last-child {
    font-size: 13px;
  }
}
@media (max-width: 580px) {
  .bo-components {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .bo-components > div > span:last-child {
    font-size: 14px;
  }
}
.site.breakover {
  isolation: isolate;
  position: relative;
}
.site.breakover:before {
  content: none;
}
.bo-hero:before {
  content: '';
  opacity: 0.24;
  background: url(./assets/trail.png) 50%/cover no-repeat;
  inset: 0;
  -webkit-mask-image: linear-gradient(#0000, #000 12% 82%, #0000);
  mask-image: linear-gradient(#0000, #000 12% 82%, #0000);
}
.bo-explainer {
  isolation: isolate;
  position: relative;
}
.bo-explainer:before {
  content: '';
  opacity: 0.16;
  z-index: -1;
  pointer-events: none;
  /* `cover`, not `100%`: sizing by width alone left the image shorter than
     the section, so it ended in a hard horizontal edge while the mask was
     still opaque. The height of that edge moved with the viewport width. */
  background: url(./assets/trail.png) top/cover no-repeat;
  position: absolute;
  inset: 0 calc(50% - 50vw);
  -webkit-mask-image: linear-gradient(#0000, #000 12% 68%, #0000);
  mask-image: linear-gradient(#0000, #000 12% 68%, #0000);
}
@media (max-width: 580px) {
  .bo-hero:before {
    opacity: 0.18;
    background-position: 55%;
    background-size: auto 100%;
  }
  .bo-explainer:before {
    background-size: cover;
  }
}
.bo-components > div {
  justify-content: flex-start;
  align-self: stretch;
}
.brand {
  font-family: var(--sans);
  letter-spacing: -0.035em;
  font-weight: 600;
}
@property --tw-translate-x {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: '*';
  inherits: false;
}
@property --tw-rotate-y {
  syntax: '*';
  inherits: false;
}
@property --tw-rotate-z {
  syntax: '*';
  inherits: false;
}
@property --tw-skew-x {
  syntax: '*';
  inherits: false;
}
@property --tw-skew-y {
  syntax: '*';
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: '*';
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-x-reverse {
  syntax: '*';
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: '*';
  inherits: false;
  initial-value: solid;
}
@property --tw-leading {
  syntax: '*';
  inherits: false;
}
@property --tw-font-weight {
  syntax: '*';
  inherits: false;
}
@property --tw-tracking {
  syntax: '*';
  inherits: false;
}
@property --tw-ordinal {
  syntax: '*';
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: '*';
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: '*';
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: '*';
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: '*';
  inherits: false;
}
@property --tw-shadow {
  syntax: '*';
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: '*';
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: '*';
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: '*';
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: '*';
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: '*';
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: '*';
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: '*';
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: '*';
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: '<length>';
  inherits: false;
  initial-value: 0;
}
@property --tw-ring-offset-color {
  syntax: '*';
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: '*';
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: '*';
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: '*';
  inherits: false;
}
@property --tw-brightness {
  syntax: '*';
  inherits: false;
}
@property --tw-contrast {
  syntax: '*';
  inherits: false;
}
@property --tw-grayscale {
  syntax: '*';
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: '*';
  inherits: false;
}
@property --tw-invert {
  syntax: '*';
  inherits: false;
}
@property --tw-opacity {
  syntax: '*';
  inherits: false;
}
@property --tw-saturate {
  syntax: '*';
  inherits: false;
}
@property --tw-sepia {
  syntax: '*';
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: '*';
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: '*';
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: '<percentage>';
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: '*';
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: '*';
  inherits: false;
}
@property --tw-duration {
  syntax: '*';
  inherits: false;
}
@property --tw-ease {
  syntax: '*';
  inherits: false;
}
@property --tw-content {
  syntax: '*';
  inherits: false;
  initial-value: '';
}
@property --tw-scale-x {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: '*';
  inherits: false;
  initial-value: 1;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes enter {
  0% {
    opacity: var(--tw-enter-opacity, 1);
    transform: translate3d(
        var(--tw-enter-translate-x, 0),
        var(--tw-enter-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1),
        var(--tw-enter-scale, 1)
      )
      rotate(var(--tw-enter-rotate, 0));
    filter: blur(var(--tw-enter-blur, 0));
  }
}
@keyframes exit {
  to {
    opacity: var(--tw-exit-opacity, 1);
    transform: translate3d(
        var(--tw-exit-translate-x, 0),
        var(--tw-exit-translate-y, 0),
        0
      )
      scale3d(
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1),
        var(--tw-exit-scale, 1)
      )
      rotate(var(--tw-exit-rotate, 0));
    filter: blur(var(--tw-exit-blur, 0));
  }
}
@keyframes accordion-down {
  0% {
    height: 0;
  }
  to {
    height: var(
      --radix-accordion-content-height,
      var(--accordion-panel-height, auto)
    );
  }
}
@keyframes accordion-up {
  0% {
    height: var(
      --radix-accordion-content-height,
      var(--accordion-panel-height, auto)
    );
  }
  to {
    height: 0;
  }
}
@keyframes caret-blink {
  0%,
  70%,
  to {
    opacity: 1;
  }
  20%,
  50% {
    opacity: 0;
  }
}
@keyframes scroll-fade-reveal-b {
  0% {
    --scroll-fade-b: var(
      --_scroll-fade-size-b,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
  to {
    --scroll-fade-b: 0px;
  }
}
@keyframes scroll-fade-reveal-s {
  0% {
    --scroll-fade-s: 0px;
  }
  to {
    --scroll-fade-s: var(
      --_scroll-fade-size-s,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
}
@keyframes scroll-fade-reveal-e {
  0% {
    --scroll-fade-e: var(
      --_scroll-fade-size-e,
      var(--scroll-fade-size, min(12%, calc(var(--spacing) * 10)))
    );
  }
  to {
    --scroll-fade-e: 0px;
  }
}
@keyframes tw-shimmer {
  0% {
    background-position: 100% 0;
  }
  to {
    background-position: 0 0;
  }
}

/* Product picture in the hero: beside the text on wide screens, below it otherwise. */
.bo-hero-shot {
  margin: 40px 0 0;
}
.bo-hero-shot img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 14px;
  border: 1px solid rgba(214, 227, 218, 0.16);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.45);
}
@media (min-width: 1180px) {
  .bo-hero-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
    column-gap: 56px;
    align-items: start;
  }
  .bo-hero-content > * {
    grid-column: 1;
  }
  .bo-hero-content > .bo-hero-shot {
    grid-column: 2;
    grid-row: 1 / span 7;
    margin: 12px 0 0;
  }
  .bo-hero h1 {
    font-size: clamp(3.4rem, 4.3vw, 4.8rem);
  }
}

/* Fleet, hardware, and pricing: the site's own section heads, set apart from the workflow above. */
.bo-block {
  margin-top: 72px;
  scroll-margin-top: 24px;
}
.bo-block .bo-section-head > p:last-child {
  max-width: 64ch;
}
.bo-hardware {
  margin-top: 38px;
}
.bo-hardware > div {
  border-top: 1px solid #365347;
  grid-template-columns: 200px 1fr;
  gap: 24px;
  padding: 19px 0;
  display: grid;
}
.bo-hardware dt {
  color: #9fcb90;
  font: 12px/1.9 var(--mono);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.bo-hardware dd {
  color: #dae4da;
  margin: 0;
  font-size: 16px;
  line-height: 1.65;
}
@media (max-width: 580px) {
  .bo-hardware > div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
}
