/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-md: 28rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-6xl: 72rem;
    --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);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -0.025em;
    --leading-relaxed: 1.625;
    --radius-2xl: 1rem;
    --animate-spin: spin 1s linear infinite;
    --blur-md: 12px;
    --blur-xl: 24px;
    --blur-2xl: 40px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    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;
    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 {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  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 {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :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)) {
        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, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-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"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .-inset-8 {
    inset: calc(var(--spacing) * -8);
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-0 {
    inset-inline: calc(var(--spacing) * 0);
  }
  .inset-x-3 {
    inset-inline: calc(var(--spacing) * 3);
  }
  .inset-x-\[14\%\] {
    inset-inline: 14%;
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-2 {
    top: calc(var(--spacing) * 2);
  }
  .top-12 {
    top: calc(var(--spacing) * 12);
  }
  .top-20 {
    top: calc(var(--spacing) * 20);
  }
  .top-\[4\%\] {
    top: 4%;
  }
  .top-\[14\%\] {
    top: 14%;
  }
  .top-\[18\%\] {
    top: 18%;
  }
  .top-\[26\%\] {
    top: 26%;
  }
  .top-\[30\%\] {
    top: 30%;
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-8 {
    right: calc(var(--spacing) * 8);
  }
  .right-\[4\%\] {
    right: 4%;
  }
  .right-\[14\%\] {
    right: 14%;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-1 {
    bottom: calc(var(--spacing) * 1);
  }
  .bottom-1\.5 {
    bottom: calc(var(--spacing) * 1.5);
  }
  .bottom-3 {
    bottom: calc(var(--spacing) * 3);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-8 {
    left: calc(var(--spacing) * 8);
  }
  .left-\[-2\%\] {
    left: -2%;
  }
  .left-\[7\%\] {
    left: 7%;
  }
  .left-\[12\%\] {
    left: 12%;
  }
  .left-\[35\.7\%\] {
    left: 35.7%;
  }
  .left-\[71\.4\%\] {
    left: 71.4%;
  }
  .isolate {
    isolation: isolate;
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .-z-20 {
    z-index: calc(20 * -1);
  }
  .z-10 {
    z-index: 10;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .order-1 {
    order: 1;
  }
  .order-2 {
    order: 2;
  }
  .m-3 {
    margin: calc(var(--spacing) * 3);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-9 {
    margin-top: calc(var(--spacing) * 9);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-14 {
    margin-top: calc(var(--spacing) * 14);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-\[2\%\] {
    margin-right: 2%;
  }
  .mr-auto {
    margin-right: auto;
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .size-1\.5 {
    width: calc(var(--spacing) * 1.5);
    height: calc(var(--spacing) * 1.5);
  }
  .size-2\.5 {
    width: calc(var(--spacing) * 2.5);
    height: calc(var(--spacing) * 2.5);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-7 {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .h-1 {
    height: calc(var(--spacing) * 1);
  }
  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-4\.5 {
    height: calc(var(--spacing) * 4.5);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-\[18px\] {
    height: 18px;
  }
  .h-\[110px\] {
    height: 110px;
  }
  .h-\[300px\] {
    height: 300px;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .min-h-dvh {
    min-height: 100dvh;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\/3 {
    width: calc(1/3 * 100%);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4\.5 {
    width: calc(var(--spacing) * 4.5);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-28 {
    width: calc(var(--spacing) * 28);
  }
  .w-36 {
    width: calc(var(--spacing) * 36);
  }
  .w-\[52\%\] {
    width: 52%;
  }
  .w-\[85\%\] {
    width: 85%;
  }
  .w-\[88\%\] {
    width: 88%;
  }
  .w-\[min\(19rem\,68\%\)\] {
    width: min(19rem, 68%);
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-\[12rem\] {
    max-width: 12rem;
  }
  .max-w-\[24rem\] {
    max-width: 24rem;
  }
  .max-w-\[26rem\] {
    max-width: 26rem;
  }
  .max-w-\[29rem\] {
    max-width: 29rem;
  }
  .max-w-\[38rem\] {
    max-width: 38rem;
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .flex-1 {
    flex: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-\[4deg\] {
    rotate: 4deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .scroll-mt-20 {
    scroll-margin-top: calc(var(--spacing) * 20);
  }
  .scroll-mt-24 {
    scroll-margin-top: calc(var(--spacing) * 24);
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .gap-14 {
    gap: calc(var(--spacing) * 14);
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .gap-x-8 {
    column-gap: calc(var(--spacing) * 8);
  }
  .gap-y-1 {
    row-gap: calc(var(--spacing) * 1);
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .gap-y-4 {
    row-gap: calc(var(--spacing) * 4);
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-\(--tf-hairline\) {
    :where(& > :not(:last-child)) {
      border-color: var(--tf-hairline);
    }
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-visible {
    overflow: visible;
  }
  .overflow-x-clip {
    overflow-x: clip;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-\(--tc-radius-lg\) {
    border-radius: var(--tc-radius-lg);
  }
  .rounded-\(--tc-radius-md\) {
    border-radius: var(--tc-radius-md);
  }
  .rounded-\(--tc-radius-pill\) {
    border-radius: var(--tc-radius-pill);
  }
  .rounded-\(--tc-radius-xl\) {
    border-radius: var(--tc-radius-xl);
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-\[2\.5rem\] {
    border-radius: 2.5rem;
  }
  .rounded-\[2\.6rem\] {
    border-radius: 2.6rem;
  }
  .rounded-\[2rem\] {
    border-radius: 2rem;
  }
  .rounded-\[3rem\] {
    border-radius: 3rem;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) - 2px);
  }
  .rounded-sm {
    border-radius: calc(var(--radius) - 4px);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) + 4px);
  }
  .rounded-l-full {
    border-top-left-radius: calc(infinity * 1px);
    border-bottom-left-radius: calc(infinity * 1px);
  }
  .rounded-br-md {
    border-bottom-right-radius: calc(var(--radius) - 2px);
  }
  .rounded-bl-md {
    border-bottom-left-radius: calc(var(--radius) - 2px);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-4 {
    border-style: var(--tw-border-style);
    border-width: 4px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-\(--tc-border\) {
    border-color: var(--tc-border);
  }
  .border-\(--tc-violet-300\) {
    border-color: var(--tc-violet-300);
  }
  .border-\(--tf-hairline\) {
    border-color: var(--tf-hairline);
  }
  .border-\(--tf-hairline-strong\) {
    border-color: var(--tf-hairline-strong);
  }
  .border-\(--tf-ink-400\)\/40 {
    border-color: var(--tf-ink-400);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--tf-ink-400) 40%, transparent);
    }
  }
  .border-\(--tf-ink-400\)\/50 {
    border-color: var(--tf-ink-400);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--tf-ink-400) 50%, transparent);
    }
  }
  .border-\(--tf-teal-400\)\/25 {
    border-color: var(--tf-teal-400);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--tf-teal-400) 25%, transparent);
    }
  }
  .border-border {
    border-color: var(--border);
  }
  .border-primary {
    border-color: var(--primary);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white\/80 {
    border-color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .border-t-transparent {
    border-top-color: transparent;
  }
  .bg-\(--tc-bg\) {
    background-color: var(--tc-bg);
  }
  .bg-\(--tc-ink-950\) {
    background-color: var(--tc-ink-950);
  }
  .bg-\(--tc-mint-100\) {
    background-color: var(--tc-mint-100);
  }
  .bg-\(--tc-mint-300\) {
    background-color: var(--tc-mint-300);
  }
  .bg-\(--tc-paper\) {
    background-color: var(--tc-paper);
  }
  .bg-\(--tc-paper-warm\) {
    background-color: var(--tc-paper-warm);
  }
  .bg-\(--tc-primary\) {
    background-color: var(--tc-primary);
  }
  .bg-\(--tc-violet-50\) {
    background-color: var(--tc-violet-50);
  }
  .bg-\(--tc-violet-100\) {
    background-color: var(--tc-violet-100);
  }
  .bg-\(--tc-violet-200\) {
    background-color: var(--tc-violet-200);
  }
  .bg-\(--tc-violet-300\) {
    background-color: var(--tc-violet-300);
  }
  .bg-\(--tc-violet-500\) {
    background-color: var(--tc-violet-500);
  }
  .bg-\(--tc-violet-900\)\/20 {
    background-color: var(--tc-violet-900);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--tc-violet-900) 20%, transparent);
    }
  }
  .bg-\(--tf-ink-850\) {
    background-color: var(--tf-ink-850);
  }
  .bg-\(--tf-ink-900\) {
    background-color: var(--tf-ink-900);
  }
  .bg-\(--tf-ink-925\) {
    background-color: var(--tf-ink-925);
  }
  .bg-\(--tf-ink-925\)\/40 {
    background-color: var(--tf-ink-925);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--tf-ink-925) 40%, transparent);
    }
  }
  .bg-\(--tf-ink-950\)\/60 {
    background-color: var(--tf-ink-950);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--tf-ink-950) 60%, transparent);
    }
  }
  .bg-\(--tf-teal-400\)\/10 {
    background-color: var(--tf-teal-400);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--tf-teal-400) 10%, transparent);
    }
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-background\/75 {
    background-color: var(--background);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--background) 75%, transparent);
    }
  }
  .bg-destructive {
    background-color: var(--destructive);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/95 {
    background-color: color-mix(in srgb, #fff 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }
  .bg-\[radial-gradient\(80rem_44rem_at_78\%_-12\%\,rgba\(177\,140\,243\,0\.38\)\,transparent_60\%\)\,radial-gradient\(48rem_30rem_at_-8\%_38\%\,rgba\(174\,221\,194\,0\.2\)\,transparent_55\%\)\,linear-gradient\(180deg\,\#fdfcff_0\%\,\#fbf9ff_60\%\,\#f6f2fd_100\%\)\] {
    background-image: radial-gradient(80rem 44rem at 78% -12%,rgba(177,140,243,0.38),transparent 60%),radial-gradient(48rem 30rem at -8% 38%,rgba(174,221,194,0.2),transparent 55%),linear-gradient(180deg,#fdfcff 0%,#fbf9ff 60%,#f6f2fd 100%);
  }
  .bg-\[radial-gradient\(closest-side\,color-mix\(in_oklab\,var\(--tf-teal-400\)_14\%\,transparent\)\,transparent\)\] {
    background-image: radial-gradient(closest-side,var(--tf-teal-400),transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-image: radial-gradient(closest-side,color-mix(in oklab,var(--tf-teal-400) 14%,transparent),transparent);
    }
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-7 {
    padding: calc(var(--spacing) * 7);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-\(--tc-section\) {
    padding-block: var(--tc-section);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-24 {
    padding-block: calc(var(--spacing) * 24);
  }
  .pt-\(--tc-section\) {
    padding-top: var(--tc-section);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }
  .pt-14 {
    padding-top: calc(var(--spacing) * 14);
  }
  .pt-24 {
    padding-top: calc(var(--spacing) * 24);
  }
  .pt-28 {
    padding-top: calc(var(--spacing) * 28);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-\[4\.25rem\] {
    padding-right: 4.25rem;
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-16 {
    padding-bottom: calc(var(--spacing) * 16);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .pl-\[6\.75rem\] {
    padding-left: 6.75rem;
  }
  .text-center {
    text-align: center;
  }
  .text-right {
    text-align: right;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[0\.6rem\] {
    font-size: 0.6rem;
  }
  .text-\[0\.7rem\] {
    font-size: 0.7rem;
  }
  .text-\[0\.8rem\] {
    font-size: 0.8rem;
  }
  .text-\[0\.65rem\] {
    font-size: 0.65rem;
  }
  .text-\[1\.05rem\] {
    font-size: 1.05rem;
  }
  .text-\[clamp\(1\.35rem\,4\.5vw\,2\.5rem\)\] {
    font-size: clamp(1.35rem, 4.5vw, 2.5rem);
  }
  .leading-\(--tc-leading-body\) {
    --tw-leading: var(--tc-leading-body);
    line-height: var(--tc-leading-body);
  }
  .leading-\(--tc-leading-snug\) {
    --tw-leading: var(--tc-leading-snug);
    line-height: var(--tc-leading-snug);
  }
  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }
  .leading-\[1\.5\] {
    --tw-leading: 1.5;
    line-height: 1.5;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\(--tc-tracking-caps\) {
    --tw-tracking: var(--tc-tracking-caps);
    letter-spacing: var(--tc-tracking-caps);
  }
  .tracking-\(--tf-tracking-caps\) {
    --tw-tracking: var(--tf-tracking-caps);
    letter-spacing: var(--tf-tracking-caps);
  }
  .tracking-\(--tf-tracking-display\) {
    --tw-tracking: var(--tf-tracking-display);
    letter-spacing: var(--tf-tracking-display);
  }
  .tracking-\(--tf-tracking-heading\) {
    --tw-tracking: var(--tf-tracking-heading);
    letter-spacing: var(--tf-tracking-heading);
  }
  .tracking-\[0\.04em\] {
    --tw-tracking: 0.04em;
    letter-spacing: 0.04em;
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .text-balance {
    text-wrap: balance;
  }
  .text-pretty {
    text-wrap: pretty;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre {
    white-space: pre;
  }
  .text-\(--tc-fg-muted\) {
    color: var(--tc-fg-muted);
  }
  .text-\(--tc-fg-secondary\) {
    color: var(--tc-fg-secondary);
  }
  .text-\(--tc-ink-800\) {
    color: var(--tc-ink-800);
  }
  .text-\(--tc-ink-950\) {
    color: var(--tc-ink-950);
  }
  .text-\(--tc-mint-700\) {
    color: var(--tc-mint-700);
  }
  .text-\(--tc-text-md\) {
    color: var(--tc-text-md);
  }
  .text-\(--tc-text-sm\) {
    color: var(--tc-text-sm);
  }
  .text-\(--tc-violet-200\) {
    color: var(--tc-violet-200);
  }
  .text-\(--tc-violet-300\) {
    color: var(--tc-violet-300);
  }
  .text-\(--tc-violet-300\)\/60 {
    color: var(--tc-violet-300);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--tc-violet-300) 60%, transparent);
    }
  }
  .text-\(--tc-violet-400\) {
    color: var(--tc-violet-400);
  }
  .text-\(--tc-violet-400\)\/70 {
    color: var(--tc-violet-400);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--tc-violet-400) 70%, transparent);
    }
  }
  .text-\(--tc-violet-500\) {
    color: var(--tc-violet-500);
  }
  .text-\(--tc-violet-600\) {
    color: var(--tc-violet-600);
  }
  .text-\(--tc-violet-700\) {
    color: var(--tc-violet-700);
  }
  .text-\(--tf-accent-warm\) {
    color: var(--tf-accent-warm);
  }
  .text-\(--tf-ink-100\) {
    color: var(--tf-ink-100);
  }
  .text-\(--tf-ink-300\) {
    color: var(--tf-ink-300);
  }
  .text-\(--tf-ink-400\) {
    color: var(--tf-ink-400);
  }
  .text-\(--tf-ink-400\)\/50 {
    color: var(--tf-ink-400);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--tf-ink-400) 50%, transparent);
    }
  }
  .text-\(--tf-ink-400\)\/80 {
    color: var(--tf-ink-400);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--tf-ink-400) 80%, transparent);
    }
  }
  .text-\(--tf-teal-300\) {
    color: var(--tf-teal-300);
  }
  .text-\(--tf-teal-400\) {
    color: var(--tf-teal-400);
  }
  .text-\(--tf-teal-400\)\/70 {
    color: var(--tf-teal-400);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--tf-teal-400) 70%, transparent);
    }
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-foreground\/90 {
    color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--foreground) 90%, transparent);
    }
  }
  .text-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-white {
    color: var(--color-white);
  }
  .uppercase {
    text-transform: uppercase;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\(--tc-shadow-lg\) {
    --tw-shadow: var(--tc-shadow-lg);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\(--tc-shadow-md\) {
    --tw-shadow: var(--tc-shadow-md);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\(--tc-shadow-sm\) {
    --tw-shadow: var(--tc-shadow-sm);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\(--tc-shadow-xs\) {
    --tw-shadow: var(--tc-shadow-xs);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[inset_0_0_0_1px_rgba\(126\,69\,216\,0\.10\)\] {
    --tw-shadow: inset 0 0 0 1px var(--tw-shadow-color, rgba(126,69,216,0.10));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[var\(--tf-glow-primary\)\] {
    --tw-shadow: var(--tf-glow-primary);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-\[var\(--tf-shadow-md\)\] {
    --tw-shadow: var(--tf-shadow-md);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + 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);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur-2xl {
    --tw-blur: blur(var(--blur-2xl));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .blur-xl {
    --tw-blur: blur(var(--blur-xl));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-\[0_16px_32px_rgba\(0\,0\,0\,0\.35\)\] {
    --tw-drop-shadow-size: drop-shadow(0 16px 32px var(--tw-drop-shadow-color, rgba(0,0,0,0.35)));
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-\[0_24px_48px_rgba\(43\,21\,71\,0\.28\)\] {
    --tw-drop-shadow-size: drop-shadow(0 24px 48px var(--tw-drop-shadow-color, rgba(43,21,71,0.28)));
    --tw-drop-shadow: var(--tw-drop-shadow-size);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    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));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-\(--tc-dur-base\) {
    --tw-duration: var(--tc-dur-base);
    transition-duration: var(--tc-dur-base);
  }
  .duration-\(--tc-dur-fast\) {
    --tw-duration: var(--tc-dur-fast);
    transition-duration: var(--tc-dur-fast);
  }
  .duration-150 {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .running {
    animation-play-state: running;
  }
  .group-hover\:translate-x-0\.5 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:translate-x-1 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-translate-x: calc(var(--spacing) * 1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
  }
  .group-hover\:text-\(--tf-ink-100\) {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--tf-ink-100);
      }
    }
  }
  .group-hover\:text-\(--tf-teal-300\) {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--tf-teal-300);
      }
    }
  }
  .hover\:border-\(--tf-teal-400\)\/40 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--tf-teal-400);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--tf-teal-400) 40%, transparent);
        }
      }
    }
  }
  .hover\:bg-accent {
    &:hover {
      @media (hover: hover) {
        background-color: var(--accent);
      }
    }
  }
  .hover\:bg-destructive\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-primary\/90 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--primary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--primary) 90%, transparent);
        }
      }
    }
  }
  .hover\:bg-secondary\/80 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--secondary);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
        }
      }
    }
  }
  .hover\:text-\(--tc-fg\) {
    &:hover {
      @media (hover: hover) {
        color: var(--tc-fg);
      }
    }
  }
  .hover\:text-\(--tf-ink-100\) {
    &:hover {
      @media (hover: hover) {
        color: var(--tf-ink-100);
      }
    }
  }
  .hover\:text-\(--tf-teal-400\) {
    &:hover {
      @media (hover: hover) {
        color: var(--tf-teal-400);
      }
    }
  }
  .hover\:text-accent-foreground {
    &:hover {
      @media (hover: hover) {
        color: var(--accent-foreground);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .focus\:not-sr-only {
    &:focus {
      position: static;
      width: auto;
      height: auto;
      padding: 0;
      margin: 0;
      overflow: visible;
      clip: auto;
      white-space: normal;
    }
  }
  .focus\:absolute {
    &:focus {
      position: absolute;
    }
  }
  .focus\:top-3 {
    &:focus {
      top: calc(var(--spacing) * 3);
    }
  }
  .focus\:left-3 {
    &:focus {
      left: calc(var(--spacing) * 3);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .focus-visible\:border-ring {
    &:focus-visible {
      border-color: var(--ring);
    }
  }
  .focus-visible\:ring-\[3px\] {
    &: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);
    }
  }
  .focus-visible\:ring-destructive\/20 {
    &:focus-visible {
      --tw-ring-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .focus-visible\:ring-ring\/50 {
    &:focus-visible {
      --tw-ring-color: var(--ring);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
      }
    }
  }
  .focus-visible\:outline-2 {
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
    }
  }
  .focus-visible\:outline-offset-2 {
    &:focus-visible {
      outline-offset: 2px;
    }
  }
  .focus-visible\:outline-ring {
    &:focus-visible {
      outline-color: var(--ring);
    }
  }
  .disabled\:pointer-events-none {
    &:disabled {
      pointer-events: none;
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .has-\[\>svg\]\:px-2\.5 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 2.5);
    }
  }
  .has-\[\>svg\]\:px-3 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .has-\[\>svg\]\:px-4 {
    &:has(>svg) {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .aria-invalid\:border-destructive {
    &[aria-invalid="true"] {
      border-color: var(--destructive);
    }
  }
  .aria-invalid\:ring-destructive\/20 {
    &[aria-invalid="true"] {
      --tw-ring-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
  }
  .sm\:mt-8 {
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .sm\:mt-24 {
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 24);
    }
  }
  .sm\:block {
    @media (width >= 40rem) {
      display: block;
    }
  }
  .sm\:inline {
    @media (width >= 40rem) {
      display: inline;
    }
  }
  .sm\:inline-flex {
    @media (width >= 40rem) {
      display: inline-flex;
    }
  }
  .sm\:w-16 {
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 16);
    }
  }
  .sm\:w-28 {
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 28);
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:items-start {
    @media (width >= 40rem) {
      align-items: flex-start;
    }
  }
  .sm\:gap-3 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .sm\:gap-4 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .sm\:gap-x-5 {
    @media (width >= 40rem) {
      column-gap: calc(var(--spacing) * 5);
    }
  }
  .sm\:p-4 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .sm\:p-8 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .sm\:px-6 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .sm\:px-8 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .sm\:px-12 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 12);
    }
  }
  .sm\:py-4 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .sm\:py-12 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 12);
    }
  }
  .sm\:py-24 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 24);
    }
  }
  .sm\:pt-36 {
    @media (width >= 40rem) {
      padding-top: calc(var(--spacing) * 36);
    }
  }
  .sm\:pr-20 {
    @media (width >= 40rem) {
      padding-right: calc(var(--spacing) * 20);
    }
  }
  .sm\:pb-24 {
    @media (width >= 40rem) {
      padding-bottom: calc(var(--spacing) * 24);
    }
  }
  .sm\:pl-32 {
    @media (width >= 40rem) {
      padding-left: calc(var(--spacing) * 32);
    }
  }
  .sm\:text-2xl {
    @media (width >= 40rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .sm\:text-3xl {
    @media (width >= 40rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .sm\:text-5xl {
    @media (width >= 40rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .sm\:text-base {
    @media (width >= 40rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .sm\:text-sm {
    @media (width >= 40rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .sm\:text-xl {
    @media (width >= 40rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .sm\:text-xs {
    @media (width >= 40rem) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .lg\:order-1 {
    @media (width >= 64rem) {
      order: 1;
    }
  }
  .lg\:order-2 {
    @media (width >= 64rem) {
      order: 2;
    }
  }
  .lg\:flex {
    @media (width >= 64rem) {
      display: flex;
    }
  }
  .lg\:max-w-\[31rem\] {
    @media (width >= 64rem) {
      max-width: 31rem;
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[minmax\(0\,0\.95fr\)_minmax\(0\,1\.05fr\)\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,0.95fr) minmax(0,1.05fr);
    }
  }
  .lg\:grid-cols-\[minmax\(0\,1\.05fr\)_minmax\(0\,0\.95fr\)\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,1.05fr) minmax(0,0.95fr);
    }
  }
  .lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,24rem\)\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,1fr) minmax(0,24rem);
    }
  }
  .lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,38rem\)\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,1fr) minmax(0,38rem);
    }
  }
  .lg\:gap-8 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:gap-10 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .lg\:gap-16 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 16);
    }
  }
  .lg\:pt-20 {
    @media (width >= 64rem) {
      padding-top: calc(var(--spacing) * 20);
    }
  }
  .lg\:pb-24 {
    @media (width >= 64rem) {
      padding-bottom: calc(var(--spacing) * 24);
    }
  }
  .dark\:border-input {
    &:is(.dark *) {
      border-color: var(--input);
    }
  }
  .dark\:bg-destructive\/60 {
    &:is(.dark *) {
      background-color: var(--destructive);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--destructive) 60%, transparent);
      }
    }
  }
  .dark\:bg-input\/30 {
    &:is(.dark *) {
      background-color: var(--input);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--input) 30%, transparent);
      }
    }
  }
  .dark\:hover\:bg-accent\/50 {
    &:is(.dark *) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--accent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--accent) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:hover\:bg-input\/50 {
    &:is(.dark *) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--input);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--input) 50%, transparent);
          }
        }
      }
    }
  }
  .dark\:focus-visible\:ring-destructive\/40 {
    &:is(.dark *) {
      &:focus-visible {
        --tw-ring-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
        }
      }
    }
  }
  .dark\:aria-invalid\:ring-destructive\/40 {
    &:is(.dark *) {
      &[aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
        }
      }
    }
  }
  .\[\&_svg\]\:pointer-events-none {
    & svg {
      pointer-events: none;
    }
  }
  .\[\&_svg\]\:shrink-0 {
    & svg {
      flex-shrink: 0;
    }
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 {
    & svg:not([class*='size-']) {
      width: calc(var(--spacing) * 4);
      height: calc(var(--spacing) * 4);
    }
  }
}
@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;
}
:root {
  --font-size: 16px;
  --background: #ffffff;
  --foreground: #1a1f36;
  --card: #ffffff;
  --card-foreground: #1a1f36;
  --popover: #ffffff;
  --popover-foreground: #1a1f36;
  --primary: #2D9CDB;
  --primary-foreground: #ffffff;
  --secondary: #1a6aa8;
  --secondary-foreground: #ffffff;
  --muted: #f7f9fc;
  --muted-foreground: #6b7280;
  --accent: #e3f2fd;
  --accent-foreground: #1a6aa8;
  --destructive: #d4183d;
  --destructive-foreground: #ffffff;
  --border: rgba(45, 156, 219, 0.15);
  --input: transparent;
  --input-background: #f7f9fc;
  --switch-background: #cbced4;
  --font-weight-medium: 500;
  --font-weight-normal: 400;
  --ring: #2D9CDB;
  --chart-1: oklch(0.646 0.222 41.116);
  --chart-2: oklch(0.6 0.118 184.704);
  --chart-3: oklch(0.398 0.07 227.392);
  --chart-4: oklch(0.828 0.189 84.429);
  --chart-5: oklch(0.769 0.188 70.08);
  --radius: 0.75rem;
  --sidebar: oklch(0.985 0 0);
  --sidebar-foreground: oklch(0.145 0 0);
  --sidebar-primary: #030213;
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.97 0 0);
  --sidebar-accent-foreground: oklch(0.205 0 0);
  --sidebar-border: oklch(0.922 0 0);
  --sidebar-ring: oklch(0.708 0 0);
}
.dark {
  --background: oklch(0.145 0 0);
  --foreground: oklch(0.985 0 0);
  --card: oklch(0.145 0 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: oklch(0.145 0 0);
  --popover-foreground: oklch(0.985 0 0);
  --primary: oklch(0.985 0 0);
  --primary-foreground: oklch(0.205 0 0);
  --secondary: oklch(0.269 0 0);
  --secondary-foreground: oklch(0.985 0 0);
  --muted: oklch(0.269 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --accent: oklch(0.269 0 0);
  --accent-foreground: oklch(0.985 0 0);
  --destructive: oklch(0.396 0.141 25.723);
  --destructive-foreground: oklch(0.637 0.237 25.331);
  --border: oklch(0.269 0 0);
  --input: oklch(0.269 0 0);
  --ring: oklch(0.439 0 0);
  --font-weight-medium: 500;
  --font-weight-normal: 400;
  --chart-1: oklch(0.488 0.243 264.376);
  --chart-2: oklch(0.696 0.17 162.48);
  --chart-3: oklch(0.769 0.188 70.08);
  --chart-4: oklch(0.627 0.265 303.9);
  --chart-5: oklch(0.645 0.246 16.439);
  --sidebar: oklch(0.205 0 0);
  --sidebar-foreground: oklch(0.985 0 0);
  --sidebar-primary: oklch(0.488 0.243 264.376);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.269 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(0.269 0 0);
  --sidebar-ring: oklch(0.439 0 0);
}
@layer base {
  * {
    border-color: var(--border);
    outline-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  body {
    background-color: var(--background);
    color: var(--foreground);
  }
  html {
    font-size: var(--font-size);
  }
  h1 {
    font-size: var(--text-2xl);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  h2 {
    font-size: var(--text-xl);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  h3 {
    font-size: var(--text-lg);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  h4 {
    font-size: var(--text-base);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  label {
    font-size: var(--text-base);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  button {
    font-size: var(--text-base);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
  }
  input {
    font-size: var(--text-base);
    font-weight: var(--font-weight-normal);
    line-height: 1.5;
  }
}
.tc-landing, .tc-scope, .tc-page {
  --tc-violet-50: #f8f5ff;
  --tc-violet-100: #f0e9fe;
  --tc-violet-200: #e3d5fd;
  --tc-violet-300: #cdb4f9;
  --tc-violet-400: #b18cf3;
  --tc-violet-500: #9767e8;
  --tc-violet-600: #7e45d8;
  --tc-violet-700: #6a34b5;
  --tc-violet-800: #582c92;
  --tc-violet-900: #452471;
  --tc-violet-950: #2b1547;
  --tc-ink-950: #211832;
  --tc-ink-800: #372a4d;
  --tc-ink-600: #554968;
  --tc-ink-500: #6d6280;
  --tc-ink-300: #a99fba;
  --tc-paper: #fbf9ff;
  --tc-paper-warm: #f6f2fd;
  --tc-white: #ffffff;
  --tc-mint-100: #e2f4ea;
  --tc-mint-300: #aeddc2;
  --tc-mint-700: #2f6b50;
  --tc-bg: var(--tc-paper);
  --tc-bg-deep: var(--tc-violet-950);
  --tc-surface: var(--tc-white);
  --tc-surface-tint: var(--tc-violet-50);
  --tc-surface-soft: var(--tc-violet-100);
  --tc-fg: var(--tc-ink-950);
  --tc-fg-secondary: var(--tc-ink-800);
  --tc-fg-muted: var(--tc-ink-500);
  --tc-fg-on-deep: #f4effc;
  --tc-border: rgba(33, 24, 50, 0.1);
  --tc-border-strong: rgba(33, 24, 50, 0.18);
  --tc-primary: var(--tc-violet-600);
  --tc-primary-hover: var(--tc-violet-700);
  --tc-primary-fg: var(--tc-white);
  --tc-primary-soft: var(--tc-violet-100);
  --tc-ring: var(--tc-violet-600);
  --tc-font-display: var(--font-tc-display, 'Bricolage Grotesque', 'Avenir Next', 'Segoe UI',
        sans-serif);
  --tc-font-text: var(--font-tc-text, 'Figtree', 'Avenir Next', 'Segoe UI', sans-serif);
  --tc-text-xs: 0.8rem;
  --tc-text-sm: 0.9rem;
  --tc-text-base: 1rem;
  --tc-text-md: 1.25rem;
  --tc-text-lg: 1.5625rem;
  --tc-text-xl: 1.953rem;
  --tc-text-2xl: 2.441rem;
  --tc-text-3xl: 3.052rem;
  --tc-text-4xl: 3.815rem;
  --tc-text-5xl: 4.768rem;
  --tc-display: clamp(var(--tc-text-2xl), 1.45rem + 4.3vw, var(--tc-text-5xl));
  --tc-display-h2: clamp(var(--tc-text-xl), 1.25rem + 2.8vw, var(--tc-text-3xl));
  --tc-display-h3: clamp(var(--tc-text-md), 1rem + 1vw, var(--tc-text-lg));
  --tc-leading-display: 1.04;
  --tc-leading-heading: 1.12;
  --tc-leading-snug: 1.35;
  --tc-leading-body: 1.6;
  --tc-tracking-display: -0.025em;
  --tc-tracking-heading: -0.015em;
  --tc-tracking-caps: 0.14em;
  --tc-measure: 62ch;
  --tc-space-1: 0.25rem;
  --tc-space-2: 0.5rem;
  --tc-space-3: 0.75rem;
  --tc-space-4: 1rem;
  --tc-space-6: 1.5rem;
  --tc-space-8: 2rem;
  --tc-space-12: 3rem;
  --tc-space-16: 4rem;
  --tc-space-24: 6rem;
  --tc-space-32: 8rem;
  --tc-section: clamp(var(--tc-space-16), 8vw, var(--tc-space-32));
  --tc-radius-xs: 0.5rem;
  --tc-radius-sm: 0.75rem;
  --tc-radius-md: 1rem;
  --tc-radius-lg: 1.5rem;
  --tc-radius-xl: 2rem;
  --tc-radius-pill: 999px;
  --tc-shadow-xs: 0 1px 2px rgba(52, 32, 90, 0.06);
  --tc-shadow-sm: 0 2px 6px rgba(52, 32, 90, 0.07), 0 1px 2px rgba(52, 32, 90, 0.05);
  --tc-shadow-md: 0 12px 32px -8px rgba(52, 32, 90, 0.14), 0 2px 8px rgba(52, 32, 90, 0.06);
  --tc-shadow-lg: 0 32px 64px -16px rgba(52, 32, 90, 0.22), 0 8px 24px -8px rgba(52, 32, 90, 0.1);
  --tc-shadow-clay: inset 0 1px 0 rgba(255, 255, 255, 0.85),
        0 16px 40px -12px rgba(52, 32, 90, 0.18);
  --tc-dur-fast: 150ms;
  --tc-dur-base: 250ms;
  --tc-dur-slow: 600ms;
  --tc-dur-drift: 8s;
  --tc-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --tc-ease-inout: cubic-bezier(0.65, 0, 0.35, 1);
  --tc-ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --tc-glass-bg: rgba(255, 255, 255, 0.78);
  --tc-glass-border: rgba(126, 69, 216, 0.14);
  --tc-glass-shadow: 0 18px 60px -20px rgba(52, 32, 90, 0.25);
  --tc-grid-line: rgba(33, 24, 50, 0.055);
  --tc-selection-bg: var(--tc-violet-200);
  --tc-selection-fg: var(--tc-ink-950);
  --tc-skip-bg: var(--tc-ink-950);
  --tc-skip-fg: var(--tc-white);
  --tc-btn-primary-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22),
        0 12px 28px -8px rgba(126, 69, 216, 0.5);
  --tc-btn-primary-shadow-hover: inset 0 1px 0 rgba(255, 255, 255, 0.22),
        0 16px 32px -8px rgba(126, 69, 216, 0.55);
  --tc-panel-deep-ring: inset 0 0 0 1px transparent;
  --tc-hero-wash: radial-gradient(
            80rem 44rem at 78% -12%,
            rgba(177, 140, 243, 0.38),
            transparent 60%
        ),
        radial-gradient(48rem 30rem at -8% 38%, rgba(174, 221, 194, 0.2), transparent 55%),
        linear-gradient(180deg, #fdfcff 0%, #fbf9ff 60%, #f6f2fd 100%);
  --tc-demo-agent-bg: var(--tc-ink-950);
  --tc-demo-card-bg: color-mix(in oklab, #ffffff 95%, transparent);
  --tc-mock-frame-bg: var(--tc-ink-950);
  --tc-mock-frame-border: color-mix(in oklab, #ffffff 80%, transparent);
  --tc-mock-raised-bg: var(--tc-white);
  --tc-sheet-bg: transparent;
  --tc-sheet-shadow: none;
  --tc-sheet-mb: 0px;
}
.tc-landing {
  background-color: var(--tc-bg);
  color: var(--tc-fg);
  font-family: var(--tc-font-text);
  font-size: var(--tc-text-base);
  line-height: var(--tc-leading-body);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.tc-landing :focus-visible, .tc-scope :focus-visible, .tc-page :focus-visible {
  outline: 2px solid var(--tc-ring);
  outline-offset: 3px;
  border-radius: var(--tc-radius-xs);
}
.tc-landing ::selection, .tc-scope ::selection {
  background: var(--tc-selection-bg);
  color: var(--tc-selection-fg);
}
.tc-landing, .tc-scope, .tc-page {
  scroll-behavior: smooth;
}
.tc-skip {
  position: fixed;
  top: var(--tc-space-3);
  left: var(--tc-space-3);
  z-index: 100;
  transform: translateY(-200%);
  padding: var(--tc-space-2) var(--tc-space-4);
  border-radius: var(--tc-radius-pill);
  background: var(--tc-skip-bg);
  color: var(--tc-skip-fg);
  font-size: var(--tc-text-sm);
  font-weight: 600;
  box-shadow: var(--tc-shadow-md);
  transition: transform var(--tc-dur-fast) var(--tc-ease-out);
}
.tc-skip:focus-visible {
  transform: translateY(0);
  outline-offset: 1px;
}
.tc-display {
  font-family: var(--tc-font-display);
  font-size: var(--tc-display);
  font-weight: 640;
  line-height: var(--tc-leading-display);
  letter-spacing: var(--tc-tracking-display);
  text-wrap: balance;
}
.tc-h2 {
  font-family: var(--tc-font-display);
  font-size: var(--tc-display-h2);
  font-weight: 620;
  line-height: var(--tc-leading-heading);
  letter-spacing: var(--tc-tracking-heading);
  text-wrap: balance;
}
.tc-h3 {
  font-family: var(--tc-font-display);
  font-size: var(--tc-display-h3);
  font-weight: 620;
  line-height: var(--tc-leading-snug);
  letter-spacing: var(--tc-tracking-heading);
}
.tc-eyebrow {
  font-size: var(--tc-text-xs);
  font-weight: 700;
  letter-spacing: var(--tc-tracking-caps);
  text-transform: uppercase;
  color: var(--tc-violet-700);
}
.tc-lead {
  font-size: clamp(var(--tc-text-md), 1rem + 0.7vw, var(--tc-text-lg));
  line-height: var(--tc-leading-snug);
  color: var(--tc-fg-secondary);
  max-width: 36rem;
  text-wrap: pretty;
}
.tc-body {
  color: var(--tc-fg-muted);
  max-width: var(--tc-measure);
  text-wrap: pretty;
}
.tc-wordmark {
  font-family: var(--tc-font-display);
  font-weight: 660;
  letter-spacing: -0.01em;
  color: var(--tc-fg);
}
.tc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--tc-space-2);
  min-height: 3rem;
  padding: 0 var(--tc-space-6);
  border-radius: var(--tc-radius-pill);
  font-family: var(--tc-font-text);
  font-size: var(--tc-text-sm);
  font-weight: 700;
  letter-spacing: 0.01em;
  white-space: nowrap;
  cursor: pointer;
  transition: transform var(--tc-dur-base) var(--tc-ease-out), background-color var(--tc-dur-base) var(--tc-ease-out), border-color var(--tc-dur-base) var(--tc-ease-out), box-shadow var(--tc-dur-base) var(--tc-ease-out);
}
.tc-btn:hover {
  transform: translateY(-2px);
}
.tc-btn:active {
  transform: translateY(0);
}
.tc-btn-sm {
  min-height: 2.5rem;
  padding: 0 var(--tc-space-4);
}
.tc-btn-primary {
  background: var(--tc-primary);
  color: var(--tc-primary-fg);
  box-shadow: var(--tc-btn-primary-shadow);
}
.tc-btn-primary:hover {
  background: var(--tc-primary-hover);
  box-shadow: var(--tc-btn-primary-shadow-hover);
}
.tc-btn-ghost {
  background: var(--tc-surface);
  color: var(--tc-fg);
  border: 1px solid var(--tc-border-strong);
  box-shadow: var(--tc-shadow-xs);
}
.tc-btn-ghost:hover {
  border-color: var(--tc-violet-400);
  box-shadow: var(--tc-shadow-sm);
}
.tc-btn-light {
  background: var(--tc-white);
  color: var(--tc-violet-800);
  box-shadow: 0 12px 28px -8px rgba(21, 10, 40, 0.55);
}
.tc-btn-light:hover {
  background: var(--tc-violet-50);
}
.tc-card {
  background: var(--tc-surface);
  border: 1px solid var(--tc-border);
  border-radius: var(--tc-radius-lg);
  box-shadow: var(--tc-shadow-sm);
  transition: transform var(--tc-dur-base) var(--tc-ease-out), box-shadow var(--tc-dur-base) var(--tc-ease-out);
}
.tc-card-hover:hover {
  transform: translateY(-4px);
  box-shadow: var(--tc-shadow-md);
}
.tc-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--tc-space-2);
  padding: var(--tc-space-2) var(--tc-space-4);
  border-radius: var(--tc-radius-pill);
  background: var(--tc-surface);
  border: 1px solid var(--tc-border);
  box-shadow: var(--tc-shadow-xs);
  font-size: var(--tc-text-sm);
  font-weight: 600;
  color: var(--tc-fg-secondary);
}
.tc-icon-tile {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: var(--tc-radius-md);
  background: var(--tc-primary-soft);
  color: var(--tc-violet-700);
  box-shadow: var(--tc-shadow-clay);
}
.tc-glass {
  background: var(--tc-glass-bg);
  border: 1px solid var(--tc-glass-border);
  box-shadow: var(--tc-glass-shadow);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}
.tc-gridpaper {
  background-color: var(--tc-surface-tint);
  background-image: linear-gradient(var(--tc-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--tc-grid-line) 1px, transparent 1px);
  background-size: 44px 44px;
}
.tc-panel-deep {
  background: radial-gradient(120% 130% at 82% -10%, rgba(151, 103, 232, 0.55), transparent 55%), radial-gradient(90% 110% at 8% 110%, rgba(88, 44, 146, 0.65), transparent 60%), linear-gradient(160deg, var(--tc-violet-950) 0%, var(--tc-violet-900) 100%);
  color: var(--tc-fg-on-deep);
  box-shadow: var(--tc-panel-deep-ring);
}
.tc-hero-wash {
  background-image: var(--tc-hero-wash);
}
.tc-demo-agent {
  background-color: var(--tc-demo-agent-bg);
}
.tc-demo-card {
  background-color: var(--tc-demo-card-bg);
}
.tc-mock-frame {
  background-color: var(--tc-mock-frame-bg);
  border-color: var(--tc-mock-frame-border);
}
.tc-mock-raised {
  background-color: var(--tc-mock-raised-bg);
}
.tc-page {
  color: var(--foreground);
  --background: var(--tc-bg);
}
.tc-doc-sheet {
  background-color: var(--tc-sheet-bg);
  border-radius: var(--tc-radius-lg);
  box-shadow: var(--tc-sheet-shadow);
  margin-bottom: var(--tc-sheet-mb);
}
@keyframes tc-rise {
  from {
    opacity: 0;
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes tc-float {
  0%, 100% {
    transform: translateY(0.75rem) rotate(-1deg);
  }
  50% {
    transform: translateY(-0.25rem) rotate(0.75deg);
  }
}
@keyframes tc-drift {
  0%, 100% {
    transform: rotate(4deg) translateY(0);
  }
  50% {
    transform: rotate(2.75deg) translateY(-10px);
  }
}
@keyframes tc-twinkle {
  0%, 100% {
    opacity: 0.4;
    transform: scale(0.85);
  }
  50% {
    opacity: 1;
    transform: scale(1.08);
  }
}
.tc-anim-rise {
  animation: tc-rise var(--tc-dur-slow) var(--tc-ease-out) both;
}
.tc-anim-rise-late {
  animation: tc-rise 900ms 120ms var(--tc-ease-out) both;
}
.tc-anim-float {
  animation: tc-float var(--tc-dur-drift) var(--tc-ease-inout) infinite;
}
.tc-anim-drift {
  animation: tc-drift calc(var(--tc-dur-drift) - 1s) var(--tc-ease-inout) infinite;
}
.tc-anim-twinkle {
  animation: tc-twinkle 3.2s var(--tc-ease-inout) infinite;
}
.tc-anim-twinkle-late {
  animation: tc-twinkle 3.2s 1.1s var(--tc-ease-inout) infinite;
}
@supports (animation-timeline: view()) {
  .tc-reveal {
    animation: tc-rise both var(--tc-ease-out);
    animation-timeline: view();
    animation-range: entry 8% entry 38%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .tc-landing, .tc-scope, .tc-page {
    scroll-behavior: auto;
  }
  .tc-anim-rise, .tc-anim-rise-late, .tc-anim-float, .tc-anim-drift, .tc-anim-twinkle, .tc-anim-twinkle-late, .tc-reveal {
    animation: none;
  }
  .tc-landing *, .tc-scope * {
    transition-duration: 0.01ms !important;
  }
}
@media (prefers-color-scheme: dark) {
  .tc-landing:where(:not(.light, .light *)), .tc-scope:where(:not(.light, .light *)), .tc-page:where(:not(.light, .light *)) {
    color-scheme: dark;
    --tc-violet-50: #1e1537;
    --tc-violet-100: #2a1d4a;
    --tc-violet-600: #b691f4;
    --tc-violet-700: #c9aef8;
    --tc-ink-950: #f2edfa;
    --tc-ink-800: #d5c9e8;
    --tc-ink-600: #bdb0d6;
    --tc-ink-500: #a99cc6;
    --tc-ink-300: #7d7099;
    --tc-paper: #160f29;
    --tc-paper-warm: #1b1233;
    --tc-mint-100: #16352a;
    --tc-mint-300: #7fc9a4;
    --tc-mint-700: #a7e0c4;
    --tc-surface: #201740;
    --tc-border: rgba(240, 233, 252, 0.12);
    --tc-border-strong: rgba(240, 233, 252, 0.22);
    --tc-primary: #8a55e6;
    --tc-primary-hover: #7e45d8;
    --tc-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.4);
    --tc-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.45), 0 1px 2px rgba(0, 0, 0, 0.35);
    --tc-shadow-md: 0 12px 32px -8px rgba(0, 0, 0, 0.55), 0 2px 8px rgba(0, 0, 0, 0.35);
    --tc-shadow-lg: 0 32px 64px -16px rgba(0, 0, 0, 0.65),
            0 8px 24px -8px rgba(0, 0, 0, 0.45);
    --tc-shadow-clay: inset 0 1px 0 rgba(255, 255, 255, 0.07),
            0 16px 40px -12px rgba(0, 0, 0, 0.5);
    --tc-glass-bg: rgba(23, 16, 42, 0.72);
    --tc-glass-border: rgba(177, 140, 243, 0.2);
    --tc-glass-shadow: 0 18px 60px -20px rgba(0, 0, 0, 0.7);
    --tc-grid-line: rgba(240, 233, 252, 0.055);
    --tc-selection-bg: rgba(151, 103, 232, 0.5);
    --tc-selection-fg: #ffffff;
    --tc-skip-bg: #2a1d4a;
    --tc-skip-fg: #f2edfa;
    --tc-btn-primary-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16),
            0 12px 32px -8px rgba(151, 103, 232, 0.45);
    --tc-btn-primary-shadow-hover: inset 0 1px 0 rgba(255, 255, 255, 0.16),
            0 16px 40px -8px rgba(151, 103, 232, 0.55);
    --tc-panel-deep-ring: inset 0 0 0 1px rgba(177, 140, 243, 0.22);
    --tc-hero-wash: radial-gradient(
                80rem 44rem at 78% -12%,
                rgba(126, 69, 216, 0.3),
                transparent 60%
            ),
            radial-gradient(48rem 30rem at -8% 38%, rgba(127, 201, 164, 0.08), transparent 55%),
            linear-gradient(180deg, #1b1233 0%, #160f29 60%, #130d24 100%);
    --tc-demo-agent-bg: #2a1d4a;
    --tc-demo-card-bg: rgba(38, 27, 70, 0.94);
    --tc-mock-frame-bg: #100a1f;
    --tc-mock-frame-border: rgba(255, 255, 255, 0.14);
    --tc-mock-raised-bg: #261c48;
    --tc-sheet-bg: #fdfcff;
    --tc-sheet-shadow: 0 24px 64px -24px rgba(0, 0, 0, 0.6);
    --tc-sheet-mb: var(--tc-space-12);
  }
  .tc-page:where(:not(.light, .light *)) {
    --background: var(--tc-bg);
    --foreground: var(--tc-fg);
    --muted-foreground: var(--tc-fg-muted);
    --border: var(--tc-border);
    --ring: var(--tc-ring);
  }
  .tc-page:where(:not(.light, .light *)) ::selection {
    background: var(--tc-selection-bg);
    color: var(--tc-selection-fg);
  }
  html:where(:not(.light)):has(.tc-landing, .tc-page), html:where(:not(.light)):has(.tc-landing, .tc-page) body {
    background-color: #160f29;
  }
}
.tc-landing:where(.dark, .dark *):where(:not(.light, .light *)), .tc-scope:where(.dark, .dark *):where(:not(.light, .light *)), .tc-page:where(.dark, .dark *):where(:not(.light, .light *)) {
  color-scheme: dark;
  --tc-violet-50: #1e1537;
  --tc-violet-100: #2a1d4a;
  --tc-violet-600: #b691f4;
  --tc-violet-700: #c9aef8;
  --tc-ink-950: #f2edfa;
  --tc-ink-800: #d5c9e8;
  --tc-ink-600: #bdb0d6;
  --tc-ink-500: #a99cc6;
  --tc-ink-300: #7d7099;
  --tc-paper: #160f29;
  --tc-paper-warm: #1b1233;
  --tc-mint-100: #16352a;
  --tc-mint-300: #7fc9a4;
  --tc-mint-700: #a7e0c4;
  --tc-surface: #201740;
  --tc-border: rgba(240, 233, 252, 0.12);
  --tc-border-strong: rgba(240, 233, 252, 0.22);
  --tc-primary: #8a55e6;
  --tc-primary-hover: #7e45d8;
  --tc-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.4);
  --tc-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.45), 0 1px 2px rgba(0, 0, 0, 0.35);
  --tc-shadow-md: 0 12px 32px -8px rgba(0, 0, 0, 0.55), 0 2px 8px rgba(0, 0, 0, 0.35);
  --tc-shadow-lg: 0 32px 64px -16px rgba(0, 0, 0, 0.65), 0 8px 24px -8px rgba(0, 0, 0, 0.45);
  --tc-shadow-clay: inset 0 1px 0 rgba(255, 255, 255, 0.07),
        0 16px 40px -12px rgba(0, 0, 0, 0.5);
  --tc-glass-bg: rgba(23, 16, 42, 0.72);
  --tc-glass-border: rgba(177, 140, 243, 0.2);
  --tc-glass-shadow: 0 18px 60px -20px rgba(0, 0, 0, 0.7);
  --tc-grid-line: rgba(240, 233, 252, 0.055);
  --tc-selection-bg: rgba(151, 103, 232, 0.5);
  --tc-selection-fg: #ffffff;
  --tc-skip-bg: #2a1d4a;
  --tc-skip-fg: #f2edfa;
  --tc-btn-primary-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 12px 32px -8px rgba(151, 103, 232, 0.45);
  --tc-btn-primary-shadow-hover: inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 16px 40px -8px rgba(151, 103, 232, 0.55);
  --tc-panel-deep-ring: inset 0 0 0 1px rgba(177, 140, 243, 0.22);
  --tc-hero-wash: radial-gradient(
            80rem 44rem at 78% -12%,
            rgba(126, 69, 216, 0.3),
            transparent 60%
        ),
        radial-gradient(48rem 30rem at -8% 38%, rgba(127, 201, 164, 0.08), transparent 55%),
        linear-gradient(180deg, #1b1233 0%, #160f29 60%, #130d24 100%);
  --tc-demo-agent-bg: #2a1d4a;
  --tc-demo-card-bg: rgba(38, 27, 70, 0.94);
  --tc-mock-frame-bg: #100a1f;
  --tc-mock-frame-border: rgba(255, 255, 255, 0.14);
  --tc-mock-raised-bg: #261c48;
  --tc-sheet-bg: #fdfcff;
  --tc-sheet-shadow: 0 24px 64px -24px rgba(0, 0, 0, 0.6);
  --tc-sheet-mb: var(--tc-space-12);
}
.tc-page:where(.dark, .dark *):where(:not(.light, .light *)) {
  --background: var(--tc-bg);
  --foreground: var(--tc-fg);
  --muted-foreground: var(--tc-fg-muted);
  --border: var(--tc-border);
  --ring: var(--tc-ring);
}
.tc-page:where(.dark, .dark *):where(:not(.light, .light *)) ::selection {
  background: var(--tc-selection-bg);
  color: var(--tc-selection-fg);
}
html:where(.dark:not(.light)):has(.tc-landing, .tc-page), html:where(.dark:not(.light)):has(.tc-landing, .tc-page) body {
  background-color: #160f29;
}
.tf-landing, .tf-landing.dark {
  color-scheme: dark;
  --tf-teal-100: #d5f3ef;
  --tf-teal-300: #74e0d5;
  --tf-teal-400: #42c9c1;
  --tf-teal-500: #2aafa8;
  --tf-teal-600: #1f8c88;
  --tf-teal-700: #17706b;
  --tf-teal-800: #125955;
  --tf-ink-950: #050c12;
  --tf-ink-925: #071018;
  --tf-ink-900: #0a141d;
  --tf-ink-850: #0d1922;
  --tf-ink-800: #101e2a;
  --tf-ink-400: #8da2af;
  --tf-ink-300: #b4c3cd;
  --tf-ink-100: #e7edf2;
  --tf-white: #ffffff;
  --tf-accent-warm: #f5b84b;
  --tf-hairline: rgba(141, 162, 175, 0.1);
  --tf-hairline-strong: rgba(141, 162, 175, 0.22);
  --tf-font-display: var(--font-space-grotesk, 'Space Grotesk'), 'Avenir Next', 'Segoe UI',
        sans-serif;
  --tf-font-text: var(--font-inter, Inter), 'Avenir Next', 'Segoe UI', sans-serif;
  --tf-font-mono: var(--font-jetbrains-mono, 'JetBrains Mono'), ui-monospace, 'SF Mono', Menlo,
        monospace;
  --tf-tracking-display: -0.025em;
  --tf-tracking-heading: -0.015em;
  --tf-tracking-caps: 0.14em;
  --tf-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.5);
  --tf-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.4);
  --tf-shadow-md: 0 12px 32px -8px rgba(0, 0, 0, 0.55), 0 2px 8px rgba(0, 0, 0, 0.35);
  --tf-shadow-lg: 0 32px 64px -16px rgba(0, 0, 0, 0.65), 0 8px 24px -8px rgba(0, 0, 0, 0.45);
  --tf-glow-primary: 0 0 24px -6px rgba(66, 201, 193, 0.4);
  --tf-dur-fast: 150ms;
  --tf-dur-base: 250ms;
  --tf-dur-slow: 600ms;
  --tf-dur-plot: 900ms;
  --tf-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --radius: 0.75rem;
  --background: var(--tf-ink-950);
  --foreground: var(--tf-ink-100);
  --card: var(--tf-ink-900);
  --card-foreground: var(--tf-ink-100);
  --popover: var(--tf-ink-800);
  --popover-foreground: var(--tf-ink-100);
  --primary: var(--tf-teal-400);
  --primary-foreground: var(--tf-ink-950);
  --secondary: var(--tf-ink-800);
  --secondary-foreground: var(--tf-ink-100);
  --muted: var(--tf-ink-900);
  --muted-foreground: var(--tf-ink-400);
  --accent: #0e2530;
  --accent-foreground: var(--tf-teal-300);
  --destructive: #e5484d;
  --destructive-foreground: #ffffff;
  --border: rgba(231, 237, 242, 0.1);
  --input: rgba(231, 237, 242, 0.14);
  --ring: var(--tf-teal-400);
  font-family: var(--tf-font-text);
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  line-height: 1.55;
}
@layer base {
  .tf-landing h1, .tf-landing h2, .tf-landing h3, .tf-landing h4 {
    font-family: var(--tf-font-display);
    font-weight: 700;
    letter-spacing: var(--tf-tracking-heading);
    line-height: 1.15;
  }
}
.tf-landing ::selection {
  background: rgba(66, 201, 193, 0.35);
  color: #ffffff;
}
@layer base {
  .tf-landing .font-display {
    font-family: var(--tf-font-display);
  }
  .tf-landing .font-mono {
    font-family: var(--tf-font-mono);
  }
}
@media (prefers-reduced-motion: no-preference) {
  html:has(.tf-landing) {
    scroll-behavior: smooth;
  }
}
.tf-eyebrow {
  font-family: var(--tf-font-mono);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: var(--tf-tracking-caps);
  text-transform: uppercase;
  color: var(--tf-teal-300);
}
.tf-microlabel {
  font-family: var(--tf-font-mono);
  font-size: 0.6875rem;
  letter-spacing: var(--tf-tracking-caps);
  text-transform: uppercase;
  color: var(--tf-ink-400);
}
.tf-doc-sheet {
  background-color: var(--tf-white);
  border-radius: 1rem;
  box-shadow: var(--tf-shadow-lg);
  overflow: hidden;
}
.tf-grid-texture {
  position: absolute;
  inset: 0;
  pointer-events: none;
  display: none;
  background-image: repeating-linear-gradient( to right, rgba(141, 162, 175, 0.05) 0 1px, transparent 1px 48px ), repeating-linear-gradient( to bottom, rgba(141, 162, 175, 0.05) 0 1px, transparent 1px 48px );
  -webkit-mask-image: radial-gradient(closest-side, black 30%, transparent 100%);
  mask-image: radial-gradient(closest-side, black 30%, transparent 100%);
}
@media (min-width: 640px) {
  .tf-grid-texture {
    display: block;
  }
}
.tf-regmark {
  position: absolute;
  width: 13px;
  height: 13px;
  pointer-events: none;
}
.tf-regmark::before, .tf-regmark::after {
  content: '';
  position: absolute;
  background: var(--tf-hairline-strong);
}
.tf-regmark::before {
  left: 6px;
  top: 0;
  width: 1px;
  height: 13px;
}
.tf-regmark::after {
  left: 0;
  top: 6px;
  width: 13px;
  height: 1px;
}
.tf-regmark-tl {
  top: -6px;
  left: -6px;
}
.tf-regmark-tr {
  top: -6px;
  right: -6px;
}
.tf-regmark-bl {
  bottom: -6px;
  left: -6px;
}
.tf-regmark-br {
  bottom: -6px;
  right: -6px;
}
.tf-ruler {
  position: relative;
  height: 9px;
  background-image: repeating-linear-gradient( to right, var(--tf-hairline-strong) 0 1px, transparent 1px 96px ), linear-gradient(to bottom, transparent 8px, var(--tf-hairline) 8px);
}
.tf-ruler-label {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  padding-inline: 0.75rem;
  background: var(--tf-ink-950);
  white-space: nowrap;
}
@keyframes tf-rise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.tf-anim-rise {
  animation: tf-rise 400ms var(--tf-ease-out) both;
}
.tf-anim-delay-1 {
  animation-delay: 80ms;
}
.tf-anim-delay-2 {
  animation-delay: 160ms;
}
@keyframes tf-caret-blink {
  0%, 49% {
    opacity: 1;
  }
  50%, 100% {
    opacity: 0;
  }
}
.tf-caret {
  display: inline-block;
  width: 1ch;
  height: 1.1em;
  vertical-align: text-bottom;
  background: var(--tf-teal-400);
}
@media (prefers-reduced-motion: no-preference) {
  .tf-caret {
    animation: tf-caret-blink 1s steps(1) infinite;
  }
}
@keyframes tf-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
.tf-status-dot {
  width: 6px;
  height: 6px;
  border-radius: 9999px;
  background: var(--tf-teal-400);
}
@media (prefers-reduced-motion: no-preference) {
  .tf-status-dot {
    animation: tf-pulse 2s ease-in-out infinite;
  }
}
.tf-session-line {
  position: absolute;
  inset-inline: 0;
  bottom: -1px;
  height: 2px;
  background: var(--tf-teal-400);
  transform: scaleX(0);
  transform-origin: left;
  pointer-events: none;
}
.tf-reveal {
  transition: opacity 600ms var(--tf-ease-out), transform 600ms var(--tf-ease-out);
}
.tf-reveal[data-hidden] {
  opacity: 0;
  transform: translateY(16px);
}
.tf-cascade {
  transition: opacity 350ms var(--tf-ease-out), transform 350ms var(--tf-ease-out);
  transition-delay: calc(200ms + var(--i, 0) * 120ms);
}
.tf-reveal[data-hidden] .tf-cascade {
  opacity: 0;
  transform: translateY(6px);
  transition: none;
}
.tf-heat-cell {
  opacity: var(--o, 0.4);
  transition: opacity 300ms var(--tf-ease-out);
  transition-delay: calc(250ms + var(--d, 0ms));
}
.tf-reveal[data-hidden] .tf-heat-cell {
  opacity: 0;
  transition: none;
}
@keyframes tf-march {
  to {
    stroke-dashoffset: -120;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .tf-rail-flow {
    animation: tf-march 10s linear infinite;
  }
}
.tf-cmdbar {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: 3.5rem;
  padding-inline: 1.25rem;
  border: 1px solid var(--tf-hairline-strong);
  border-radius: calc(var(--radius) - 2px);
  background: var(--tf-ink-950);
  font-family: var(--tf-font-mono);
  transition: border-color var(--tf-dur-fast);
}
.tf-cmdbar:hover, .tf-cmdbar:focus-visible {
  border-color: var(--tf-teal-400);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--tf-teal-400) 60%, transparent);
  }
}
.tf-cmdbar-hint {
  opacity: 0;
  transition: opacity var(--tf-dur-fast);
}
.tf-cmdbar:hover .tf-cmdbar-hint, .tf-cmdbar:focus-visible .tf-cmdbar-hint {
  opacity: 1;
}
.tf-history-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.875rem 1.25rem;
  transition: background-color var(--tf-dur-fast);
}
.tf-history-row:hover, .tf-history-row:focus-visible {
  background: rgba(231, 237, 242, 0.03);
}
.tf-history-spark {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
}
.tf-history-row:hover .tf-history-spark, .tf-history-row:focus-visible .tf-history-spark {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 600ms var(--tf-ease-out);
}
@media (prefers-reduced-motion: reduce) {
  .tf-history-spark {
    stroke-dashoffset: 0;
  }
}
.tf-run {
  --tf-t-prompt: 0.2s;
  --tf-t-compile: 2s;
  --tf-t-sweep: 3s;
  --tf-t-curves: 4.5s;
  --tf-t-receipt: 5.9s;
}
@keyframes tf-type {
  from {
    width: 0ch;
  }
  to {
    width: 53ch;
  }
}
@keyframes tf-hide {
  to {
    opacity: 0;
  }
}
.tf-run-prompt-text {
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  vertical-align: bottom;
}
.is-run .tf-run-prompt-text {
  animation: tf-type 1.6s steps(53, end) both;
  animation-delay: var(--tf-t-prompt);
}
.is-run .tf-run-prompt-caret {
  animation: tf-caret-blink 1s steps(1) infinite, tf-hide 1ms linear forwards;
  animation-delay: 0s, calc(var(--tf-t-compile) + 0.2s);
}
.is-done .tf-run-prompt-caret {
  opacity: 0;
}
@keyframes tf-stamp-up {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.is-run .tf-run-line {
  animation: tf-stamp-up 150ms var(--tf-ease-out) both;
  animation-delay: calc(var(--tf-t-compile) + var(--i, 0) * 0.15s);
}
@keyframes tf-fade-out {
  to {
    opacity: 0;
  }
}
@keyframes tf-fade-in {
  to {
    opacity: 1;
  }
}
.tf-run-status-wait {
  opacity: 1;
}
.tf-run-status-ok {
  opacity: 0;
}
.is-run .tf-run-status-wait {
  animation: tf-fade-out 120ms linear forwards;
  animation-delay: calc(var(--tf-t-compile) + var(--i, 0) * 0.15s + 0.25s);
}
.is-run .tf-run-status-ok {
  animation: tf-fade-in 120ms linear forwards;
  animation-delay: calc(var(--tf-t-compile) + var(--i, 0) * 0.15s + 0.25s);
}
.is-done .tf-run-status-wait {
  opacity: 0;
}
.is-done .tf-run-status-ok {
  opacity: 1;
}
@keyframes tf-cell-in {
  from {
    opacity: 0;
  }
  to {
    opacity: var(--o, 0.4);
  }
}
.tf-run-cell {
  opacity: 0;
}
.is-run .tf-run-cell {
  animation: tf-cell-in 300ms linear both;
  animation-delay: calc(var(--tf-t-sweep) + var(--d, 0s));
}
.is-done .tf-run-cell {
  opacity: var(--o, 0.4);
}
@keyframes tf-grid-dim {
  to {
    opacity: 0.1;
  }
}
.is-run .tf-run-grid {
  animation: tf-grid-dim 300ms linear forwards;
  animation-delay: calc(var(--tf-t-curves) - 0.2s);
}
.is-done .tf-run-grid {
  opacity: 0.1;
}
.tf-run-cell-ring {
  opacity: 0;
}
.is-run .tf-run-cell-ring {
  animation: tf-fade-in 200ms linear forwards;
  animation-delay: calc(var(--tf-t-curves) - 0.3s);
}
.is-done .tf-run-cell-ring {
  opacity: 1;
}
@keyframes tf-scan {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(560px);
  }
}
.tf-run-cursor {
  opacity: 0;
}
.is-run .tf-run-cursor {
  animation: tf-fade-in 100ms linear forwards, tf-scan 1.05s linear both, tf-fade-out 200ms linear forwards;
  animation-delay: var(--tf-t-sweep), var(--tf-t-sweep), calc(var(--tf-t-sweep) + 1.05s);
}
.is-done .tf-run-cursor {
  opacity: 0;
}
.tf-run-curve {
  stroke-dasharray: 1;
  stroke-dashoffset: 0;
}
@keyframes tf-plot {
  from {
    stroke-dashoffset: 1;
  }
  to {
    stroke-dashoffset: 0;
  }
}
.is-run .tf-run-curve {
  animation: tf-plot var(--tf-dur-plot) var(--tf-ease-out) both;
  animation-delay: calc(var(--tf-t-curves) + var(--i, 0) * 0.1s);
}
.is-run .tf-run-curve-winner {
  animation-duration: 0.9s;
}
.tf-run-area {
  opacity: 1;
}
.is-run .tf-run-area {
  opacity: 0;
  animation: tf-fade-in 400ms linear forwards;
  animation-delay: calc(var(--tf-t-curves) + 0.8s);
}
@keyframes tf-chip-pop {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.is-run .tf-run-chip {
  animation: tf-chip-pop 200ms var(--tf-ease-out) both;
  animation-delay: calc(var(--tf-t-curves) + 1s);
}
@keyframes tf-stamp-down {
  from {
    opacity: 0;
    transform: translateY(-2px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.is-run .tf-run-receipt-line {
  animation: tf-stamp-down 200ms var(--tf-ease-out) both;
  animation-delay: var(--tf-t-receipt);
}
@keyframes tf-seal {
  from {
    opacity: 0;
    transform: rotate(-6deg) scale(1.15);
  }
  to {
    opacity: 1;
    transform: rotate(-6deg) scale(1);
  }
}
.tf-run-seal {
  transform: rotate(-6deg);
  color: var(--tf-accent-warm);
  border: 1px solid var(--tf-accent-warm);
}
.is-run .tf-run-seal {
  animation: tf-seal 200ms var(--tf-ease-out) both;
  animation-delay: calc(var(--tf-t-receipt) + 0.3s);
}
.tf-run-replay {
  opacity: 0;
  visibility: hidden;
}
.is-run .tf-run-replay {
  animation: tf-replay-in 300ms linear both;
  animation-delay: calc(var(--tf-t-receipt) + 0.6s);
}
@keyframes tf-replay-in {
  from {
    opacity: 0;
    visibility: hidden;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}
@media (prefers-reduced-motion: reduce) {
  .is-run .tf-run-prompt-text, .is-run .tf-run-prompt-caret, .is-run .tf-run-line, .is-run .tf-run-status-wait, .is-run .tf-run-status-ok, .is-run .tf-run-cell, .is-run .tf-run-grid, .is-run .tf-run-cell-ring, .is-run .tf-run-cursor, .is-run .tf-run-curve, .is-run .tf-run-area, .is-run .tf-run-chip, .is-run .tf-run-receipt-line, .is-run .tf-run-seal, .is-run .tf-run-replay {
    animation: none;
  }
  .is-run .tf-run-status-wait {
    opacity: 0;
  }
  .is-run .tf-run-status-ok, .is-run .tf-run-cell-ring, .is-run .tf-run-area {
    opacity: 1;
  }
  .is-run .tf-run-cell {
    opacity: var(--o, 0.4);
  }
  .is-run .tf-run-grid {
    opacity: 0.1;
  }
  .is-run .tf-run-prompt-caret, .is-run .tf-run-cursor {
    opacity: 0;
  }
}
.tf-proof-fill {
  height: 100%;
  background: var(--tf-teal-400);
  transform-origin: left;
}
@keyframes tf-fill {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}
.tf-proof.is-live .tf-proof-fill {
  animation: tf-fill var(--ms, 500ms) linear both;
}
.tf-ms-ruler {
  height: 7px;
  background-image: repeating-linear-gradient( to right, var(--tf-hairline-strong) 0 1px, transparent 1px calc(100% / 2.8) ), repeating-linear-gradient( to right, var(--tf-hairline) 0 1px, transparent 1px calc(100% / 14) ), linear-gradient(to top, var(--tf-hairline-strong) 1px, transparent 1px);
}
.tf-receipt {
  background: var(--tf-ink-950);
  border: 1px solid var(--tf-hairline-strong);
  border-bottom: none;
  clip-path: polygon( 0 0, 100% 0, 100% calc(100% - 8px), 95% 100%, 90% calc(100% - 8px), 85% 100%, 80% calc(100% - 8px), 75% 100%, 70% calc(100% - 8px), 65% 100%, 60% calc(100% - 8px), 55% 100%, 50% calc(100% - 8px), 45% 100%, 40% calc(100% - 8px), 35% 100%, 30% calc(100% - 8px), 25% 100%, 20% calc(100% - 8px), 15% 100%, 10% calc(100% - 8px), 5% 100%, 0 calc(100% - 8px) );
}
.tf-receipt-row + .tf-receipt-row {
  border-top: 1px dashed var(--tf-hairline);
}
.tf-dotlead {
  flex: 1;
  margin-inline: 0.6ch;
  border-bottom: 1px dotted var(--tf-hairline-strong);
  transform: translateY(-0.3em);
}
.tf-res-underline {
  position: relative;
}
.tf-res-underline::after {
  content: '';
  position: absolute;
  inset-inline: 0;
  bottom: -6px;
  height: 2px;
  background: var(--tf-teal-400);
  @supports (color: color-mix(in lab, red, red)) {
    background: color-mix(in oklab, var(--tf-teal-400) 60%, transparent);
  }
  transform: scaleX(1);
  transform-origin: left;
  transition: transform 500ms var(--tf-ease-out) 300ms;
}
.tf-reveal[data-hidden] .tf-res-underline::after {
  transform: scaleX(0);
  transition: none;
}
@media (prefers-reduced-motion: reduce) {
  .tf-anim-rise {
    animation: none;
  }
  .tf-reveal[data-hidden] {
    opacity: 1;
    transform: none;
  }
  .tf-reveal[data-hidden] .tf-cascade, .tf-reveal[data-hidden] .tf-heat-cell {
    opacity: var(--o, 1);
    transform: none;
  }
  .tf-proof.is-live .tf-proof-fill {
    animation: none;
    opacity: 1;
    transform: none;
  }
  .tf-res-underline::after, .tf-reveal[data-hidden] .tf-res-underline::after {
    transform: scaleX(1);
    transition: none;
  }
}
@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-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-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-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: 0px;
}
@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;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::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-space-y-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: 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-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;
    }
  }
}
@font-face{font-family:T75SpaceGrotesk;src:url(/public-fonts/SpaceGrotesk-Medium.ttf);font-weight:500}@font-face{font-family:T75SpaceGrotesk;src:url(/public-fonts/SpaceGrotesk-Bold.ttf);font-weight:700}@font-face{font-family:T75Bricolage;src:url(/public-fonts/BricolageGrotesque.ttf);font-weight:200 800;font-display:swap}@font-face{font-family:T75Figtree;src:url(/public-fonts/Figtree.ttf);font-weight:300 900;font-display:swap}@font-face{font-family:T75Inter;src:url(/public-fonts/Inter.ttf);font-weight:100 900;font-display:swap}@font-face{font-family:T75JetBrains;src:url(/public-fonts/JetBrainsMono.ttf);font-weight:100 800;font-display:swap}.tf-landing{--font-space-grotesk:T75SpaceGrotesk;--font-inter:T75Inter;--font-jetbrains-mono:T75JetBrains}.tc-landing,.tc-page,.tc-scope{--font-tc-display:T75Bricolage;--font-tc-text:T75Figtree}
