/* [project]/frontend/src/app/globals.css [app-client] (css) */
@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-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --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-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --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-ease: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: "Inter", system-ui, -apple-system, sans-serif;
    --font-mono: "JetBrains Mono", "Fira Code", monospace;
    --color-red-400: #ff6568;
    --color-red-500: #fb2c36;
    --color-red-600: #e40014;
    --color-amber-400: #fcbb00;
    --color-yellow-400: #fac800;
    --color-green-400: #05df72;
    --color-green-500: #00c758;
    --color-blue-400: #54a2ff;
    --color-blue-500: #3080ff;
    --color-indigo-300: #a4b3ff;
    --color-indigo-400: #7d87ff;
    --color-purple-400: #c07eff;
    --color-purple-500: #ac4bff;
    --color-purple-600: #9810fa;
    --color-purple-900: #59168b;
    --color-pink-400: #fb64b6;
    --color-pink-500: #f6339a;
    --color-pink-900: #861043;
    --color-slate-900: #0f172b;
    --color-gray-50: #f9fafb;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #d1d5dc;
    --color-gray-400: #99a1af;
    --color-gray-500: #6a7282;
    --color-gray-600: #4a5565;
    --color-gray-700: #364153;
    --color-gray-800: #1e2939;
    --color-gray-900: #101828;
    --color-zinc-300: #d4d4d8;
    --color-zinc-400: #9f9fa9;
    --color-zinc-500: #71717b;
    --color-zinc-600: #52525c;
    --color-zinc-700: #3f3f46;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .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;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tighter: -.05em;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --tracking-widest: .1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --drop-shadow-xl: 0 9px 7px #0000001a;
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --animate-bounce: bounce 1s infinite;
    --blur-sm: 8px;
    --blur-md: 12px;
    --blur-xl: 24px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-display: "Space Grotesk", sans-serif;
  }

  @supports (color: lab(0% 0 0)) {
    :root, :host {
      --color-red-400: lab(63.7053% 60.745 31.3109);
      --color-red-500: lab(55.4814% 75.0732 48.8528);
      --color-red-600: lab(48.4493% 77.4328 61.5452);
      --color-amber-400: lab(80.1641% 16.6016 99.2089);
      --color-yellow-400: lab(83.2664% 8.65132 106.895);
      --color-green-400: lab(78.503% -64.9265 39.7492);
      --color-green-500: lab(70.5521% -66.5147 45.8073);
      --color-blue-400: lab(65.0361% -1.42065 -56.9802);
      --color-blue-500: lab(54.1736% 13.3369 -74.6839);
      --color-indigo-300: lab(74.0235% 8.54138 -41.6075);
      --color-indigo-400: lab(59.866% 22.4834 -64.4485);
      --color-purple-400: lab(63.6946% 47.6127 -59.2066);
      --color-purple-500: lab(52.0183% 66.11 -78.2316);
      --color-purple-600: lab(43.0295% 75.21 -86.5669);
      --color-purple-900: lab(24.9401% 45.2703 -51.2728);
      --color-pink-400: lab(64.5597% 64.3615 -12.7988);
      --color-pink-500: lab(56.9303% 76.8162 -8.07021);
      --color-pink-900: lab(29.4367% 49.3962 3.35757);
      --color-slate-900: lab(7.78673% 1.82345 -15.0537);
      --color-gray-50: lab(98.2596% -.247031 -.706708);
      --color-gray-200: lab(91.6229% -.159115 -2.26791);
      --color-gray-300: lab(85.1236% -.612259 -3.7138);
      --color-gray-400: lab(65.9269% -.832707 -8.17473);
      --color-gray-500: lab(47.7841% -.393182 -10.0268);
      --color-gray-600: lab(35.6337% -1.58697 -10.8425);
      --color-gray-700: lab(27.1134% -.956401 -12.3224);
      --color-gray-800: lab(16.1051% -1.18239 -11.7533);
      --color-gray-900: lab(8.11897% .811279 -12.254);
      --color-zinc-300: lab(84.9837% .601262 -2.17986);
      --color-zinc-400: lab(65.6464% 1.53497 -5.42429);
      --color-zinc-500: lab(47.8878% 1.65477 -5.77283);
      --color-zinc-600: lab(35.1166% 1.78212 -6.1173);
      --color-zinc-700: lab(26.8019% 1.35387 -4.68303);
    }
  }
}

@layer base {
  *, :after, :before, ::backdrop {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  ::file-selector-button {
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }

  html, :host {
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }

  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }

  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }

  b, strong {
    font-weight: bolder;
  }

  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }

  small {
    font-size: 80%;
  }

  sub, sup {
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

  ol, ul, menu {
    list-style: none;
  }

  img, svg, video, canvas, audio, iframe, embed, object {
    vertical-align: middle;
    display: block;
  }

  img, video {
    max-width: 100%;
    height: auto;
  }

  button, input, select, optgroup, textarea {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }

  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }

  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }

  ::file-selector-button {
    margin-inline-end: 4px;
  }

  ::placeholder {
    opacity: 1;
  }

  @supports (not ((-webkit-appearance: -apple-pay-button))) or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      ::placeholder {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }

  textarea {
    resize: vertical;
  }

  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }

  ::-webkit-datetime-edit {
    display: inline-flex;
  }

  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }

  ::-webkit-datetime-edit {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-year-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-month-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-day-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-hour-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-minute-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-second-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-millisecond-field {
    padding-block: 0;
  }

  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }

  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }

  :-moz-ui-invalid {
    box-shadow: none;
  }

  button, input:where([type="button"], [type="reset"], [type="submit"]) {
    appearance: button;
  }

  ::file-selector-button {
    appearance: button;
  }

  ::-webkit-inner-spin-button {
    height: auto;
  }

  ::-webkit-outer-spin-button {
    height: auto;
  }

  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}

@layer components;

@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }

  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

  .sr-only {
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    overflow: hidden;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .sticky {
    position: sticky;
  }

  .-inset-0\.5 {
    inset: calc(var(--spacing) * -.5);
  }

  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }

  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }

  .start {
    inset-inline-start: var(--spacing);
  }

  .end {
    inset-inline-end: var(--spacing);
  }

  .top-0 {
    top: calc(var(--spacing) * 0);
  }

  .top-1 {
    top: calc(var(--spacing) * 1);
  }

  .top-1\/2 {
    top: 50%;
  }

  .top-4 {
    top: calc(var(--spacing) * 4);
  }

  .top-6 {
    top: calc(var(--spacing) * 6);
  }

  .top-8 {
    top: calc(var(--spacing) * 8);
  }

  .top-28 {
    top: calc(var(--spacing) * 28);
  }

  .top-32 {
    top: calc(var(--spacing) * 32);
  }

  .top-full {
    top: 100%;
  }

  .right-0 {
    right: calc(var(--spacing) * 0);
  }

  .right-2 {
    right: calc(var(--spacing) * 2);
  }

  .right-4 {
    right: calc(var(--spacing) * 4);
  }

  .right-6 {
    right: calc(var(--spacing) * 6);
  }

  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }

  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }

  .bottom-10 {
    bottom: calc(var(--spacing) * 10);
  }

  .bottom-16 {
    bottom: calc(var(--spacing) * 16);
  }

  .bottom-full {
    bottom: 100%;
  }

  .left-0 {
    left: calc(var(--spacing) * 0);
  }

  .left-1 {
    left: calc(var(--spacing) * 1);
  }

  .left-1\/2 {
    left: 50%;
  }

  .left-4 {
    left: calc(var(--spacing) * 4);
  }

  .left-6 {
    left: calc(var(--spacing) * 6);
  }

  .left-8 {
    left: calc(var(--spacing) * 8);
  }

  .left-64 {
    left: calc(var(--spacing) * 64);
  }

  .isolate {
    isolation: isolate;
  }

  .z-10 {
    z-index: 10;
  }

  .z-20 {
    z-index: 20;
  }

  .z-30 {
    z-index: 30;
  }

  .z-40 {
    z-index: 40;
  }

  .z-50 {
    z-index: 50;
  }

  .z-\[60\] {
    z-index: 60;
  }

  .z-\[61\] {
    z-index: 61;
  }

  .z-\[70\] {
    z-index: 70;
  }

  .z-\[90\] {
    z-index: 90;
  }

  .z-\[95\] {
    z-index: 95;
  }

  .z-\[100\] {
    z-index: 100;
  }

  .z-\[200\] {
    z-index: 200;
  }

  .z-\[9999\] {
    z-index: 9999;
  }

  .order-2 {
    order: 2;
  }

  .order-3 {
    order: 3;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 40rem) {
    .container {
      max-width: 40rem;
    }
  }

  @media (min-width: 48rem) {
    .container {
      max-width: 48rem;
    }
  }

  @media (min-width: 64rem) {
    .container {
      max-width: 64rem;
    }
  }

  @media (min-width: 80rem) {
    .container {
      max-width: 80rem;
    }
  }

  @media (min-width: 96rem) {
    .container {
      max-width: 96rem;
    }
  }

  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }

  .mx-4 {
    margin-inline: calc(var(--spacing) * 4);
  }

  .mx-auto {
    margin-inline: auto;
  }

  .my-0\.5 {
    margin-block: calc(var(--spacing) * .5);
  }

  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }

  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }

  .my-3 {
    margin-block: calc(var(--spacing) * 3);
  }

  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }

  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }

  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }

  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }

  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }

  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }

  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }

  .mt-auto {
    margin-top: auto;
  }

  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }

  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }

  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }

  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }

  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }

  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }

  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }

  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }

  .mb-20 {
    margin-bottom: calc(var(--spacing) * 20);
  }

  .mb-\[-10px\] {
    margin-bottom: -10px;
  }

  .-ml-\[1vw\] {
    margin-left: -1vw;
  }

  .ml-0\.5 {
    margin-left: calc(var(--spacing) * .5);
  }

  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }

  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }

  .ml-auto {
    margin-left: auto;
  }

  .line-clamp-2 {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .inline-block {
    display: inline-block;
  }

  .inline-flex {
    display: inline-flex;
  }

  .table {
    display: table;
  }

  .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-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-11 {
    height: calc(var(--spacing) * 11);
  }

  .h-12 {
    height: calc(var(--spacing) * 12);
  }

  .h-14 {
    height: calc(var(--spacing) * 14);
  }

  .h-16 {
    height: calc(var(--spacing) * 16);
  }

  .h-20 {
    height: calc(var(--spacing) * 20);
  }

  .h-24 {
    height: calc(var(--spacing) * 24);
  }

  .h-32 {
    height: calc(var(--spacing) * 32);
  }

  .h-40 {
    height: calc(var(--spacing) * 40);
  }

  .h-48 {
    height: calc(var(--spacing) * 48);
  }

  .h-\[44px\] {
    height: 44px;
  }

  .h-\[46px\] {
    height: 46px;
  }

  .h-\[52px\] {
    height: 52px;
  }

  .h-\[70px\] {
    height: 70px;
  }

  .h-\[600px\] {
    height: 600px;
  }

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

  .h-screen {
    height: 100vh;
  }

  .max-h-80 {
    max-height: calc(var(--spacing) * 80);
  }

  .max-h-\[200px\] {
    max-height: 200px;
  }

  .min-h-screen {
    min-height: 100vh;
  }

  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }

  .w-2 {
    width: calc(var(--spacing) * 2);
  }

  .w-3 {
    width: calc(var(--spacing) * 3);
  }

  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }

  .w-4 {
    width: calc(var(--spacing) * 4);
  }

  .w-5 {
    width: calc(var(--spacing) * 5);
  }

  .w-6 {
    width: calc(var(--spacing) * 6);
  }

  .w-8 {
    width: calc(var(--spacing) * 8);
  }

  .w-9 {
    width: calc(var(--spacing) * 9);
  }

  .w-10 {
    width: calc(var(--spacing) * 10);
  }

  .w-11 {
    width: calc(var(--spacing) * 11);
  }

  .w-12 {
    width: calc(var(--spacing) * 12);
  }

  .w-16 {
    width: calc(var(--spacing) * 16);
  }

  .w-24 {
    width: calc(var(--spacing) * 24);
  }

  .w-32 {
    width: calc(var(--spacing) * 32);
  }

  .w-48 {
    width: calc(var(--spacing) * 48);
  }

  .w-64 {
    width: calc(var(--spacing) * 64);
  }

  .w-\[46px\] {
    width: 46px;
  }

  .w-\[80px\] {
    width: 80px;
  }

  .w-\[85\%\] {
    width: 85%;
  }

  .w-\[220px\] {
    width: 220px;
  }

  .w-\[280px\] {
    width: 280px;
  }

  .w-\[600px\] {
    width: 600px;
  }

  .w-fit {
    width: fit-content;
  }

  .w-full {
    width: 100%;
  }

  .max-w-2xl {
    max-width: var(--container-2xl);
  }

  .max-w-4xl {
    max-width: var(--container-4xl);
  }

  .max-w-5xl {
    max-width: var(--container-5xl);
  }

  .max-w-7xl {
    max-width: var(--container-7xl);
  }

  .max-w-\[85\%\] {
    max-width: 85%;
  }

  .max-w-\[200px\] {
    max-width: 200px;
  }

  .max-w-\[280px\] {
    max-width: 280px;
  }

  .max-w-\[600px\] {
    max-width: 600px;
  }

  .max-w-\[700px\] {
    max-width: 700px;
  }

  .max-w-\[720px\] {
    max-width: 720px;
  }

  .max-w-\[800px\] {
    max-width: 800px;
  }

  .max-w-\[1100px\] {
    max-width: 1100px;
  }

  .max-w-\[1200px\] {
    max-width: 1200px;
  }

  .max-w-\[1400px\] {
    max-width: 1400px;
  }

  .max-w-md {
    max-width: var(--container-md);
  }

  .max-w-none {
    max-width: none;
  }

  .max-w-sm {
    max-width: var(--container-sm);
  }

  .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);
  }

  .min-w-8 {
    min-width: calc(var(--spacing) * 8);
  }

  .flex-1 {
    flex: 1;
  }

  .flex-shrink {
    flex-shrink: 1;
  }

  .flex-shrink-0, .shrink-0 {
    flex-shrink: 0;
  }

  .flex-grow {
    flex-grow: 1;
  }

  .border-collapse {
    border-collapse: collapse;
  }

  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-x-2 {
    --tw-translate-x: calc(var(--spacing) * -2);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-x-full {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-0 {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-x-5 {
    --tw-translate-x: calc(var(--spacing) * 5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-2 {
    --tw-translate-y: calc(var(--spacing) * -2);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-translate-y-full {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-y-0 {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .translate-y-2 {
    --tw-translate-y: calc(var(--spacing) * 2);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .scale-0 {
    --tw-scale-x: 0%;
    --tw-scale-y: 0%;
    --tw-scale-z: 0%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .scale-150 {
    --tw-scale-x: 150%;
    --tw-scale-y: 150%;
    --tw-scale-z: 150%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .rotate-180 {
    rotate: 180deg;
  }

  .transform {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .animate-\[float_6s_ease-in-out_infinite\] {
    animation: 6s ease-in-out infinite float;
  }

  .animate-\[scaleIn_0\.3s_ease\] {
    animation: .3s scaleIn;
  }

  .animate-\[scaleIn_0\.15s_ease\] {
    animation: .15s scaleIn;
  }

  .animate-bounce {
    animation: var(--animate-bounce);
  }

  .animate-ping {
    animation: var(--animate-ping);
  }

  .animate-pulse {
    animation: var(--animate-pulse);
  }

  .animate-spin {
    animation: var(--animate-spin);
  }

  .cursor-not-allowed {
    cursor: not-allowed;
  }

  .cursor-pointer {
    cursor: pointer;
  }

  .cursor-zoom-in {
    cursor: zoom-in;
  }

  .resize {
    resize: both;
  }

  .resize-none {
    resize: none;
  }

  .columns-2 {
    columns: 2;
  }

  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .flex-col {
    flex-direction: column;
  }

  .flex-wrap {
    flex-wrap: wrap;
  }

  .items-center {
    align-items: center;
  }

  .items-end {
    align-items: flex-end;
  }

  .items-start {
    align-items: flex-start;
  }

  .justify-between {
    justify-content: space-between;
  }

  .justify-center {
    justify-content: center;
  }

  .justify-end {
    justify-content: flex-end;
  }

  .justify-start {
    justify-content: flex-start;
  }

  .gap-0 {
    gap: calc(var(--spacing) * 0);
  }

  .gap-0\.5 {
    gap: calc(var(--spacing) * .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-8 {
    gap: calc(var(--spacing) * 8);
  }

  .gap-10 {
    gap: calc(var(--spacing) * 10);
  }

  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }

  :where(.space-y-0\.5 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-1 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
  }

  :where(.space-y-3 > :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)));
  }

  :where(.space-y-4 > :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)));
  }

  :where(.space-y-8 > :not(:last-child)) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
  }

  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }

  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }

  .self-end {
    align-self: flex-end;
  }

  .self-start {
    align-self: flex-start;
  }

  .truncate {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-x-auto {
    overflow-x: auto;
  }

  .overflow-y-auto {
    overflow-y: auto;
  }

  .scroll-smooth {
    scroll-behavior: smooth;
  }

  .rounded {
    border-radius: .25rem;
  }

  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }

  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }

  .rounded-\[10px\] {
    border-radius: 10px;
  }

  .rounded-\[14px\] {
    border-radius: 14px;
  }

  .rounded-\[20px\] {
    border-radius: 20px;
  }

  .rounded-\[23px\] {
    border-radius: 23px;
  }

  .rounded-\[26px\] {
    border-radius: 26px;
  }

  .rounded-\[28px\] {
    border-radius: 28px;
  }

  .rounded-full {
    border-radius: 3.40282e38px;
  }

  .rounded-lg {
    border-radius: var(--radius-lg);
  }

  .rounded-md {
    border-radius: var(--radius-md);
  }

  .rounded-sm {
    border-radius: var(--radius-sm);
  }

  .rounded-xl {
    border-radius: var(--radius-xl);
  }

  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }

  .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-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }

  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }

  .border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .border-\(--border-subtle\) {
    border-color: var(--border-subtle);
  }

  .border-\[\#3f3f46\] {
    border-color: #3f3f46;
  }

  .border-gray-200 {
    border-color: var(--color-gray-200);
  }

  .border-pink-500\/50 {
    border-color: #f6339a80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-pink-500\/50 {
      border-color: color-mix(in oklab, var(--color-pink-500) 50%, transparent);
    }
  }

  .border-purple-400\/30 {
    border-color: #c07eff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-purple-400\/30 {
      border-color: color-mix(in oklab, var(--color-purple-400) 30%, transparent);
    }
  }

  .border-purple-500 {
    border-color: var(--color-purple-500);
  }

  .border-purple-500\/20 {
    border-color: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-purple-500\/20 {
      border-color: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
    }
  }

  .border-purple-500\/30 {
    border-color: #ac4bff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-purple-500\/30 {
      border-color: color-mix(in oklab, var(--color-purple-500) 30%, transparent);
    }
  }

  .border-purple-500\/50 {
    border-color: #ac4bff80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-purple-500\/50 {
      border-color: color-mix(in oklab, var(--color-purple-500) 50%, transparent);
    }
  }

  .border-red-500\/20 {
    border-color: #fb2c3633;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/20 {
      border-color: color-mix(in oklab, var(--color-red-500) 20%, transparent);
    }
  }

  .border-red-500\/30 {
    border-color: #fb2c364d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-500\/30 {
      border-color: color-mix(in oklab, var(--color-red-500) 30%, transparent);
    }
  }

  .border-white\/5 {
    border-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/5 {
      border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .border-white\/10 {
    border-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/10 {
      border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .border-white\/20 {
    border-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/20 {
      border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  .border-white\/30 {
    border-color: #ffffff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-white\/30 {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }

  .border-t-purple-400 {
    border-top-color: var(--color-purple-400);
  }

  .border-t-purple-500 {
    border-top-color: var(--color-purple-500);
  }

  .border-t-transparent {
    border-top-color: #0000;
  }

  .border-t-white {
    border-top-color: var(--color-white);
  }

  .bg-\[\#0a0a0c\] {
    background-color: #0a0a0c;
  }

  .bg-\[\#0d0d0d\] {
    background-color: #0d0d0d;
  }

  .bg-\[\#1f1f22\] {
    background-color: #1f1f22;
  }

  .bg-\[\#2a2a2a\] {
    background-color: #2a2a2a;
  }

  .bg-\[\#282a36\] {
    background-color: #282a36;
  }

  .bg-\[\#18181b\] {
    background-color: #18181b;
  }

  .bg-\[\#27272a\] {
    background-color: #27272a;
  }

  .bg-black {
    background-color: var(--color-black);
  }

  .bg-black\/40 {
    background-color: #0006;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/40 {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }

  .bg-black\/50 {
    background-color: #00000080;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/50 {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }

  .bg-black\/60 {
    background-color: #0009;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/60 {
      background-color: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
  }

  .bg-black\/70 {
    background-color: #000000b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-black\/70 {
      background-color: color-mix(in oklab, var(--color-black) 70%, transparent);
    }
  }

  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }

  .bg-gray-700 {
    background-color: var(--color-gray-700);
  }

  .bg-green-400 {
    background-color: var(--color-green-400);
  }

  .bg-green-500 {
    background-color: var(--color-green-500);
  }

  .bg-pink-500 {
    background-color: var(--color-pink-500);
  }

  .bg-pink-900\/20 {
    background-color: #86104333;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-pink-900\/20 {
      background-color: color-mix(in oklab, var(--color-pink-900) 20%, transparent);
    }
  }

  .bg-purple-400 {
    background-color: var(--color-purple-400);
  }

  .bg-purple-500 {
    background-color: var(--color-purple-500);
  }

  .bg-purple-500\/10 {
    background-color: #ac4bff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-500\/10 {
      background-color: color-mix(in oklab, var(--color-purple-500) 10%, transparent);
    }
  }

  .bg-purple-500\/15 {
    background-color: #ac4bff26;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-500\/15 {
      background-color: color-mix(in oklab, var(--color-purple-500) 15%, transparent);
    }
  }

  .bg-purple-500\/20 {
    background-color: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-500\/20 {
      background-color: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
    }
  }

  .bg-purple-500\/30 {
    background-color: #ac4bff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-500\/30 {
      background-color: color-mix(in oklab, var(--color-purple-500) 30%, transparent);
    }
  }

  .bg-purple-600\/20 {
    background-color: #9810fa33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-600\/20 {
      background-color: color-mix(in oklab, var(--color-purple-600) 20%, transparent);
    }
  }

  .bg-purple-900\/20 {
    background-color: #59168b33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-purple-900\/20 {
      background-color: color-mix(in oklab, var(--color-purple-900) 20%, transparent);
    }
  }

  .bg-red-500 {
    background-color: var(--color-red-500);
  }

  .bg-red-500\/10 {
    background-color: #fb2c361a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-500\/10 {
      background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
    }
  }

  .bg-red-500\/30 {
    background-color: #fb2c364d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-red-500\/30 {
      background-color: color-mix(in oklab, var(--color-red-500) 30%, transparent);
    }
  }

  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }

  .bg-transparent {
    background-color: #0000;
  }

  .bg-white {
    background-color: var(--color-white);
  }

  .bg-white\/5 {
    background-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/5 {
      background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
    }
  }

  .bg-white\/10 {
    background-color: #ffffff1a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/10 {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }

  .bg-white\/20 {
    background-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/20 {
      background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  .bg-white\/\[0\.04\] {
    background-color: #ffffff0a;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.04\] {
      background-color: color-mix(in oklab, var(--color-white) 4%, transparent);
    }
  }

  .bg-white\/\[0\.06\] {
    background-color: #ffffff0f;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-white\/\[0\.06\] {
      background-color: color-mix(in oklab, var(--color-white) 6%, transparent);
    }
  }

  .bg-gradient-to-b {
    --tw-gradient-position: to bottom in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .bg-gradient-to-tr {
    --tw-gradient-position: to top right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }

  .from-black {
    --tw-gradient-from: var(--color-black);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-black\/90 {
    --tw-gradient-from: #000000e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .from-black\/90 {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 90%, transparent);
    }
  }

  .from-black\/90 {
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-purple-400 {
    --tw-gradient-from: var(--color-purple-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-purple-500 {
    --tw-gradient-from: var(--color-purple-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-purple-600 {
    --tw-gradient-from: var(--color-purple-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-transparent {
    --tw-gradient-from: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .from-white {
    --tw-gradient-from: var(--color-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .via-black\/20 {
    --tw-gradient-via: #0003;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .via-black\/20 {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
  }

  .via-black\/20 {
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .via-pink-500 {
    --tw-gradient-via: var(--color-pink-500);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .via-purple-500\/20 {
    --tw-gradient-via: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .via-purple-500\/20 {
      --tw-gradient-via: color-mix(in oklab, var(--color-purple-500) 20%, transparent);
    }
  }

  .via-purple-500\/20 {
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .via-transparent {
    --tw-gradient-via: transparent;
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .via-white {
    --tw-gradient-via: var(--color-white);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }

  .to-blue-500 {
    --tw-gradient-to: var(--color-blue-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-gray-400 {
    --tw-gradient-to: var(--color-gray-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-pink-500 {
    --tw-gradient-to: var(--color-pink-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-purple-500 {
    --tw-gradient-to: var(--color-purple-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }

  .bg-clip-text {
    -webkit-background-clip: text;
    background-clip: text;
  }

  .object-contain {
    object-fit: contain;
  }

  .object-cover {
    object-fit: cover;
  }

  .p-0\.5 {
    padding: calc(var(--spacing) * .5);
  }

  .p-1 {
    padding: calc(var(--spacing) * 1);
  }

  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }

  .p-2 {
    padding: calc(var(--spacing) * 2);
  }

  .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);
  }

  .p-px {
    padding: 1px;
  }

  .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-3 {
    padding-inline: calc(var(--spacing) * 3);
  }

  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }

  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }

  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }

  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }

  .py-0\.5 {
    padding-block: calc(var(--spacing) * .5);
  }

  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }

  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }

  .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-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }

  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }

  .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-32 {
    padding-block: calc(var(--spacing) * 32);
  }

  .py-\[30px\] {
    padding-block: 30px;
  }

  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }

  .pt-0\.5 {
    padding-top: calc(var(--spacing) * .5);
  }

  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }

  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }

  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }

  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }

  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }

  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }

  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }

  .pt-28 {
    padding-top: calc(var(--spacing) * 28);
  }

  .pt-32 {
    padding-top: calc(var(--spacing) * 32);
  }

  .pr-1 {
    padding-right: calc(var(--spacing) * 1);
  }

  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }

  .pr-6 {
    padding-right: calc(var(--spacing) * 6);
  }

  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }

  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }

  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }

  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }

  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }

  .pb-\[80px\] {
    padding-bottom: 80px;
  }

  .pl-1 {
    padding-left: calc(var(--spacing) * 1);
  }

  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }

  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }

  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }

  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }

  .pl-12 {
    padding-left: calc(var(--spacing) * 12);
  }

  .text-center {
    text-align: center;
  }

  .text-left {
    text-align: left;
  }

  .text-right {
    text-align: right;
  }

  .font-mono {
    font-family: var(--font-mono);
  }

  .font-sans {
    font-family: var(--font-sans);
  }

  .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-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }

  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--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-\[9px\] {
    font-size: 9px;
  }

  .text-\[10px\] {
    font-size: 10px;
  }

  .text-\[11px\] {
    font-size: 11px;
  }

  .text-\[12px\] {
    font-size: 12px;
  }

  .text-\[13px\] {
    font-size: 13px;
  }

  .text-\[14px\] {
    font-size: 14px;
  }

  .text-\[15px\] {
    font-size: 15px;
  }

  .text-\[20px\] {
    font-size: 20px;
  }

  .text-\[28vw\] {
    font-size: 28vw;
  }

  .leading-\[0\.9\] {
    --tw-leading: .9;
    line-height: .9;
  }

  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }

  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }

  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }

  .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-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .tracking-tighter {
    --tw-tracking: var(--tracking-tighter);
    letter-spacing: var(--tracking-tighter);
  }

  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }

  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }

  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }

  .break-words {
    overflow-wrap: break-word;
  }

  .break-all {
    word-break: break-all;
  }

  .whitespace-nowrap {
    white-space: nowrap;
  }

  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }

  .text-\(--text-muted\) {
    color: var(--text-muted);
  }

  .text-\[\#9ca3af\] {
    color: #9ca3af;
  }

  .text-\[\#D946EF\] {
    color: #d946ef;
  }

  .text-\[\#a1a1aa\] {
    color: #a1a1aa;
  }

  .text-\[\#d4d4d8\] {
    color: #d4d4d8;
  }

  .text-\[\#e4e4e7\] {
    color: #e4e4e7;
  }

  .text-\[\#ef4444\] {
    color: #ef4444;
  }

  .text-amber-400 {
    color: var(--color-amber-400);
  }

  .text-black {
    color: var(--color-black);
  }

  .text-blue-400 {
    color: var(--color-blue-400);
  }

  .text-gray-300 {
    color: var(--color-gray-300);
  }

  .text-gray-400 {
    color: var(--color-gray-400);
  }

  .text-gray-500 {
    color: var(--color-gray-500);
  }

  .text-gray-600 {
    color: var(--color-gray-600);
  }

  .text-gray-700 {
    color: var(--color-gray-700);
  }

  .text-gray-900 {
    color: var(--color-gray-900);
  }

  .text-green-500 {
    color: var(--color-green-500);
  }

  .text-indigo-400 {
    color: var(--color-indigo-400);
  }

  .text-pink-400 {
    color: var(--color-pink-400);
  }

  .text-purple-400 {
    color: var(--color-purple-400);
  }

  .text-purple-500 {
    color: var(--color-purple-500);
  }

  .text-purple-600 {
    color: var(--color-purple-600);
  }

  .text-red-400 {
    color: var(--color-red-400);
  }

  .text-transparent {
    color: #0000;
  }

  .text-white {
    color: var(--color-white);
  }

  .text-white\/60 {
    color: #fff9;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-white\/60 {
      color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }

  .text-yellow-400 {
    color: var(--color-yellow-400);
  }

  .text-zinc-300 {
    color: var(--color-zinc-300);
  }

  .text-zinc-400 {
    color: var(--color-zinc-400);
  }

  .text-zinc-500 {
    color: var(--color-zinc-500);
  }

  .text-zinc-600 {
    color: var(--color-zinc-600);
  }

  .capitalize {
    text-transform: capitalize;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .underline {
    text-decoration-line: underline;
  }

  .decoration-zinc-700 {
    -webkit-text-decoration-color: var(--color-zinc-700);
    text-decoration-color: var(--color-zinc-700);
  }

  .underline-offset-2 {
    text-underline-offset: 2px;
  }

  .underline-offset-4 {
    text-underline-offset: 4px;
  }

  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .placeholder-gray-400::placeholder {
    color: var(--color-gray-400);
  }

  .placeholder-gray-500::placeholder {
    color: var(--color-gray-500);
  }

  .opacity-0 {
    opacity: 0;
  }

  .opacity-20 {
    opacity: .2;
  }

  .opacity-50 {
    opacity: .5;
  }

  .opacity-75 {
    opacity: .75;
  }

  .opacity-80 {
    opacity: .8;
  }

  .opacity-100 {
    opacity: 1;
  }

  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_15px_rgba\(255\,255\,255\,0\.1\)\] {
    --tw-shadow: 0 0 15px var(--tw-shadow-color, #ffffff1a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_30px_rgba\(168\,85\,247\,0\.2\)\] {
    --tw-shadow: 0 0 30px var(--tw-shadow-color, #a855f733);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_30px_rgba\(236\,72\,153\,0\.2\)\] {
    --tw-shadow: 0 0 30px var(--tw-shadow-color, #ec489933);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_0_60px_rgba\(168\,85\,247\,0\.15\)\] {
    --tw-shadow: 0 0 60px var(--tw-shadow-color, #a855f726);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-purple-500\/20 {
    --tw-shadow-color: #ac4bff33;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-purple-500\/20 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-purple-500) 20%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-white {
    --tw-shadow-color: #fff;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-white {
      --tw-shadow-color: color-mix(in oklab, var(--color-white) var(--tw-shadow-alpha), transparent);
    }
  }

  .shadow-white\/5 {
    --tw-shadow-color: #ffffff0d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .shadow-white\/5 {
      --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-white) 5%, transparent) var(--tw-shadow-alpha), transparent);
    }
  }

  .ring-purple-500 {
    --tw-ring-color: var(--color-purple-500);
  }

  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }

  .blur {
    --tw-blur: blur(8px);
    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-\[120px\] {
    --tw-blur: blur(120px);
    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-xl {
    --tw-drop-shadow-size: drop-shadow(0 9px 7px var(--tw-drop-shadow-color, #0000001a));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-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, );
  }

  .filter {
    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-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, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -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-xl {
    --tw-backdrop-blur: blur(var(--blur-xl));
    -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, 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-\[width\] {
    transition-property: width;
    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-opacity {
    transition-property: opacity;
    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));
  }

  .delay-100 {
    transition-delay: .1s;
  }

  .delay-200 {
    transition-delay: .2s;
  }

  .duration-200 {
    --tw-duration: .2s;
    transition-duration: .2s;
  }

  .duration-300 {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .duration-400 {
    --tw-duration: .4s;
    transition-duration: .4s;
  }

  .duration-500 {
    --tw-duration: .5s;
    transition-duration: .5s;
  }

  .duration-700 {
    --tw-duration: .7s;
    transition-duration: .7s;
  }

  .duration-\[2s\] {
    --tw-duration: 2s;
    transition-duration: 2s;
  }

  .ease-\[cubic-bezier\(0\.4\,0\,0\.2\,1\)\] {
    --tw-ease: cubic-bezier(.4,0,.2,1);
    transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  }

  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }

  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }

  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }

  .group-open\:rotate-180:is(:where(.group):is([open], :popover-open, :open) *) {
    rotate: 180deg;
  }

  .group-focus-within\:opacity-80:is(:where(.group):focus-within *) {
    opacity: .8;
  }

  @media (hover: hover) {
    .group-hover\:-translate-x-1:is(:where(.group):hover *) {
      --tw-translate-x: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:translate-x-1:is(:where(.group):hover *) {
      --tw-translate-x: calc(var(--spacing) * 1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:translate-y-full:is(:where(.group):hover *) {
      --tw-translate-y: 100%;
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:scale-110:is(:where(.group):hover *) {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .group-hover\:rotate-3:is(:where(.group):hover *) {
      rotate: 3deg;
    }
  }

  @media (hover: hover) {
    .group-hover\:rotate-90:is(:where(.group):hover *) {
      rotate: 90deg;
    }
  }

  @media (hover: hover) {
    .group-hover\:border-white\/30:is(:where(.group):hover *) {
      border-color: #ffffff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:border-white\/30:is(:where(.group):hover *) {
        border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:bg-white\/5:is(:where(.group):hover *) {
      background-color: #ffffff0d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:bg-white\/5:is(:where(.group):hover *) {
        background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .group-hover\:text-\(--text-main\):is(:where(.group):hover *) {
      color: var(--text-main);
    }
  }

  @media (hover: hover) {
    .group-hover\:text-purple-400:is(:where(.group):hover *) {
      color: var(--color-purple-400);
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-40:is(:where(.group):hover *) {
      opacity: .4;
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-60:is(:where(.group):hover *) {
      opacity: .6;
    }
  }

  @media (hover: hover) {
    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 1;
    }
  }

  @media (hover: hover) {
    .group-hover\/agent\:scale-110:is(:where(.group\/agent):hover *) {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .group-hover\/btn\:translate-x-1:is(:where(.group\/btn):hover *) {
      --tw-translate-x: calc(var(--spacing) * 1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  .selection\:bg-purple-500\/30 ::selection {
    background-color: #ac4bff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .selection\:bg-purple-500\/30 ::selection {
      background-color: color-mix(in oklab, var(--color-purple-500) 30%, transparent);
    }
  }

  .selection\:bg-purple-500\/30::selection {
    background-color: #ac4bff4d;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .selection\:bg-purple-500\/30::selection {
      background-color: color-mix(in oklab, var(--color-purple-500) 30%, transparent);
    }
  }

  .focus-within\:ring-1:focus-within {
    --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);
  }

  .focus-within\:ring-white\/20:focus-within {
    --tw-ring-color: #fff3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .focus-within\:ring-white\/20:focus-within {
      --tw-ring-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }

  @media (hover: hover) {
    .hover\:scale-105:hover {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  @media (hover: hover) {
    .hover\:border-purple-500\/30:hover {
      border-color: #ac4bff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-purple-500\/30:hover {
        border-color: color-mix(in oklab, var(--color-purple-500) 30%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:border-purple-500\/50:hover {
      border-color: #ac4bff80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-purple-500\/50:hover {
        border-color: color-mix(in oklab, var(--color-purple-500) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:border-white\/20:hover {
      border-color: #fff3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:border-white\/20:hover {
        border-color: color-mix(in oklab, var(--color-white) 20%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-\(--bg-hover\):hover {
      background-color: var(--bg-hover);
    }
  }

  @media (hover: hover) {
    .hover\:bg-\[\#2F2F2F\]:hover {
      background-color: #2f2f2f;
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-200:hover {
      background-color: var(--color-gray-200);
    }
  }

  @media (hover: hover) {
    .hover\:bg-gray-800:hover {
      background-color: var(--color-gray-800);
    }
  }

  @media (hover: hover) {
    .hover\:bg-purple-500\/50:hover {
      background-color: #ac4bff80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-purple-500\/50:hover {
        background-color: color-mix(in oklab, var(--color-purple-500) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-500\/10:hover {
      background-color: #fb2c361a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-500\/10:hover {
        background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-500\/50:hover {
      background-color: #fb2c3680;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-red-500\/50:hover {
        background-color: color-mix(in oklab, var(--color-red-500) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-red-600:hover {
      background-color: var(--color-red-600);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:bg-white\/5:hover {
      background-color: #ffffff0d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/5:hover {
        background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-white\/10:hover {
      background-color: #ffffff1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/10:hover {
        background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:bg-white\/30:hover {
      background-color: #ffffff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/30:hover {
        background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:text-\(--text-main\):hover {
      color: var(--text-main);
    }
  }

  @media (hover: hover) {
    .hover\:text-black:hover {
      color: var(--color-black);
    }
  }

  @media (hover: hover) {
    .hover\:text-gray-900:hover {
      color: var(--color-gray-900);
    }
  }

  @media (hover: hover) {
    .hover\:text-indigo-300:hover {
      color: var(--color-indigo-300);
    }
  }

  @media (hover: hover) {
    .hover\:text-red-400:hover {
      color: var(--color-red-400);
    }
  }

  @media (hover: hover) {
    .hover\:text-white:hover {
      color: var(--color-white);
    }
  }

  @media (hover: hover) {
    .hover\:text-zinc-400:hover {
      color: var(--color-zinc-400);
    }
  }

  @media (hover: hover) {
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-80:hover {
      opacity: .8;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-90:hover {
      opacity: .9;
    }
  }

  @media (hover: hover) {
    .hover\:opacity-100:hover {
      opacity: 1;
    }
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .active\:scale-\[0\.98\]:active {
    scale: .98;
  }

  @media (min-width: 40rem) {
    .sm\:visible {
      visibility: visible;
    }
  }

  @media (min-width: 40rem) {
    .sm\:bottom-16 {
      bottom: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 40rem) {
    .sm\:left-64 {
      left: calc(var(--spacing) * 64);
    }
  }

  @media (min-width: 40rem) {
    .sm\:mt-4 {
      margin-top: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 40rem) {
    .sm\:mb-0 {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 40rem) {
    .sm\:mb-16 {
      margin-bottom: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 40rem) {
    .sm\:ml-2 {
      margin-left: calc(var(--spacing) * 2);
    }
  }

  @media (min-width: 40rem) {
    .sm\:hidden {
      display: none;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline {
      display: inline;
    }
  }

  @media (min-width: 40rem) {
    .sm\:inline-flex {
      display: inline-flex;
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-48 {
      width: calc(var(--spacing) * 48);
    }
  }

  @media (min-width: 40rem) {
    .sm\:w-auto {
      width: auto;
    }
  }

  @media (min-width: 40rem) {
    .sm\:max-w-\[70\%\] {
      max-width: 70%;
    }
  }

  @media (min-width: 40rem) {
    .sm\:-translate-x-2 {
      --tw-translate-x: calc(var(--spacing) * -2);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 40rem) {
    .sm\:translate-x-0 {
      --tw-translate-x: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 40rem) {
    .sm\:translate-y-0 {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 40rem) {
    .sm\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 40rem) {
    .sm\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-6 {
      gap: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-x-6 {
      column-gap: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:gap-y-3 {
      row-gap: calc(var(--spacing) * 3);
    }
  }

  @media (min-width: 40rem) {
    .sm\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 40rem) {
    .sm\:pt-8 {
      padding-top: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 40rem) {
    .sm\:pt-16 {
      padding-top: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-xs {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }

  @media (min-width: 40rem) {
    .sm\:text-\[24vw\] {
      font-size: 24vw;
    }
  }

  @media (min-width: 40rem) {
    .sm\:opacity-100 {
      opacity: 1;
    }
  }

  @media (min-width: 48rem) {
    .md\:relative {
      position: relative;
    }
  }

  @media (min-width: 48rem) {
    .md\:z-50 {
      z-index: 50;
    }
  }

  @media (min-width: 48rem) {
    .md\:order-1 {
      order: 1;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-1 {
      grid-column: span 1 / span 1;
    }
  }

  @media (min-width: 48rem) {
    .md\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 48rem) {
    .md\:mt-0 {
      margin-top: calc(var(--spacing) * 0);
    }
  }

  @media (min-width: 48rem) {
    .md\:mb-8 {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 48rem) {
    .md\:mb-12 {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }

  @media (min-width: 48rem) {
    .md\:mb-20 {
      margin-bottom: calc(var(--spacing) * 20);
    }
  }

  @media (min-width: 48rem) {
    .md\:mb-24 {
      margin-bottom: calc(var(--spacing) * 24);
    }
  }

  @media (min-width: 48rem) {
    .md\:block {
      display: block;
    }
  }

  @media (min-width: 48rem) {
    .md\:flex {
      display: flex;
    }
  }

  @media (min-width: 48rem) {
    .md\:hidden {
      display: none;
    }
  }

  @media (min-width: 48rem) {
    .md\:h-\[400px\] {
      height: 400px;
    }
  }

  @media (min-width: 48rem) {
    .md\:h-\[500px\] {
      height: 500px;
    }
  }

  @media (min-width: 48rem) {
    .md\:w-40 {
      width: calc(var(--spacing) * 40);
    }
  }

  @media (min-width: 48rem) {
    .md\:w-\[80px\] {
      width: 80px;
    }
  }

  @media (min-width: 48rem) {
    .md\:w-\[280px\] {
      width: 280px;
    }
  }

  @media (min-width: 48rem) {
    .md\:w-auto {
      width: auto;
    }
  }

  @media (min-width: 48rem) {
    .md\:translate-x-0 {
      --tw-translate-x: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }

  @media (min-width: 48rem) {
    .md\:columns-3 {
      columns: 3;
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 48rem) {
    .md\:flex-row {
      flex-direction: row;
    }
  }

  @media (min-width: 48rem) {
    .md\:items-center {
      align-items: center;
    }
  }

  @media (min-width: 48rem) {
    .md\:items-end {
      align-items: flex-end;
    }
  }

  @media (min-width: 48rem) {
    .md\:gap-4 {
      gap: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 48rem) {
    .md\:gap-8 {
      gap: calc(var(--spacing) * 8);
    }
  }

  @media (min-width: 48rem) {
    .md\:gap-24 {
      gap: calc(var(--spacing) * 24);
    }
  }

  @media (min-width: 48rem) {
    .md\:p-4 {
      padding: calc(var(--spacing) * 4);
    }
  }

  @media (min-width: 48rem) {
    .md\:p-6 {
      padding: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 48rem) {
    .md\:px-5 {
      padding-inline: calc(var(--spacing) * 5);
    }
  }

  @media (min-width: 48rem) {
    .md\:px-6 {
      padding-inline: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 48rem) {
    .md\:py-2\.5 {
      padding-block: calc(var(--spacing) * 2.5);
    }
  }

  @media (min-width: 48rem) {
    .md\:pt-32 {
      padding-top: calc(var(--spacing) * 32);
    }
  }

  @media (min-width: 48rem) {
    .md\:text-left {
      text-align: left;
    }
  }

  @media (min-width: 48rem) {
    .md\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-4xl {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-5xl {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-6xl {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-8xl {
      font-size: var(--text-8xl);
      line-height: var(--tw-leading, var(--text-8xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-xl {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }

  @media (min-width: 48rem) {
    .md\:text-\[21vw\] {
      font-size: 21vw;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-3 {
      grid-column: span 3 / span 3;
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-9 {
      grid-column: span 9 / span 9;
    }
  }

  @media (min-width: 64rem) {
    .lg\:block {
      display: block;
    }
  }

  @media (min-width: 64rem) {
    .lg\:hidden {
      display: none;
    }
  }

  @media (min-width: 64rem) {
    .lg\:columns-4 {
      columns: 4;
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-5 {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:grid-cols-12 {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-6 {
      gap: calc(var(--spacing) * 6);
    }
  }

  @media (min-width: 64rem) {
    .lg\:gap-16 {
      gap: calc(var(--spacing) * 16);
    }
  }

  @media (min-width: 64rem) {
    .lg\:px-12 {
      padding-inline: calc(var(--spacing) * 12);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:border-white\/10 {
      border-color: #ffffff1a;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dark\:border-white\/10 {
        border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-black {
      background-color: var(--color-black);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:bg-white {
      background-color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-black {
      color: var(--color-black);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-300 {
      color: var(--color-gray-300);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-400 {
      color: var(--color-gray-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-gray-500 {
      color: var(--color-gray-500);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-purple-400 {
      color: var(--color-purple-400);
    }
  }

  @media (prefers-color-scheme: dark) {
    .dark\:text-white {
      color: var(--color-white);
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-gray-200:hover {
        background-color: var(--color-gray-200);
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:bg-white\/5:hover {
        background-color: #ffffff0d;
      }

      @supports (color: color-mix(in lab, red, red)) {
        .dark\:hover\:bg-white\/5:hover {
          background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
        }
      }
    }
  }

  @media (prefers-color-scheme: dark) {
    @media (hover: hover) {
      .dark\:hover\:text-white:hover {
        color: var(--color-white);
      }
    }
  }

  .\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar {
    display: none;
  }
}

:root {
  --torki-nav-height: 64px;
  --torki-nav-max-width: 1280px;
  --torki-nav-padding: 0 32px;
  --torki-nav-bg: transparent;
  --torki-nav-bg-scrolled: #000000d1;
  --torki-nav-border-scrolled: #ffffff0f;
  --torki-nav-link-color: #ffffff8c;
  --torki-nav-link-hover: #fffffff2;
  --torki-nav-link-hover-bg: #ffffff0a;
  --torki-dropdown-bg: #0c0c0c;
  --torki-dropdown-border: #ffffff12;
  --torki-dropdown-shadow: 0 20px 60px #0000008c,
    0 0 0 1px #ffffff08 inset;
  --torki-dropdown-item-hover: #ffffff09;
  --torki-dropdown-section-title: #ffffff40;
  --torki-dropdown-item-name: #ffffffeb;
  --torki-dropdown-item-desc: #ffffff52;
  --torki-cta-border: #ffffff2e;
  --torki-cta-border-hover: #ffffff52;
  --torki-cta-bg-hover: #ffffff12;
  --torki-icon-color: #ffffffd9;
  --torki-icon-bg: #ffffff14;
  --torki-icon-bg-hover: #ffffff1f;
}

.light-mode {
  --torki-nav-bg-scrolled: #ffffffd1;
  --torki-nav-border-scrolled: #0000000f;
  --torki-nav-link-color: #0000008c;
  --torki-nav-link-hover: #000000f2;
  --torki-nav-link-hover-bg: #0000000a;
  --torki-dropdown-bg: #fff;
  --torki-dropdown-border: #00000014;
  --torki-dropdown-shadow: 0 20px 60px #00000026,
    0 0 0 1px #0000000d inset;
  --torki-dropdown-item-hover: #00000008;
  --torki-dropdown-section-title: #00000059;
  --torki-dropdown-item-name: #000000e6;
  --torki-dropdown-item-desc: #00000073;
  --torki-cta-border: #0000002e;
  --torki-cta-border-hover: #00000052;
  --torki-cta-bg-hover: #0000000d;
  --torki-icon-color: #000000d9;
  --torki-icon-bg: #0000000f;
  --torki-icon-bg-hover: #0000001a;
}

.light-mode .torki-navbar__cta {
  color: #1a1a1a;
}

.light-mode .torki-navbar__cta:hover {
  color: #7c3aed;
  background: #7c3aed1a;
  border-color: #7c3aed66;
}

.light-mode .torki-nav-link--active {
  color: #000000d9;
}

.light-mode .torki-navbar__divider {
  background: #0000001a;
}

.light-mode .torki-navbar__hamburger-line {
  background: #000000b3;
}

.light-mode .torki-mobile-menu {
  background: #fff;
}

.light-mode .torki-mobile-menu__section-title {
  color: #0006;
}

.light-mode .torki-mobile-menu__product-link {
  border-bottom-color: #0000000f;
}

.light-mode .torki-mobile-menu__product-name {
  color: #000000d9;
}

.light-mode .torki-mobile-menu__link {
  color: #000000e6;
  border-bottom-color: #0000000f;
}

.light-mode .torki-mobile-menu__link-external {
  opacity: .5;
}

.light-mode .torki-mobile-menu__cta {
  color: #1a1a1a;
  border-color: #0003;
}

.light-mode .torki-mobile-menu__cta:hover {
  color: #7c3aed;
  background: #7c3aed14;
  border-color: #7c3aed4d;
}

.light-mode .torki-dropdown__footer {
  background: #00000005;
  border-top-color: #0000000f;
}

.light-mode .torki-dropdown__footer-link {
  color: #00000080;
}

.light-mode .torki-dropdown__footer-link:hover {
  color: #000000d9;
}

.light-mode .torki-dropdown__product-arrow, .light-mode .torki-dropdown__company-arrow {
  color: #00000040;
}

.light-mode .torki-dropdown__featured {
  background: linear-gradient(135deg, #7c3aed0f, #a855f708);
  border-color: #7c3aed26;
}

.light-mode .torki-dropdown__featured:hover {
  background: linear-gradient(135deg, #7c3aed1a, #a855f70f);
  border-color: #7c3aed40;
}

.light-mode .torki-dropdown__featured-text {
  color: #000c;
}

.torki-navbar {
  height: var(--torki-nav-height);
  z-index: 1000;
  background: var(--torki-nav-bg);
  border-bottom: 1px solid #0000;
  transition: background .35s cubic-bezier(.4, 0, .2, 1), border-color .35s cubic-bezier(.4, 0, .2, 1), -webkit-backdrop-filter .35s cubic-bezier(.4, 0, .2, 1), backdrop-filter .35s cubic-bezier(.4, 0, .2, 1);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}

.torki-navbar.torki-navbar--scrolled {
  background: var(--torki-nav-bg-scrolled);
  -webkit-backdrop-filter: blur(24px) saturate(1.2);
  border-bottom-color: var(--torki-nav-border-scrolled);
}

.torki-navbar__container {
  max-width: var(--torki-nav-max-width);
  padding: var(--torki-nav-padding);
  justify-content: space-between;
  align-items: center;
  height: 100%;
  margin: 0 auto;
  display: flex;
}

.torki-navbar__logo {
  flex-shrink: 0;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  display: flex;
}

.torki-navbar__logo-icon {
  object-fit: cover;
  border-radius: 8px;
  width: 30px;
  height: 30px;
  box-shadow: 0 2px 12px #7c3aed40;
}

.torki-navbar__logo-text {
  letter-spacing: -.025em;
  color: var(--torki-dropdown-item-name);
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 17px;
  font-weight: 600;
}

.torki-navbar__center {
  align-items: center;
  gap: 4px;
  display: flex;
}

.torki-nav-link {
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 13px;
  font-weight: 450;
  text-decoration: none;
  transition: color .15s, background .12s;
  display: flex;
  position: relative;
}

.torki-nav-link:hover, .torki-nav-link--active {
  color: var(--torki-nav-link-hover);
  background: var(--torki-nav-link-hover-bg);
}

.torki-nav-link--active {
  color: #ffffffd9;
}

.torki-nav-link__chevron {
  opacity: .5;
  width: 12px;
  height: 12px;
  transition: transform .2s, opacity .15s;
}

.torki-nav-link:hover .torki-nav-link__chevron, .torki-nav-link[aria-expanded="true"] .torki-nav-link__chevron {
  opacity: .8;
}

.torki-nav-link[aria-expanded="true"] .torki-nav-link__chevron {
  transform: rotate(180deg);
}

.torki-nav-link__external {
  opacity: .4;
  width: 11px;
  height: 11px;
  margin-left: 2px;
}

.torki-navbar__divider {
  background: #ffffff1a;
  width: 1px;
  height: 16px;
  margin: 0 8px;
}

.torki-navbar__right {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
}

.torki-navbar__signin {
  color: var(--torki-nav-link-color);
  border-radius: 8px;
  padding: 8px 12px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 13px;
  font-weight: 450;
  text-decoration: none;
  transition: color .15s, background .12s;
}

.torki-navbar__signin:hover {
  color: var(--torki-nav-link-hover);
  background: var(--torki-nav-link-hover-bg);
}

.torki-navbar__cta {
  color: #fff;
  border: 1px solid var(--torki-cta-border);
  background: none;
  border-radius: 8px;
  padding: 8px 16px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: border-color .15s, background .12s;
}

.torki-navbar__cta:hover {
  border-color: var(--torki-cta-border-hover);
  background: var(--torki-cta-bg-hover);
}

.torki-dropdown {
  background: var(--torki-dropdown-bg);
  border: 1px solid var(--torki-dropdown-border);
  box-shadow: var(--torki-dropdown-shadow);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 1001;
  border-radius: 14px;
  transition: opacity .22s cubic-bezier(.16, 1, .3, 1), transform .22s cubic-bezier(.16, 1, .3, 1), visibility .22s;
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%)translateY(-6px)scale(.98);
}

.torki-dropdown--visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%)translateY(0)scale(1);
}

.torki-dropdown__section-title {
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--torki-dropdown-section-title);
  padding: 16px 16px 10px;
  font-family: JetBrains Mono, monospace;
  font-size: 10.5px;
  font-weight: 500;
}

.torki-dropdown--company {
  width: 210px;
}

.torki-dropdown__company-list {
  padding: 8px;
}

.torki-dropdown__company-item {
  border-radius: 8px;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  text-decoration: none;
  transition: background .12s;
  display: flex;
}

.torki-dropdown__company-item:hover {
  background: var(--torki-dropdown-item-hover);
}

.torki-dropdown__company-content {
  flex: 1;
}

.torki-dropdown__company-name {
  color: var(--torki-dropdown-item-name);
  margin-bottom: 1px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 13px;
  font-weight: 500;
}

.torki-dropdown__company-desc {
  color: var(--torki-dropdown-item-desc);
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 10.5px;
  font-weight: 400;
}

.torki-dropdown__company-arrow {
  color: #ffffff40;
  opacity: 0;
  width: 14px;
  height: 14px;
  transition: opacity .15s, transform .15s;
  transform: translateX(-6px);
}

.torki-dropdown__company-item:hover .torki-dropdown__company-arrow {
  opacity: 1;
  transform: translateX(0);
}

.torki-navbar__hamburger {
  cursor: pointer;
  background: none;
  border: none;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding: 0;
  display: none;
  position: relative;
}

.torki-navbar__hamburger-line {
  background: #ffffffb3;
  width: 20px;
  height: 1.5px;
  transition: transform .3s, opacity .3s;
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.torki-navbar__hamburger-line:first-child {
  top: 13px;
}

.torki-navbar__hamburger-line:nth-child(2) {
  top: 19px;
}

.torki-navbar__hamburger-line:nth-child(3) {
  top: 25px;
}

.torki-navbar__hamburger--open .torki-navbar__hamburger-line:first-child {
  top: 19px;
  transform: translateX(-50%)rotate(45deg);
}

.torki-navbar__hamburger--open .torki-navbar__hamburger-line:nth-child(2) {
  opacity: 0;
}

.torki-navbar__hamburger--open .torki-navbar__hamburger-line:nth-child(3) {
  top: 19px;
  transform: translateX(-50%)rotate(-45deg);
}

.torki-mobile-menu {
  top: var(--torki-nav-height);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  background: #000;
  padding: 24px 24px 100px;
  transition: opacity .3s, transform .3s, visibility .3s;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: auto;
  transform: translateY(-10px);
}

.torki-mobile-menu--open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.torki-mobile-menu__section {
  margin-bottom: 32px;
}

.torki-mobile-menu__section-title {
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #ffffff4d;
  margin-bottom: 16px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 500;
}

.torki-mobile-menu__product-link {
  border-bottom: 1px solid #ffffff0d;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  text-decoration: none;
  display: flex;
}

.torki-mobile-menu__product-link:last-child {
  border-bottom: none;
}

.torki-mobile-menu__product-icon {
  border-radius: 9px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.torki-mobile-menu__product-name {
  color: #ffffffd9;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 15px;
  font-weight: 450;
}

.torki-mobile-menu__link {
  color: #ffffffe6;
  border-bottom: 1px solid #ffffff0d;
  align-items: center;
  gap: 8px;
  padding: 14px 0;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 22px;
  font-weight: 500;
  text-decoration: none;
  display: flex;
}

.torki-mobile-menu__link:last-child {
  border-bottom: none;
}

.torki-mobile-menu__link-external {
  opacity: .4;
  width: 16px;
  height: 16px;
}

.torki-mobile-menu__cta {
  text-align: center;
  color: #fff;
  background: none;
  border: 1px solid #fff3;
  border-radius: 12px;
  width: 100%;
  margin-top: 32px;
  padding: 16px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: background .15s, border-color .15s;
  display: block;
}

.torki-mobile-menu__cta:hover {
  background: #ffffff0d;
  border-color: #ffffff4d;
}

.torki-nav-dropdown-wrapper {
  position: relative;
}

@media (max-width: 860px) {
  .torki-navbar__center, .torki-navbar__divider, .torki-navbar__signin, .torki-navbar__cta {
    display: none;
  }

  .torki-navbar__hamburger {
    display: flex;
  }

  .torki-navbar__container {
    padding: 0 20px;
  }
}

@media (max-width: 480px) {
  .torki-navbar__container {
    padding: 0 16px;
  }

  .torki-mobile-menu {
    padding: 20px 16px 100px;
  }
}

.landing-input-area {
  pointer-events: none;
  position: fixed;
  bottom: 50%;
  left: 0;
  right: 0;
  transform: translateY(50%);
}

.landing-input-area > div {
  pointer-events: auto;
}

.landing-quick-actions {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 720px;
  margin-top: 20px;
  margin-bottom: 12px;
  padding: 0;
  display: flex;
}

.landing-quick-btn {
  color: #a1a1aa;
  cursor: pointer;
  white-space: nowrap;
  background-color: #0000;
  border: 1px solid #3f3f46;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .25s;
  display: inline-flex;
}

.landing-quick-btn i {
  font-size: 16px;
}

.landing-quick-btn:hover {
  color: #fff;
  background-color: #ffffff0d;
  border-color: #52525b;
}

.landing-quick-btn:active {
  transform: scale(.97);
}

.light-mode .landing-quick-btn {
  color: #52525b;
  background-color: #0000;
  border-color: #d4d4d8;
}

.light-mode .landing-quick-btn:hover {
  color: #18181b;
  background-color: #0000000d;
  border-color: #a1a1aa;
}

@media (max-width: 640px) {
  .landing-quick-actions {
    gap: 6px;
  }

  .landing-quick-btn {
    padding: 8px 12px;
    font-size: 13px;
  }

  .landing-quick-btn i {
    font-size: 14px;
  }
}

@keyframes scaleIn {
  from {
    opacity: 0;
    transform: scale(.95);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

:root {
  --products-bg: #000;
  --products-text-primary: #fff;
  --products-text-secondary: #ffffff73;
  --products-text-muted: #ffffff40;
  --products-border-section: #ffffff2b;
  --products-border-card: #ffffff0f;
  --products-accent: #7c3aed;
  --products-cta-border: #fff3;
}

.products-section-label {
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--products-text-muted);
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.products-headline {
  letter-spacing: -.02em;
  color: var(--products-text-primary);
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 600;
  line-height: 1.1;
}

.products-headline-light {
  color: #ffffff59;
  font-weight: 400;
}

.products-body {
  color: var(--products-text-secondary);
  max-width: 480px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}

.products-mono {
  font-family: JetBrains Mono, monospace;
}

.products-section {
  border-top: 1px solid var(--products-border-section);
  margin: 0 auto;
  padding: 120px 40px;
}

.products-section:first-of-type {
  border-top: none;
}

.products-two-col {
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 80px;
  display: grid;
}

.products-two-col--reverse {
  direction: rtl;
}

.products-two-col--reverse > * {
  direction: ltr;
}

@media (max-width: 900px) {
  .products-section {
    padding: 80px 20px;
  }

  .products-two-col, .products-two-col--reverse {
    direction: ltr;
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

.products-cta {
  border: 1px solid var(--products-cta-border);
  color: #ffffffb3;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: none;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.products-cta:hover {
  color: #fff;
  background: #ffffff0d;
  border-color: #ffffff59;
}

.products-cta--filled {
  color: #000;
  background: #fff;
  border-color: #fff;
}

.products-cta--filled:hover {
  color: #000;
  background: #ffffffe6;
  border-color: #ffffffe6;
}

.products-features {
  margin: 28px 0 32px;
  padding: 0;
  list-style: none;
}

.products-features li {
  color: #ffffff59;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  font-size: 13px;
  display: flex;
}

.products-features li:before {
  content: "";
  background: #7c3aed80;
  border-radius: 50%;
  flex-shrink: 0;
  width: 4px;
  height: 4px;
}

.products-reveal {
  opacity: 0;
  transition: opacity .8s ease-out, transform .8s ease-out;
  transform: translateY(30px);
}

.products-reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.products-hero {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 93vh;
  padding: 80px 20px 60px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.products-hero-wordmark {
  letter-spacing: -.04em;
  color: #000;
  -webkit-text-stroke: 2px #fff3;
  text-stroke: 2px #fff3;
  text-align: center;
  -webkit-user-select: none;
  user-select: none;
  z-index: 1;
  cursor: pointer;
  font-size: clamp(180px, 32vw, 500px);
  font-weight: 800;
  line-height: .85;
  transition: -webkit-text-stroke .3s, text-shadow .3s;
  position: absolute;
  bottom: 8%;
  left: 50%;
  transform: translateX(-50%);
}

.products-hero-wordmark:hover {
  -webkit-text-stroke: 2px #ffffff80;
  text-stroke: 2px #ffffff80;
  text-shadow: 0 0 30px #ffffff26;
}

.products-hero-input-wrapper {
  z-index: 10;
  width: 90%;
  max-width: 900px;
  margin-bottom: 270px;
  padding: 0 20px;
  position: relative;
}

.products-hero-input-glow {
  display: none;
}

.products-hero-input-inner {
  background: #000;
  border: 1px solid #ffffff1a;
  border-radius: 26px;
  padding: 12px 16px;
  transition: border-color .3s;
  position: relative;
}

.products-hero-input-wrapper:hover .products-hero-input-inner {
  border-color: #fff6;
}

.products-hero-input-wrapper:focus-within .products-hero-input-inner {
  border-color: #fff9;
}

.products-hero-input-row {
  align-items: center;
  gap: 8px;
  display: flex;
}

.products-hero-input-inner input {
  color: #fff;
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: 12px 8px;
  font-size: 18px;
}

.products-hero-input-inner input::placeholder {
  color: #ffffff59;
}

.products-hero-send-btn {
  cursor: pointer;
  background: #ffffff1a;
  border: none;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  transition: all .2s;
  display: flex;
}

.products-hero-send-btn:hover {
  background: #fff;
}

.products-hero-send-btn svg {
  stroke: #fff;
  width: 20px;
  height: 20px;
  transition: stroke .2s;
}

.products-hero-send-btn:hover svg {
  stroke: #000;
}

.products-hero-chips {
  border-top: 1px solid #ffffff0d;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
  display: flex;
}

.products-hero-chip {
  color: #ffffff80;
  cursor: pointer;
  background: #ffffff0d;
  border: none;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.products-hero-chip:hover {
  color: #fff;
  background: #ffffff1a;
}

.products-hero-chip svg {
  width: 14px;
  height: 14px;
}

.products-hero-scroll {
  color: #ffffff4d;
  animation: 2s ease-in-out infinite products-bounce;
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
}

@keyframes products-bounce {
  0%, 100% {
    transform: translateX(-50%)translateY(0);
  }

  50% {
    transform: translateX(-50%)translateY(6px);
  }
}

@media (max-width: 768px) {
  .products-hero {
    padding: 100px 16px 80px;
  }

  .products-hero-wordmark {
    -webkit-text-stroke: 1.5px #ffffff26;
    text-stroke: 1.5px #ffffff26;
    font-size: clamp(80px, 22vw, 180px);
    bottom: 12%;
  }

  .products-hero-input-wrapper {
    width: 95%;
    max-width: 100%;
    margin-bottom: 120px;
  }

  .products-hero-chip span {
    display: none;
  }

  .products-hero-chip {
    padding: 8px 12px;
  }
}

.products-mockup {
  border: 1px solid var(--products-border-card);
  background: #ffffff08;
  border-radius: 16px;
  max-width: 550px;
  overflow: hidden;
}

.products-mockup--chat {
  box-shadow: 0 20px 80px #7c3aed14;
}

.products-mockup--voice {
  box-shadow: 0 20px 80px #f973160f;
}

.products-mockup--canvas {
  box-shadow: 0 20px 80px #34d3990f;
}

.products-mockup--agents {
  box-shadow: 0 20px 80px #a855f714;
}

.products-mockup-header {
  -webkit-backdrop-filter: blur(20px);
  z-index: 50;
  white-space: nowrap;
  border-bottom: 1px solid #ffffff14;
  border-top-left-radius: 24px;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  height: 70px;
  padding: 0 16px;
  display: flex;
  overflow: hidden;
  background: #000000f2 !important;
}

.canvas-header-left {
  flex: 1;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin-right: 8px;
  display: flex;
  overflow: hidden;
}

.canvas-header-actions {
  flex-wrap: nowrap;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  display: flex;
}

.canvas-icon-btn {
  color: #a1a1aa;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  transition: all .2s;
  display: flex;
}

.canvas-icon-btn:hover {
  color: #d8b4fe;
  background-color: #8b5cf626;
}

.canvas-divider {
  background-color: #ffffff1a;
  width: 1px;
  height: 20px;
  margin: 0 2px;
}

.canvas-toggle-group {
  background: #000;
  border: 1px solid #ffffff26;
  border-radius: 999px;
  align-items: center;
  height: 30px;
  padding: 3px;
  display: flex;
}

.canvas-toggle-btn.active {
  color: #000;
  background: #fff;
  font-weight: 600;
  box-shadow: 0 1px 6px #0000004d;
}

.canvas-toggle-btn {
  color: #71717a;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 999px;
  align-items: center;
  height: 100%;
  padding: 0 16px;
  font-family: Inter, sans-serif;
  font-size: 10px;
  font-weight: 500;
  transition: all .2s cubic-bezier(.2, 0, 0, 1);
  display: flex;
}

.products-mockup-title {
  color: #fff9;
  font-size: 12px;
  font-weight: 500;
}

.canvas-title-input {
  color: #fff;
  text-overflow: ellipsis;
  white-space: nowrap;
  border: none;
  border-radius: 8px;
  outline: none;
  width: 100%;
  min-width: 40px;
  padding: 6px 8px;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  transition: all .2s;
  overflow: hidden;
  background: none !important;
}

.canvas-action-group {
  background: none;
  border: none;
  flex-wrap: nowrap;
  flex-shrink: 0;
  align-items: center;
  gap: 2px;
  display: flex;
  flex-direction: row !important;
}

.products-mockup-indicator {
  color: #7c3aedcc;
  align-items: center;
  gap: 6px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  display: flex;
}

.products-mockup-indicator:before {
  content: "";
  background: #7c3aed;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.products-mockup-body {
  padding: 24px;
}

.products-chat-bubble {
  border-radius: 16px;
  margin-bottom: 12px;
  padding: 14px 18px;
  font-size: 14px;
  line-height: 1.5;
}

.products-chat-bubble--user {
  color: #ffffffe6;
  background: #7c3aed26;
  border-bottom-right-radius: 4px;
  margin-left: 40px;
}

.products-chat-bubble--assistant {
  color: #ffffffb3;
  background: #ffffff0d;
  border-bottom-left-radius: 4px;
  margin-right: 40px;
}

.products-chat-input {
  background: #ffffff08;
  border-radius: 12px;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  padding: 12px 16px;
  display: flex;
}

.products-chat-input-text {
  color: #ffffff4d;
  flex: 1;
  font-size: 13px;
}

.products-chat-input-cursor {
  background: #7c3aed99;
  width: 1px;
  height: 16px;
  animation: 1s step-end infinite products-blink;
}

@keyframes products-blink {
  50% {
    opacity: 0;
  }
}

.products-voice-avatar {
  background: linear-gradient(135deg, #7c3aed, #f97316);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 120px;
  height: 120px;
  margin: 0 auto 16px;
  display: flex;
  position: relative;
}

.products-voice-avatar:before {
  content: "";
  filter: blur(20px);
  z-index: -1;
  background: linear-gradient(135deg, #7c3aed4d, #f973164d);
  border-radius: 50%;
  position: absolute;
  inset: -8px;
}

.products-voice-avatar-inner {
  background: linear-gradient(135deg, #8b5cf6, #ea580c);
  border-radius: 50%;
  width: 100px;
  height: 100px;
}

.products-voice-name {
  text-align: center;
  color: #fff;
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: 600;
}

.products-voice-waves {
  justify-content: center;
  align-items: center;
  gap: 4px;
  height: 40px;
  margin-bottom: 16px;
  display: flex;
}

.products-voice-bar {
  background: linear-gradient(to top, #7c3aed, #f97316);
  border-radius: 2px;
  width: 4px;
  animation: 1s ease-in-out infinite products-wave;
}

.products-voice-bar:first-child {
  height: 12px;
  animation-delay: 0s;
}

.products-voice-bar:nth-child(2) {
  height: 24px;
  animation-delay: .1s;
}

.products-voice-bar:nth-child(3) {
  height: 16px;
  animation-delay: .2s;
}

.products-voice-bar:nth-child(4) {
  height: 32px;
  animation-delay: .3s;
}

.products-voice-bar:nth-child(5) {
  height: 20px;
  animation-delay: .4s;
}

@keyframes products-wave {
  0%, 100% {
    transform: scaleY(1);
  }

  50% {
    transform: scaleY(1.8);
  }
}

.products-voice-status {
  text-align: center;
  color: #fff6;
  letter-spacing: .1em;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

.products-canvas-split {
  height: 300px;
  display: grid;
}

.products-canvas-editor {
  border-right: 1px solid var(--products-border-card);
  background: #000;
  padding: 16px;
}

.products-canvas-tabs {
  gap: 8px;
  margin-bottom: 16px;
  display: flex;
}

.products-canvas-tab {
  color: #fff9;
  background: #ffffff0d;
  border-radius: 6px;
  padding: 6px 12px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

.products-canvas-tab.active {
  color: #a78bfa;
  background: #7c3aed33;
}

.products-canvas-code {
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  line-height: 1.6;
}

.products-canvas-line {
  gap: 16px;
  display: flex;
}

.products-canvas-ln {
  color: #ffffff26;
  text-align: right;
  flex-shrink: 0;
  width: 20px;
}

.products-canvas-content {
  white-space: nowrap;
}

.products-code-keyword {
  color: #a78bfa;
}

.products-code-string {
  color: #34d399;
}

.products-code-function {
  color: #60a5fa;
}

.products-code-tag {
  color: #f472b6;
}

.products-code-attr {
  color: #fbbf24;
}

.products-canvas-preview {
  background: #121218;
  flex-direction: column;
  padding: 16px;
}

.products-canvas-preview-label {
  color: #ffffff4d;
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-bottom: 16px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
}

.products-canvas-preview-content {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 12px;
  display: flex;
}

.products-canvas-btn {
  color: #fff;
  cursor: pointer;
  background: #7c3aed;
  border: none;
  border-radius: 8px;
  padding: 10px 24px;
  font-size: 13px;
  font-weight: 500;
}

.products-canvas-counter {
  color: #fff9;
  font-family: JetBrains Mono, monospace;
  font-size: 13px;
}

.products-agents-tabs {
  background: #ffffff05;
  border-radius: 8px;
  gap: 4px;
  margin-bottom: 20px;
  padding: 8px;
  display: flex;
}

.products-agents-tab {
  color: #fff6;
  border-radius: 4px;
  padding: 6px 10px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
}

.products-agents-tab.active {
  color: #a78bfa;
  background: #7c3aed26;
}

.products-agents-avatar {
  background: linear-gradient(135deg, #7c3aed, #3b82f6);
  border-radius: 16px;
  width: 64px;
  height: 64px;
  margin-bottom: 16px;
}

.products-agents-field {
  margin-bottom: 16px;
}

.products-agents-label {
  color: #fff6;
  margin-bottom: 6px;
  font-size: 11px;
  display: block;
}

.products-agents-input {
  border: 1px solid var(--products-border-card);
  color: #fffc;
  background: #ffffff0d;
  border-radius: 8px;
  width: 100%;
  padding: 10px 12px;
  font-size: 13px;
}

.products-agents-textarea {
  border: 1px solid var(--products-border-card);
  color: #ffffff80;
  resize: none;
  background: #ffffff0d;
  border-radius: 8px;
  width: 100%;
  height: 60px;
  padding: 10px 12px;
  font-size: 12px;
}

.products-agents-publish {
  color: #fff;
  cursor: pointer;
  background: #7c3aed;
  border: none;
  border-radius: 8px;
  width: 100%;
  margin-top: 8px;
  padding: 12px;
  font-size: 13px;
  font-weight: 600;
}

.products-app-overview {
  border-top: 1px solid var(--products-border-section);
  padding: 80px 40px 120px;
}

.products-app-overview-header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 60px;
}

.products-app-overview-header h2 {
  color: #fff;
  margin-bottom: 16px;
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 600;
  line-height: 1.15;
}

.products-app-overview-header p {
  color: #ffffff80;
  font-size: 17px;
  line-height: 1.6;
}

.products-mockup-container {
  max-width: 950px;
  margin: 0 auto;
  position: relative;
}

.products-web-mockup {
  background: var(--bg-body, #0c0c0e);
  border: 1px solid var(--border-subtle, #ffffff0f);
  aspect-ratio: 16 / 10;
  border-radius: 16px;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 25px 80px #00000080;
}

.products-web-sidebar {
  background: var(--bg-body, #000);
  border-right: 1px solid var(--border-subtle, #ffffff0f);
  flex-direction: column;
  flex-shrink: 0;
  width: 60px;
  padding: 0;
  display: flex;
}

.products-sidebar-header {
  border-bottom: 1px solid #ffffff0d;
  justify-content: center;
  align-items: center;
  height: 60px;
  display: flex;
}

.products-sidebar-logo {
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  display: flex;
}

.products-sidebar-logo img {
  object-fit: contain;
  width: 32px;
  height: 32px;
}

.products-sidebar-content {
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 4px;
  padding: 12px 0;
  display: flex;
}

.products-sidebar-item {
  color: #fff6;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  padding-left: 11px;
  transition: all .15s;
  display: flex;
}

.products-sidebar-item:hover {
  color: #ffffffb3;
  background: #ffffff0f;
}

.products-sidebar-item.active {
  color: #fff;
  background: #ffffff14;
}

.products-sidebar-item svg {
  width: 20px;
  height: 20px;
}

.products-sidebar-divider {
  background: #ffffff0f;
  width: 24px;
  height: 1px;
  margin: 8px 0;
}

.products-sidebar-footer {
  flex-direction: column;
  align-items: center;
  padding: 12px 0;
  display: flex;
}

.products-sidebar-avatar {
  color: #fff;
  background: #3b82f6;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.products-mobile-header-right .products-sidebar-avatar {
  width: 20px;
  height: 20px;
}

.products-web-main {
  background: var(--bg-body, #0c0c0e);
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  padding: 24px 40px 32px;
  display: flex;
  position: relative;
}

.products-web-private {
  color: #fff6;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  display: flex;
  position: absolute;
  top: 16px;
  right: 20px;
}

.products-web-private-dot {
  background: #22c55e;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.products-web-logo {
  border-radius: 12px;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  overflow: hidden;
}

.products-web-logo img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.products-web-greeting {
  color: #818cf8;
  text-align: center;
  background: linear-gradient(to right, #7a889a, #c8b8d7, #b5b0b2);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  margin-bottom: .5rem;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
  line-height: 1.2;
}

.products-web-subtext {
  color: #9ca3af;
  opacity: .8;
  margin-bottom: 28px;
  font-size: 1.1rem;
  font-weight: 500;
}

.products-web-input {
  background: var(--bg-card, #18181b);
  border: 1px solid var(--border-subtle, #ffffff14);
  border-radius: 22px;
  width: 100%;
  max-width: 560px;
  padding: 14px 18px;
}

.products-web-input-textarea {
  color: #ffffff59;
  width: 100%;
  margin-bottom: 10px;
  font-size: 15px;
}

.products-web-input-row {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.products-web-input-left {
  align-items: center;
  gap: 8px;
  display: flex;
}

.products-web-input-plus {
  color: #ffffff80;
  background: #ffffff0f;
  border: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: flex;
}

.products-mobile-mockup .products-web-input-plus {
  width: 10px;
  height: 10px;
}

.products-web-input-right {
  align-items: center;
  gap: 6px;
  display: flex;
}

.products-web-input-model {
  color: #fffc;
  background: #ffffff0d;
  border-radius: 18px;
  align-items: center;
  gap: 5px;
  padding: 6px 12px;
  font-size: 13px;
  display: flex;
}

.products-mobile-mockup .products-web-input-model {
  padding: 5px 9px;
  font-size: 10px;
}

.products-web-input-model-dot {
  background: #7c3aed;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.products-web-input-voice {
  color: #ffffff80;
  align-items: center;
  gap: 5px;
  padding: 6px 10px;
  font-size: 13px;
  display: flex;
}

.products-mobile-mockup .products-web-input-voice {
  padding: 5px 9px;
  font-size: 10px;
}

.products-web-chips {
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 24px;
  display: flex;
}

.products-mobile-mockup .products-web-chips {
  -ms-overflow-style: none;
  scrollbar-width: none;
  flex-wrap: nowrap;
  width: 100%;
  padding-left: 77px;
  overflow-x: scroll;
}

.products-mobile-mockup .products-web-chips::-webkit-scrollbar {
  display: none;
}

.products-web-chips button {
  color: #a1a1aa;
  cursor: pointer;
  white-space: nowrap;
  opacity: 1;
  background-color: #0000;
  border: 1px solid #3f3f46;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  gap: 7px;
  padding: 6px 11px;
  font-size: 10px;
  font-weight: 400;
  transition: all .25s;
  display: inline-flex;
  transform: scale(1);
}

.products-web-chip {
  color: #ffffff80;
  background: #ffffff08;
  border: 1px solid #ffffff14;
  border-radius: 999px;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.products-web-chip:hover {
  color: #ffffffb3;
  background: #ffffff0d;
  border-color: #ffffff1f;
}

.products-web-chip svg {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

.products-web-footer {
  text-align: center;
  color: #ffffff40;
  padding: 0 20px;
  font-size: 11px;
  position: absolute;
  bottom: 12px;
  left: 0;
  right: 0;
}

.pmock-sidebar {
  background: var(--bg-body, #000);
  border-right: 1px solid var(--border-subtle, #27272a);
  flex-direction: column;
  flex-shrink: 0;
  justify-content: space-between;
  width: 60px;
  padding: 12px 0;
  display: flex;
}

.pmock-sidebar-top, .pmock-sidebar-bottom {
  flex-direction: column;
  align-items: center;
  gap: 4px;
  display: flex;
}

.pmock-sidebar-logo {
  width: 28px;
  height: 28px;
  margin-bottom: 12px;
}

.pmock-sidebar-logo img {
  border-radius: 8px;
  width: 100%;
  height: 100%;
}

.pmock-sidebar-icon {
  width: 36px;
  height: 36px;
  color: var(--text-subtle, #71717a);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  transition: all .15s;
  display: flex;
}

.pmock-sidebar-icon.active {
  color: var(--text-main, #fff);
  background: var(--bg-hover, #141414);
}

.pmock-sidebar-avatar {
  border-radius: 50%;
  width: 28px;
  height: 28px;
  margin-top: 8px;
  overflow: hidden;
}

.pmock-sidebar-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.pmock-main {
  background: var(--bg-body, #000);
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  min-height: 0;
  padding: 24px 32px 20px;
  display: flex;
  position: relative;
}

.pmock-welcome {
  text-align: center;
  margin-bottom: 20px;
}

.pmock-welcome-row {
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-bottom: 4px;
  display: flex;
}

.pmock-welcome-logo {
  border-radius: 50%;
  width: 32px;
  height: 32px;
}

.pmock-welcome-text {
  background: linear-gradient(135deg, #fff 0%, #a1a1aa 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  margin: 0;
  font-size: 26px;
  font-weight: 700;
}

.pmock-welcome-sub {
  color: var(--text-subtle, #71717a);
  margin: 0;
  font-size: 13px;
}

.pmock-input {
  background: var(--bg-card, #0a0a0a);
  border: 2px solid #0000;
  border-radius: 22px;
  width: 100%;
  max-width: 480px;
  padding: 12px 16px;
  box-shadow: 0 0 15px #a855f71f;
}

.pmock-input-placeholder {
  color: var(--text-subtle, #71717a);
  margin-bottom: 8px;
  font-size: 14px;
}

.pmock-input-row {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.pmock-input-plus {
  border: 1px solid var(--border-subtle, #27272a);
  width: 32px;
  height: 32px;
  color: var(--text-muted, #a1a1aa);
  background: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  display: flex;
}

.pmock-input-right {
  align-items: center;
  gap: 4px;
  display: flex;
}

.pmock-mode-btn {
  color: var(--text-muted, #a1a1aa);
  border: 1px solid var(--border-subtle, #27272a);
  background: none;
  border-radius: 9999px;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 500;
  display: flex;
}

.pmock-mode-dot {
  background: #22c55e;
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.pmock-voice-btn {
  color: var(--text-main, #fff);
  align-items: center;
  gap: 4px;
  padding: 5px 8px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.pmock-actions {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
  display: flex;
}

.pmock-action-btn {
  border: 1px solid var(--border-subtle, #27272a);
  background: var(--bg-card, #0a0a0a);
  color: var(--text-main, #fff);
  white-space: nowrap;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  font-size: 10px;
  font-weight: 500;
  display: inline-flex;
  box-shadow: 0 1px 2px #0003;
}

.pmock-action-btn i {
  opacity: .8;
  font-size: 13px;
}

.pmock-footer {
  text-align: center;
  color: var(--text-subtle, #71717a);
  padding: 0 16px;
  font-size: 10px;
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
}

.pmock-footer span {
  text-decoration: underline;
}

.pmock-ghost {
  z-index: 5;
  opacity: .5;
  transition: opacity .2s;
  position: absolute;
  top: 14px;
  right: 16px;
}

.pmock-ghost:hover {
  opacity: .8;
}

.pmock-starfield {
  pointer-events: none;
  z-index: 0;
  position: absolute;
  inset: 0;
  overflow: hidden;
}

.pmock-star {
  background: #fff9;
  border-radius: 50%;
  animation: 3s ease-in-out infinite alternate pmock-twinkle;
  position: absolute;
}

@keyframes pmock-twinkle {
  0% {
    opacity: .1;
  }

  100% {
    opacity: .5;
  }
}

@media (max-width: 600px) {
  .pmock-sidebar, .pmock-actions, .pmock-footer {
    display: none;
  }
}

@media (max-width: 900px) {
  .products-app-overview {
    padding: 60px 20px 80px;
  }

  .products-web-main {
    padding: 20px 16px 28px;
  }

  .products-web-greeting {
    font-size: 22px;
  }

  .products-web-input {
    max-width: 100%;
  }

  .products-web-chips {
    gap: 8px;
  }

  .products-web-chip {
    padding: 8px 12px;
    font-size: 12px;
  }
}

@media (max-width: 600px) {
  .products-web-sidebar, .products-web-chips, .products-web-footer {
    display: none;
  }
}

.products-showcase-subtitle {
  color: #ffffff59;
  letter-spacing: 1px;
  margin-top: 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 13px;
}

.products-showcase-footer {
  color: #fff3;
  text-align: center;
  letter-spacing: 1px;
  margin-top: 24px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

[data-theme="light"] .products-showcase-subtitle {
  color: #0006;
}

[data-theme="light"] .products-showcase-footer {
  color: #00000040;
}

.showcase-gallery {
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  gap: 12px;
  margin-top: 32px;
  margin-bottom: 20px;
  padding: 4px 0 16px;
  display: flex;
  overflow: auto hidden;
}

.showcase-gallery::-webkit-scrollbar {
  display: none;
}

.showcase-item {
  cursor: pointer;
  border-radius: 12px;
  flex-shrink: 0;
  height: 280px;
  transition: transform .3s, box-shadow .3s;
  position: relative;
  overflow: hidden;
}

.showcase-item img {
  object-fit: cover;
  border-radius: 12px;
  width: auto;
  height: 100%;
  transition: transform .4s;
  display: block;
}

.showcase-item:hover {
  z-index: 2;
  transform: translateY(-3px);
  box-shadow: 0 8px 24px #0000004d;
}

.showcase-item:hover img {
  transform: scale(1.03);
}

.showcase-item:after {
  content: "";
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(#0000 60%, #00000059);
  border-radius: 12px;
  transition: opacity .3s;
  position: absolute;
  inset: 0;
}

.showcase-item:hover:after {
  opacity: 1;
}

.showcase-gallery-wrapper {
  position: relative;
}

.showcase-gallery-wrapper:after {
  content: "";
  background: linear-gradient(to right, transparent, var(--products-bg, #000));
  pointer-events: none;
  z-index: 3;
  width: 80px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
}

.showcase-gallery-wrapper.scrolled-end:after {
  opacity: 0;
  transition: opacity .3s;
}

.showcase-gallery-wrapper:before {
  content: "";
  background: linear-gradient(to left, transparent, var(--products-bg, #000));
  pointer-events: none;
  z-index: 3;
  opacity: 0;
  width: 80px;
  transition: opacity .3s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

.showcase-gallery-wrapper.scrolled-start:before {
  opacity: 0;
}

.showcase-gallery-wrapper.scrolled-mid:before {
  opacity: 1;
}

.showcase-nav {
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  color: #fff9;
  cursor: pointer;
  z-index: 5;
  background: #0f1117cc;
  border: 1px solid #ffffff1f;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: .85rem;
  transition: all .2s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.showcase-nav:hover {
  color: #fff;
  background: #0f1117f2;
  border-color: #ffffff40;
}

.showcase-nav-left {
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
  left: 8px;
}

.showcase-nav-right {
  right: 8px;
}

.showcase-gallery-wrapper.scrolled-mid .showcase-nav-left {
  opacity: 1;
  pointer-events: all;
}

.showcase-gallery-wrapper.scrolled-end .showcase-nav-right {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 1024px) {
  .showcase-item {
    height: 240px;
  }
}

@media (max-width: 768px) {
  .showcase-item {
    border-radius: 10px;
    height: 200px;
  }

  .showcase-item img {
    border-radius: 10px;
  }

  .showcase-gallery {
    gap: 8px;
  }

  .showcase-gallery-wrapper:after, .showcase-gallery-wrapper:before {
    width: 40px;
  }

  .showcase-nav {
    display: none;
  }
}

@media (max-width: 480px) {
  .showcase-item {
    border-radius: 8px;
    height: 170px;
  }

  .showcase-item img {
    border-radius: 8px;
  }

  .showcase-gallery {
    gap: 6px;
  }
}

[data-theme="light"] .showcase-gallery-wrapper:after, .light-mode .showcase-gallery-wrapper:after {
  background: linear-gradient(to right, transparent, var(--products-bg, #fff));
}

[data-theme="light"] .showcase-gallery-wrapper:before, .light-mode .showcase-gallery-wrapper:before {
  background: linear-gradient(to left, transparent, var(--products-bg, #fff));
}

[data-theme="light"] .showcase-item:hover, .light-mode .showcase-item:hover {
  box-shadow: 0 8px 24px #0000001a;
}

[data-theme="light"] .showcase-nav, .light-mode .showcase-nav {
  color: #00000080;
  background: #ffffffd9;
  border-color: #00000014;
}

[data-theme="light"] .showcase-nav:hover, .light-mode .showcase-nav:hover {
  color: #000c;
  background: #fffffff2;
  border-color: #00000026;
}

.showcase-lightbox {
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  justify-content: center;
  align-items: center;
  transition: opacity .3s, visibility .3s;
  display: flex;
  position: fixed;
  inset: 0;
}

.showcase-lightbox.active {
  opacity: 1;
  visibility: visible;
}

.showcase-lightbox-backdrop {
  -webkit-backdrop-filter: blur(20px);
  background: #000000d9;
  position: absolute;
  inset: 0;
}

.showcase-lightbox-close {
  z-index: 10;
  color: #ffffffb3;
  cursor: pointer;
  background: #ffffff14;
  border: 1px solid #ffffff26;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  transition: all .2s;
  display: flex;
  position: absolute;
  top: 24px;
  right: 24px;
}

.showcase-lightbox-close:hover {
  color: #fff;
  background: #ffffff26;
  border-color: #ffffff4d;
  transform: scale(1.08);
}

.showcase-lightbox-content {
  z-index: 5;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  max-width: 90vw;
  max-height: 90vh;
  transition: transform .35s cubic-bezier(.16, 1, .3, 1);
  display: flex;
  position: relative;
  transform: scale(.92)translateY(20px);
}

.showcase-lightbox.active .showcase-lightbox-content {
  transform: scale(1)translateY(0);
}

.showcase-lightbox-image-wrap {
  justify-content: center;
  align-items: center;
  max-height: 65vh;
  display: flex;
}

.showcase-lightbox-image-wrap img {
  object-fit: contain;
  border-radius: 12px;
  max-width: 100%;
  max-height: 65vh;
  box-shadow: 0 20px 60px #00000080;
}

.showcase-lightbox-info {
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  max-width: 600px;
  display: flex;
}

.showcase-lightbox-prompt-label {
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #ffffff59;
  align-items: center;
  gap: 6px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  display: flex;
}

.showcase-lightbox-prompt {
  color: #ffffffbf;
  text-align: center;
  margin: 0;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  font-size: 15px;
  font-style: italic;
  line-height: 1.6;
}

.showcase-lightbox-cta {
  color: #000;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  padding: 12px 24px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.showcase-lightbox-cta:hover {
  color: #000;
  background: #ffffffe6;
  border-color: #ffffffe6;
}

[data-theme="light"] .showcase-lightbox-backdrop {
  background: #ffffffe0;
}

[data-theme="light"] .showcase-lightbox-close {
  color: #00000080;
  background: #0000000f;
  border-color: #0000001a;
}

[data-theme="light"] .showcase-lightbox-close:hover {
  color: #000;
  background: #0000001f;
  border-color: #0003;
}

[data-theme="light"] .showcase-lightbox-image-wrap img {
  box-shadow: 0 20px 60px #00000026;
}

[data-theme="light"] .showcase-lightbox-prompt-label {
  color: #0006;
}

[data-theme="light"] .showcase-lightbox-prompt {
  color: #000000a6;
}

[data-theme="light"] .showcase-lightbox-cta {
  color: #fff;
  background: #000;
  border-color: #000;
}

[data-theme="light"] .showcase-lightbox-cta:hover {
  color: #fff;
  background: #000000d9;
  border-color: #000000d9;
}

@media (max-width: 768px) {
  .showcase-lightbox-content {
    gap: 16px;
    max-width: 95vw;
  }

  .showcase-lightbox-image-wrap, .showcase-lightbox-image-wrap img {
    max-height: 55vh;
  }

  .showcase-lightbox-close {
    width: 38px;
    height: 38px;
    top: 16px;
    right: 16px;
  }

  .showcase-lightbox-prompt {
    font-size: 13px;
  }

  .showcase-lightbox-cta {
    padding: 10px 22px;
    font-size: 11px;
  }
}

.products-badge {
  color: #000;
  text-transform: uppercase;
  vertical-align: middle;
  background: #a78bfa;
  border-radius: 4px;
  margin-left: 12px;
  padding: 3px 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 9px;
  font-weight: 700;
  display: inline-block;
}

.products-platforms {
  flex-wrap: wrap;
  gap: 12px;
  margin: 32px 0 48px;
  display: flex;
}

.products-platform-btn {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #ffffffb3;
  background: none;
  border: 1px solid #fff3;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 12px 28px;
  font-family: JetBrains Mono, monospace;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.products-platform-btn:hover {
  color: #fff;
  background: #ffffff0d;
  border-color: #ffffff59;
}

.products-platform-btn--primary {
  color: #000;
  background: #fff;
  border-color: #fff;
}

.products-platform-btn--primary:hover {
  color: #000;
  background: #ffffffe6;
}

.products-device-frame {
  border: 1px solid var(--products-border-card);
  background: #ffffff05;
  border-radius: 20px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
  padding: 60px 40px;
  display: flex;
}

.products-device-logo {
  letter-spacing: -.03em;
  background: linear-gradient(#fff, #7c3aed80);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
  font-size: 48px;
  font-weight: 800;
}

.products-device-input {
  border: 1px solid var(--products-border-card);
  color: #ffffff4d;
  background: #ffffff08;
  border-radius: 24px;
  align-items: center;
  gap: 12px;
  min-width: 300px;
  padding: 12px 24px;
  font-size: 14px;
  display: flex;
}

.products-coming-grid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  max-width: 900px;
  margin: 40px auto 0;
  display: grid;
}

.products-coming-card {
  background: #ffffff05;
  border: 1px solid #ffffff0d;
  border-radius: 14px;
  padding: 28px;
}

.products-coming-title {
  color: #fff;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 550;
}

.products-coming-desc {
  color: #ffffff4d;
  font-size: 13px;
  line-height: 1.5;
}

.products-final-cta {
  text-align: center;
  border-top: 1px solid var(--products-border-section);
  padding: 120px 40px;
}

.products-final-headline {
  margin-bottom: 16px;
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 600;
}

.products-final-subtitle {
  color: #ffffff59;
  margin-bottom: 32px;
  font-size: 15px;
}

.products-final-buttons {
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  display: flex;
}

@media (max-width: 768px) {
  .products-final-cta {
    padding: 80px 20px;
  }
}

.products-mobile-mockup-container {
  justify-content: end;
  align-items: center;
  display: flex;
  position: absolute;
  bottom: 0;
  right: -85px;
}

.products-mobile-body-logo {
  justify-content: center;
  align-items: center;
  margin: 0;
  display: flex;
}

.products-mobile-mockup {
  background: #0c0c0e;
  border: 1px solid #ffffff47;
  border-radius: 45px;
  flex-direction: column;
  width: 100%;
  max-width: 250px;
  height: 650px;
  max-height: 500px;
  margin-top: 25px;
  display: flex;
  box-shadow: 0 0 20px #0000001a;
}

.products-mobile-header {
  justify-content: center;
  align-items: center;
  padding: 20px;
  display: flex;
  position: relative;
}

.products-mobile-header-left {
  align-items: center;
  gap: 10px;
  display: flex;
  position: absolute;
  left: 20px;
}

.products-mobile-header-center {
  align-items: center;
  gap: 10px;
  display: flex;
}

.products-mobile-header-right {
  align-items: center;
  gap: 10px;
  display: flex;
  position: absolute;
  right: 20px;
}

.products-mobile-header-right-signup {
  color: #000;
  background: #fff;
  border-radius: 11px;
  padding: 2px 8px;
  font-size: 13px;
}

.products-mobile-footer {
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding: 16px 20px;
  display: flex;
  bottom: 0;
}

.products-mobile-footer-input {
  align-items: center;
  gap: 10px;
  width: 100%;
  display: flex;
}

.products-mobile-footer-send-btn {
  align-items: center;
  gap: 10px;
  display: flex;
}

.products-mobile-footer .products-web-input {
  width: 100%;
  margin: 10px 0 0;
}

.products-mobile-body {
  flex-direction: column;
  flex: 1;
  display: flex;
}

.products-mobile-body-content {
  padding-left: 20px;
}

.products-mobile-body-logo {
  flex: 1;
  justify-content: center;
  align-items: center;
  margin: 0;
  display: flex;
}

.products-mobile-body-title {
  color: #8504ec;
  background: linear-gradient(to right, #7a889a, #c8b8d7, #b5b0b2);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  margin-bottom: .5rem;
  padding: 12px 0 0;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
}

.products-mobile-body-subtitle {
  color: #858287;
  margin-bottom: .5rem;
  padding: 0;
  font-size: 10px;
  font-weight: 600;
  line-height: 1.2;
}

.products-mobile-body-logo img {
  vertical-align: middle;
  opacity: .4;
}

.torki-toggle-btn-group {
  background: #18181b;
  border-radius: 11px;
  align-items: center;
  gap: 10px;
  padding: 2px 8px 2px 3px;
  font-size: 10px;
  display: flex;
}

.torki-toggle-btn-active {
  color: #fff;
  background: #36363b;
  border-radius: 11px;
  align-items: center;
  gap: 10px;
  padding: 2px 8px;
  font-size: 10px;
  display: flex;
}

.torki-toggle-btn {
  color: #b9b9b9;
  align-items: center;
  gap: 10px;
  display: flex;
}

@media (max-width: 768px) {
  .products-web-mockup {
    display: none !important;
  }

  .products-mobile-mockup-container {
    justify-content: center;
    align-items: center;
    width: 100%;
    display: flex;
    position: static;
  }

  .ap-toolbar {
    flex-wrap: nowrap;
    max-width: 90%;
  }

  #products-hero-input {
    width: 80%;
  }
}

.main-agent-frame {
  border-radius: 16px;
  width: 100%;
  height: 800px;
  position: relative;
  overflow: hidden;
  transform: translate(0);
}

.main-agent-frame #agent-preview-container.agent-preview-container {
  z-index: 1;
  background: #000;
  padding: 60px 20px 40px;
  display: flex;
  position: absolute !important;
  inset: 0 !important;
}

.main-agent-frame #agent-preview-container {
  display: flex !important;
}

.main-agent-frame .ap-toolbar {
  top: 12px;
}

.main-agent-frame .ap-label {
  bottom: 10px;
}

#agentPreviewFrame {
  margin-top: 60px;
}

#agentBuilderPanel {
  display: none;
}

.ap-preview-header {
  border-radius: 40px 40px 0 0;
}

.game-tab {
  color: #fff3;
  cursor: pointer;
  letter-spacing: .5px;
  text-transform: uppercase;
  background: none;
  border: 1px solid #0000;
  border-radius: 6px;
  padding: 8px 20px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
}

.game-tab:hover {
  color: #fff6;
}

.game-tab.active {
  color: #fff;
  background: #ffffff08;
  border-color: #ffffff1a;
}

html.light-mode, .light-mode {
  --products-bg: #f9fafb;
  --products-text-primary: #111827;
  --products-text-secondary: #0000008c;
  --products-text-muted: #00000059;
  --products-border-section: #0000001a;
  --products-border-card: #00000014;
  --products-cta-border: #00000026;
  color: #111827;
  background: #f9fafb;
}

.light-mode .products-headline-light {
  color: #0000004d;
}

.light-mode .products-cta {
  color: #0009;
}

.light-mode .products-cta:hover {
  color: #111827;
  background: #0000000a;
  border-color: #00000040;
}

.light-mode .products-cta--filled {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .products-cta--filled:hover {
  color: #fff;
  background: #1f2937;
  border-color: #1f2937;
}

.light-mode .products-features li {
  color: #00000073;
}

.light-mode .products-hero-wordmark {
  color: #f9fafb;
  -webkit-text-stroke: 2px #0000001a;
  text-stroke: 2px #0000001a;
}

.light-mode .products-hero-wordmark:hover {
  -webkit-text-stroke: 2px #00000040;
  text-stroke: 2px #00000040;
  text-shadow: 0 0 30px #0000000d;
}

.light-mode .products-hero-input-inner {
  background: #fff;
  border-color: #0000001f;
}

.light-mode .products-hero-input-wrapper:hover .products-hero-input-inner {
  border-color: #00000040;
}

.light-mode .products-hero-input-wrapper:focus-within .products-hero-input-inner {
  border-color: #0006;
}

.light-mode .products-hero-input-inner input {
  color: #111827;
}

.light-mode .products-hero-input-inner input::placeholder {
  color: #00000059;
}

.light-mode .products-hero-send-btn {
  background: #0000000f;
}

.light-mode .products-hero-send-btn svg {
  stroke: #111827;
}

.light-mode .products-hero-send-btn:hover {
  background: #111827;
}

.light-mode .products-hero-send-btn:hover svg {
  stroke: #fff;
}

.light-mode .products-hero-chips {
  border-top-color: #0000000f;
}

.light-mode .products-hero-chip {
  color: #00000080;
  background: #0000000a;
}

.light-mode .products-hero-chip:hover {
  color: #111827;
  background: #00000014;
}

.light-mode .products-hero-scroll {
  color: #0000004d;
}

.light-mode .products-mockup {
  background: #fff;
}

.light-mode .products-mockup-header {
  border-bottom-color: #00000014;
  background: #fff !important;
}

.light-mode .products-mockup-title {
  color: #0009;
}

.light-mode .canvas-title-input {
  color: #111827;
}

.light-mode .canvas-icon-btn {
  color: #71717a;
}

.light-mode .canvas-icon-btn:hover {
  color: #7c3aed;
  background-color: #7c3aed14;
}

.light-mode .canvas-toggle-group {
  background: #f3f4f6;
  border-color: #0000001a;
}

.light-mode .canvas-toggle-btn {
  color: #71717a;
}

.light-mode .canvas-toggle-btn.active {
  color: #111827;
  background: #fff;
  box-shadow: 0 1px 4px #0000001a;
}

.light-mode .canvas-divider {
  background-color: #0000001a;
}

.light-mode .products-canvas-editor {
  background: #f8f8f8;
  border-right-color: #00000014;
}

.light-mode .products-canvas-code {
  color: #374151;
}

.light-mode .products-canvas-tab {
  color: #00000080;
  background: #0000000d;
}

.light-mode .products-canvas-tab.active {
  color: #6d28d9;
  background: #7c3aed1a;
}

.light-mode .products-canvas-ln {
  color: #0003;
}

.light-mode .products-canvas-preview {
  background: #f0f0f4;
}

.light-mode .products-canvas-counter {
  color: #00000080;
}

.light-mode .products-platform-btn {
  color: #0009;
  border-color: #00000026;
}

.light-mode .products-platform-btn:hover {
  color: #111827;
  background: #0000000a;
  border-color: #00000040;
}

.light-mode .products-platform-btn--primary {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .products-platform-btn--primary:hover {
  color: #fff;
  background: #1f2937;
}

.light-mode .products-device-frame {
  background: #00000005;
  border-color: #00000014;
}

.light-mode .products-device-logo {
  background: linear-gradient(#111827, #7c3aed99);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
}

.light-mode .products-device-input {
  color: #00000059;
  background: #00000008;
  border-color: #00000014;
}

.light-mode .products-coming-card {
  background: #00000005;
  border-color: #00000012;
}

.light-mode .products-coming-title {
  color: #111827;
}

.light-mode .products-coming-desc {
  color: #00000073;
}

.light-mode .products-final-headline {
  color: #111827;
}

.light-mode .products-final-subtitle {
  color: #0006;
}

.light-mode .game-tab {
  color: #0000004d;
}

.light-mode .game-tab:hover {
  color: #0000008c;
}

.light-mode .game-tab.active {
  color: #111827;
  background: #00000008;
  border-color: #0000001f;
}

.products-voice-carousel-title {
  color: #fff;
}

.products-voice-nav-btn {
  color: #fff;
  background: #ffffff0d;
  border: 1px solid #ffffff1a;
}

.products-voice-nav-btn:hover {
  background: #ffffff1a;
}

.products-voice-card {
  box-shadow: 0 20px 40px #0006;
}

.products-voice-char-name {
  color: #fff;
}

.products-voice-char-desc {
  color: #ffffffb3;
}

.products-voice-char-specialty {
  color: #fff6;
}

.products-voice-dot {
  background: #fff3;
}

.light-mode .products-voice-carousel-title {
  color: #111827;
}

.light-mode .products-voice-nav-btn {
  color: #111827;
  background: #0000000a;
  border-color: #0000001a;
}

.light-mode .products-voice-nav-btn:hover {
  background: #00000014;
}

.light-mode .products-voice-card {
  box-shadow: 0 20px 40px #00000014;
  background: #fff !important;
  border-color: #00000014 !important;
}

.light-mode .products-voice-char-name {
  color: #111827;
}

.light-mode .products-voice-char-desc {
  color: #0009;
}

.light-mode .products-voice-char-specialty {
  color: #0006;
}

.light-mode .products-voice-dot {
  background: #00000026;
}

.products-agents-toggle-group {
  background: #ffffff08;
  border: 1px solid #ffffff14;
}

.products-agents-device-btn {
  color: #ffffff80;
  background: none;
}

.products-agents-device-btn.active {
  color: #fff;
  background: #ffffff1a;
}

.products-agents-device-mockup {
  background: #0c0a13;
  border: 1px solid #ffffff14;
  box-shadow: 0 20px 40px #00000080, inset 0 1px #ffffff0d;
}

.products-agents-mockup-header {
  border-bottom: 1px solid #ffffff0f;
}

.products-agents-mockup-name {
  color: #fff;
}

.products-agents-mockup-status {
  color: #ffffff80;
}

.products-agents-suggest-btn {
  color: #fff9;
  background: #ffffff08;
  border: 1px solid #ffffff1a;
}

.products-agents-suggest-btn:hover {
  background: #ffffff14;
}

.products-agents-bubble-user {
  color: #fff;
  background: #2e224f;
}

.products-agents-bubble-bot {
  color: #fffc;
  background: #ffffff0d;
}

.products-agents-input-bar {
  background: #ffffff08;
  border: 1px solid #ffffff0f;
}

.products-agents-input-field {
  color: #fff;
}

.light-mode .products-agents-toggle-group {
  background: #00000008;
  border-color: #00000014;
}

.light-mode .products-agents-device-btn {
  color: #00000073;
}

.light-mode .products-agents-device-btn.active {
  color: #111827;
  background: #00000012;
}

.light-mode .products-agents-device-mockup {
  background: #fff;
  border-color: #0000001a;
  box-shadow: 0 20px 40px #00000014, inset 0 1px #00000005;
}

.light-mode .products-agents-mockup-header {
  border-bottom-color: #00000014;
}

.light-mode .products-agents-mockup-name {
  color: #111827;
}

.light-mode .products-agents-mockup-status {
  color: #00000073;
}

.light-mode .products-agents-suggest-btn {
  color: #0000008c;
  background: #00000008;
  border-color: #0000001a;
}

.light-mode .products-agents-suggest-btn:hover {
  background: #0000000f;
}

.light-mode .products-agents-bubble-user {
  color: #111827;
  background: #7c3aed1a;
}

.light-mode .products-agents-bubble-bot {
  color: #374151;
  background: #0000000a;
}

.light-mode .products-agents-input-bar {
  background: #00000008;
  border-color: #00000014;
}

.light-mode .products-agents-input-field {
  color: #111827;
}

.products-games-tabs {
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-top: 40px;
  display: flex;
}

.products-games-tab {
  color: var(--text-subtle, #fff6);
  letter-spacing: .05em;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 8px;
  padding: 8px 24px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  transition: all .2s;
}

.products-games-tab:hover {
  color: var(--text-main, #ffffffb3);
}

.products-games-tab.active {
  color: var(--text-main, #fff);
  border-color: var(--border-subtle, #fff3);
}

.products-games-container {
  background: var(--bg-card, #0c0a13);
  border: 1px solid var(--border-subtle, #ffffff14);
  border-radius: 16px;
  width: 100%;
  max-width: 820px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 20px 40px #00000026;
}

.products-games-footer {
  background: var(--bg-hover, #ffffff05);
  border-top: 1px solid var(--border-subtle, #ffffff0d);
  justify-content: space-between;
  align-items: center;
  padding: 12px 20px;
  display: flex;
}

.products-games-controls {
  color: var(--text-subtle, #fff6);
  align-items: center;
  gap: 6px;
  font-family: monospace;
  font-size: 12px;
  display: flex;
}

.products-games-key {
  border: 1px solid var(--border-subtle, #ffffff1a);
  border-radius: 4px;
  padding: 2px 6px;
}

.products-games-branding {
  color: var(--text-subtle, #ffffff4d);
  align-items: center;
  gap: 6px;
  font-family: sans-serif;
  font-size: 12px;
  display: flex;
}

.products-games-branding img {
  opacity: .5;
  width: 14px;
  height: 14px;
}

.light-mode .products-games-tab {
  color: #00000059;
}

.light-mode .products-games-tab:hover {
  color: #000000b3;
}

.light-mode .products-games-tab.active {
  color: #111827;
  border-color: #00000026 !important;
}

.light-mode .products-games-container {
  background: #fff;
  border-color: #0000001a;
  box-shadow: 0 20px 40px #00000014;
}

.light-mode .products-games-footer {
  background: #00000005;
  border-top-color: #0000000f;
}

.light-mode .products-games-controls {
  color: #0006;
}

.light-mode .products-games-key {
  border-color: #0000001f;
}

.light-mode .products-games-branding {
  color: #00000059;
}

.light-mode .products-games-branding img {
  filter: grayscale() brightness(.3);
}

.products-mobile-icon {
  color: #fff;
}

.light-mode .products-mobile-icon {
  color: #111827;
}

.light-mode .products-web-mockup {
  background: #fff;
  border-color: #0000001a;
  box-shadow: 0 25px 80px #00000014;
}

.light-mode .pmock-sidebar {
  background: #f9fafb;
  border-right-color: #e5e7eb;
}

.light-mode .pmock-sidebar-icon {
  color: #6b7280;
}

.light-mode .pmock-sidebar-icon.active {
  color: #111827;
  background: #f3f4f6;
}

.light-mode .pmock-main {
  background: #fff;
}

.light-mode .pmock-welcome-text {
  background: linear-gradient(135deg, #111827 0%, #6b7280 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
}

.light-mode .pmock-welcome-sub {
  color: #6b7280;
}

.light-mode .pmock-input {
  background: #fff;
  border: 1px solid #e5e7eb;
  box-shadow: 0 0 12px #a855f714;
}

.light-mode .pmock-input-placeholder {
  color: #9ca3af;
}

.light-mode .pmock-input-plus {
  color: #6b7280;
  border-color: #d1d5db;
}

.light-mode .pmock-mode-btn {
  color: #374151;
  border-color: #d1d5db;
}

.light-mode .pmock-voice-btn {
  color: #111827;
}

.light-mode .pmock-action-btn {
  color: #111827;
  background: #fff;
  border-color: #e5e7eb;
  box-shadow: 0 1px 2px #0000000d;
}

.light-mode .pmock-footer, .light-mode .pmock-ghost svg {
  color: #9ca3af;
}

.light-mode .pmock-star {
  background: #00000014;
}

.light-mode .products-mobile-mockup {
  background: #fff;
  border-color: #0000001a;
}

.light-mode .products-mobile-header {
  border-bottom-color: #e5e7eb;
}

.light-mode .products-mobile-body-title {
  background: linear-gradient(to right, #374151, #6b7280, #4b5563) !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-background-clip: text !important;
}

.light-mode .products-mobile-body-subtitle {
  color: #6b7280 !important;
}

.light-mode .torki-toggle-btn-active {
  color: #fff;
  background: #111827;
}

.light-mode .torki-toggle-btn {
  color: #6b7280;
}

.light-mode .torki-toggle-btn-group {
  border-color: #e5e7eb;
}

.light-mode .products-web-input {
  background-color: #fff;
  border-color: #e5e7eb;
}

.light-mode .products-web-input-textarea {
  color: #9ca3af;
}

.light-mode .products-web-input-plus {
  color: #6b7280;
  background: #f3f4f6;
}

.light-mode .products-web-input-model {
  color: #374151;
  background: #f3f4f6;
}

.light-mode .products-web-input-voice {
  color: #6b7280;
}

.light-mode .products-web-chips button {
  color: #374151;
  border-color: #e5e7eb;
}

.light-mode .products-web-sidebar {
  background: #f9fafb;
  border-right-color: #e5e7eb;
}

.light-mode .products-sidebar-item i {
  color: #6b7280;
}

.light-mode .products-sidebar-avatar {
  color: #374151;
  background: #e5e7eb;
}

.uc-page, .ucd-page {
  color: #fff;
  -webkit-font-smoothing: antialiased;
  background: #000;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  line-height: 1.6;
}

.uc-page a, .ucd-page a {
  color: inherit;
  text-decoration: none;
}

.uc-hero {
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
  padding: 80px 40px 60px;
}

.uc-hero-label {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #ffffff59;
  margin-bottom: 20px;
  font-size: 13px;
  font-weight: 500;
}

.uc-hero h1 {
  letter-spacing: -.03em;
  margin-bottom: 20px;
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 600;
  line-height: 1.1;
}

.uc-hero p {
  color: #ffffff73;
  max-width: 540px;
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.7;
}

.uc-filter-bar {
  z-index: 50;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  background: #000000d9;
  border-bottom: 1px solid #ffffff0f;
  padding: 14px 40px;
  position: sticky;
  top: 64px;
}

.uc-filter-inner {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
}

.uc-filter-select {
  color: #fff9;
  cursor: pointer;
  appearance: none;
  background: #ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.3)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 10px center no-repeat;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  padding: 8px 30px 8px 14px;
  font-family: inherit;
  font-size: 13px;
}

.uc-filter-select option {
  color: #fff;
  background: #111;
}

.uc-filter-search {
  color: #fff;
  background: #ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.25)' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") 12px no-repeat;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  flex: 1;
  min-width: 200px;
  padding: 8px 14px 8px 36px;
  font-family: inherit;
  font-size: 13px;
}

.uc-filter-search::placeholder {
  color: #ffffff40;
}

.uc-view-btns {
  gap: 4px;
  margin-left: auto;
  display: flex;
}

.uc-view-btn {
  color: #ffffff4d;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: all .2s;
  display: flex;
}

.uc-view-btn.active, .uc-view-btn:hover {
  color: #fff9;
  border-color: #ffffff26;
}

.uc-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px;
  display: grid;
}

.uc-card {
  background: none;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  flex-direction: column;
  transition: border-color .25s, transform .25s;
  display: flex;
  overflow: hidden;
}

.uc-card:hover {
  border-color: #ffffff24;
  transform: translateY(-3px);
}

.uc-card-preview {
  aspect-ratio: 16 / 10;
  justify-content: center;
  align-items: center;
  display: flex;
  position: relative;
  overflow: hidden;
}

.uc-card-body {
  flex-direction: column;
  flex: 1;
  padding: 20px;
  display: flex;
}

.uc-card-badge {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #ffffff59;
  background: #ffffff0a;
  border-radius: 4px;
  align-items: center;
  gap: 5px;
  width: fit-content;
  margin-bottom: 10px;
  padding: 3px 8px;
  font-size: 11px;
  font-weight: 500;
  display: inline-flex;
}

.uc-card-badge svg {
  width: 12px;
  height: 12px;
}

.uc-card-title {
  letter-spacing: -.01em;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
}

.uc-card-desc {
  color: #fff6;
  flex: 1;
  font-size: 13px;
  line-height: 1.65;
}

.uc-card-footer {
  border-top: 1px solid #ffffff0a;
  justify-content: space-between;
  align-items: center;
  padding: 14px 20px;
  display: flex;
}

.uc-card-category {
  color: #ffffff4d;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  display: flex;
}

.uc-card-arrow {
  color: #ffffff26;
  width: 20px;
  height: 20px;
  transition: color .2s;
}

.uc-card:hover .uc-card-arrow {
  color: #fff6;
}

.uc-mini-mockup {
  background: #ffffff08;
  border: 1px solid #ffffff0f;
  border-radius: 8px;
  width: 90%;
  max-width: 320px;
  overflow: hidden;
}

.uc-mini-header {
  border-bottom: 1px solid #ffffff0a;
  gap: 4px;
  padding: 6px 10px;
  display: flex;
}

.uc-mini-dot {
  background: #ffffff1f;
  border-radius: 50%;
  width: 5px;
  height: 5px;
}

.uc-mini-body {
  padding: 10px;
}

.uc-mini-msg-user {
  text-align: right;
  margin-bottom: 6px;
}

.uc-mini-msg-user span {
  color: #ffffff80;
  background: #7c3aed26;
  border-radius: 10px 10px 2px;
  max-width: 75%;
  padding: 4px 10px;
  font-size: 9px;
  display: inline-block;
}

.uc-mini-msg-ai {
  align-items: flex-start;
  gap: 5px;
  display: flex;
}

.uc-mini-avatar {
  border-radius: 50%;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  overflow: hidden;
}

.uc-mini-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.uc-mini-msg-ai span {
  color: #ffffff59;
  font-size: 9px;
  line-height: 1.4;
}

.uc-mini-voice {
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 10px;
  display: flex;
}

.uc-mini-voice-circle {
  border: 2px solid #7c3aed4d;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.uc-mini-voice-circle img {
  border-radius: 50%;
  width: 24px;
  height: 24px;
}

.uc-mini-voice-bars {
  align-items: center;
  gap: 2px;
  height: 20px;
  display: flex;
}

.uc-mini-voice-bar {
  background: #7c3aed66;
  border-radius: 2px;
  width: 3px;
  animation: .8s ease-in-out infinite alternate uc-pulse;
}

.uc-mini-voice-bar:first-child {
  height: 8px;
  animation-delay: 0s;
}

.uc-mini-voice-bar:nth-child(2) {
  height: 14px;
  animation-delay: .1s;
}

.uc-mini-voice-bar:nth-child(3) {
  height: 20px;
  animation-delay: .2s;
}

.uc-mini-voice-bar:nth-child(4) {
  height: 12px;
  animation-delay: .3s;
}

.uc-mini-voice-bar:nth-child(5) {
  height: 16px;
  animation-delay: .15s;
}

@keyframes uc-pulse {
  to {
    height: 6px;
  }
}

.uc-mini-canvas {
  grid-template-columns: 1fr 1fr;
  height: 100%;
  display: grid;
}

.uc-mini-code {
  color: #ffffff40;
  border-right: 1px solid #ffffff0a;
  padding: 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 8px;
  line-height: 1.5;
  overflow: hidden;
}

.uc-mini-preview {
  justify-content: center;
  align-items: center;
  padding: 8px;
  display: flex;
}

.uc-mini-preview-box {
  background: #7c3aed0d;
  border: 1px solid #7c3aed33;
  border-radius: 4px;
  width: 80%;
  height: 60%;
}

.uc-mini-research {
  padding: 10px;
}

.uc-mini-research-bar {
  background: #7c3aed4d;
  border-radius: 2px;
  width: 60%;
  height: 4px;
  margin-bottom: 8px;
}

.uc-mini-research-line {
  background: #ffffff0f;
  border-radius: 2px;
  height: 3px;
  margin-bottom: 4px;
}

.uc-mini-research-line:nth-child(2) {
  width: 85%;
}

.uc-mini-research-line:nth-child(3) {
  width: 70%;
}

.uc-mini-research-line:nth-child(4) {
  width: 90%;
}

.uc-mini-agent {
  padding: 10px;
}

.uc-mini-agent-field {
  background: #ffffff0a;
  border: 1px solid #ffffff0f;
  border-radius: 3px;
  height: 6px;
  margin-bottom: 5px;
}

.uc-mini-agent-btn {
  background: #7c3aed33;
  border-radius: 3px;
  width: 40%;
  height: 6px;
  margin-top: 8px;
}

.uc-no-results {
  text-align: center;
  color: #ffffff4d;
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 40px;
  font-size: 15px;
  display: none;
}

.uc-bottom-cta {
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 40px 100px;
}

.uc-bottom-cta-inner {
  text-align: center;
  border: 1px solid #ffffff14;
  border-radius: 16px;
  padding: 48px;
}

.uc-bottom-cta h2 {
  letter-spacing: -.02em;
  margin-bottom: 12px;
  font-size: 32px;
  font-weight: 600;
}

.uc-bottom-cta p {
  color: #fff6;
  margin-bottom: 24px;
  font-size: 15px;
}

.uc-cta-btn {
  color: #fff;
  background: #7c3aed;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 500;
  transition: background .2s;
  display: inline-flex;
}

.uc-cta-btn:hover {
  background: #6d28d9;
}

.ucd-breadcrumb {
  color: #ffffff59;
  align-items: center;
  gap: 8px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 100px 40px 20px;
  font-size: 13px;
  display: flex;
}

.ucd-breadcrumb a {
  transition: color .2s;
}

.ucd-breadcrumb a:hover {
  color: #fff9;
}

.ucd-bc-sep {
  color: #ffffff26;
}

.ucd-bc-current {
  color: #ffffff80;
}

.ucd-hero {
  grid-template-columns: 1fr 320px;
  align-items: start;
  gap: 80px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 40px 80px;
  display: grid;
}

.ucd-hero-title {
  letter-spacing: -.02em;
  color: #fff;
  margin-bottom: 24px;
  font-size: clamp(32px, 5vw, 52px);
  font-weight: 600;
  line-height: 1.12;
}

.ucd-hero-desc {
  color: #ffffff8c;
  max-width: 580px;
  margin-bottom: 32px;
  font-size: 17px;
  line-height: 1.7;
}

.ucd-try-btn {
  color: #fff;
  border: 1px solid #fff3;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.ucd-try-btn:hover {
  background: #ffffff0d;
  border-color: #ffffff4d;
}

.ucd-hero-meta {
  flex-direction: column;
  gap: 24px;
  padding-top: 20px;
  display: flex;
}

.ucd-meta-item {
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.ucd-meta-icon {
  color: #ffffff4d;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  margin-top: 2px;
}

.ucd-meta-label {
  color: #ffffff59;
  margin-bottom: 2px;
  font-size: 12px;
}

.ucd-meta-value {
  color: #fffc;
  font-size: 14px;
  font-weight: 500;
}

.ucd-copy-link {
  color: #fff9;
  cursor: pointer;
  text-underline-offset: 3px;
  font-size: 14px;
  font-weight: 500;
  -webkit-text-decoration: underline #fff3;
  text-decoration: underline #fff3;
  transition: color .2s;
}

.ucd-copy-link:hover {
  color: #ffffffe6;
}

.ucd-content-area {
  grid-template-columns: 1fr 420px;
  align-items: start;
  gap: 60px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px 80px;
  display: grid;
}

.ucd-steps {
  flex-direction: column;
  gap: 60px;
  display: flex;
}

.ucd-step {
  align-items: flex-start;
  gap: 24px;
  display: flex;
}

.ucd-step-number {
  color: #ffffff80;
  border: 1px solid #ffffff1f;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.ucd-step-content {
  flex: 1;
}

.ucd-step-title {
  letter-spacing: -.01em;
  color: #fff;
  margin-bottom: 16px;
  font-size: 24px;
  font-weight: 600;
}

.ucd-step-text {
  color: #ffffff80;
  margin-bottom: 16px;
  font-size: 15px;
  line-height: 1.75;
}

.ucd-step-text strong {
  color: #ffffffb3;
  font-weight: 600;
}

.ucd-prompt-block {
  background: #ffffff08;
  border: 1px solid #ffffff0f;
  border-radius: 12px;
  margin: 20px 0;
  padding: 24px;
}

.ucd-prompt-text {
  color: #ffffff8c;
  white-space: pre-wrap;
  font-size: 15px;
  font-style: italic;
  line-height: 1.7;
}

.ucd-prompt-actions {
  justify-content: flex-end;
  gap: 8px;
  margin-top: 16px;
  display: flex;
}

.ucd-prompt-copy {
  color: #ffffff4d;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff1a;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  transition: all .2s;
  display: flex;
}

.ucd-prompt-copy:hover {
  color: #fff9;
  border-color: #fff3;
}

.ucd-prompt-try {
  color: #fff;
  cursor: pointer;
  background: #7c3aed;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: background .2s;
  display: inline-flex;
}

.ucd-prompt-try:hover {
  background: #6d28d9;
}

.ucd-feature-callout {
  border: 1px solid #ffffff14;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  margin: 16px 0;
  padding: 14px 20px;
  display: flex;
}

.ucd-feature-callout-left {
  color: #fff9;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  display: flex;
}

.ucd-feature-callout-icon {
  color: #7c3aed99;
  width: 20px;
  height: 20px;
}

.ucd-visual {
  position: sticky;
  top: 100px;
}

.ucd-visual-frame {
  background: #ffffff05;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  overflow: hidden;
}

.ucd-visual-img {
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 0;
  display: flex;
}

.ucd-visual-action {
  border-top: 1px solid #ffffff0a;
  justify-content: center;
  padding: 14px;
  display: flex;
}

.ucd-visual-action a {
  color: #ffffff80;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  transition: color .2s;
  display: flex;
}

.ucd-visual-action a:hover {
  color: #fffc;
}

.ucm-chat {
  background: #0a0a0c;
  border: 1px solid #ffffff0f;
  border-radius: 10px;
  flex-direction: column;
  width: 100%;
  display: flex;
  overflow: hidden;
}

.ucm-chat-header {
  border-bottom: 1px solid #ffffff0a;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  display: flex;
}

.ucm-dot {
  background: #ffffff1f;
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.ucm-chat-title {
  color: #ffffff40;
  margin-left: 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

.ucm-chat-body {
  max-height: 480px;
  padding: 16px;
  overflow-y: auto;
}

.ucm-msg-user {
  justify-content: flex-end;
  margin-bottom: 14px;
  display: flex;
}

.ucm-msg-user-bubble {
  color: #ffffffb3;
  background: #7c3aed1f;
  border-radius: 14px 14px 4px;
  max-width: 85%;
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.5;
}

.ucm-msg-ai {
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 14px;
  display: flex;
}

.ucm-ai-avatar {
  background: #ffffff0a;
  border-radius: 50%;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  overflow: hidden;
}

.ucm-ai-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.ucm-ai-content {
  color: #ffffff8c;
  flex: 1;
  font-size: 13px;
  line-height: 1.7;
}

.ucm-ai-content strong {
  color: #ffffffbf;
  font-weight: 600;
}

.ucm-ai-content ul, .ucm-ai-content ol {
  margin: 8px 0;
  padding-left: 18px;
}

.ucm-ai-content li {
  margin-bottom: 4px;
}

.ucm-ai-content code {
  color: #ffffffa6;
  background: #ffffff0f;
  border-radius: 3px;
  padding: 2px 5px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
}

.ucm-ai-content pre {
  background: #ffffff0a;
  border: 1px solid #ffffff0f;
  border-radius: 8px;
  margin: 10px 0;
  padding: 12px;
  overflow-x: auto;
}

.ucm-ai-content pre code {
  color: #fff9;
  background: none;
  padding: 0;
  font-size: 12px;
  line-height: 1.6;
}

.ucm-chat-input {
  border-top: 1px solid #ffffff0a;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  display: flex;
}

.ucm-chat-input-field {
  color: #ffffff40;
  background: #ffffff0a;
  border: 1px solid #ffffff0f;
  border-radius: 8px;
  flex: 1;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 12px;
}

.ucm-chat-input-send {
  color: #7c3aed99;
  background: #7c3aed33;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  width: 28px;
  height: 28px;
  display: flex;
}

.ucm-voice {
  text-align: center;
  background: #0a0a0c;
  border: 1px solid #ffffff0f;
  border-radius: 10px;
  width: 100%;
  padding: 32px 20px;
  overflow: hidden;
}

.ucm-voice-avatar {
  background: #7c3aed14;
  border: 2px solid #7c3aed4d;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  margin: 0 auto 12px;
  display: flex;
  overflow: hidden;
}

.ucm-voice-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.ucm-voice-name {
  color: #fffc;
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 600;
}

.ucm-voice-role {
  color: #ffffff59;
  margin-bottom: 20px;
  font-size: 12px;
}

.ucm-voice-wave {
  justify-content: center;
  align-items: center;
  gap: 3px;
  height: 32px;
  margin-bottom: 16px;
  display: flex;
}

.ucm-voice-bar {
  background: #7c3aed80;
  border-radius: 2px;
  width: 4px;
  animation: .6s ease-in-out infinite alternate ucm-wave;
}

.ucm-voice-bar:first-child {
  height: 10px;
  animation-delay: 0s;
}

.ucm-voice-bar:nth-child(2) {
  height: 18px;
  animation-delay: 80ms;
}

.ucm-voice-bar:nth-child(3) {
  height: 28px;
  animation-delay: .16s;
}

.ucm-voice-bar:nth-child(4) {
  height: 22px;
  animation-delay: .24s;
}

.ucm-voice-bar:nth-child(5) {
  height: 14px;
  animation-delay: .32s;
}

.ucm-voice-bar:nth-child(6) {
  height: 24px;
  animation-delay: .12s;
}

.ucm-voice-bar:nth-child(7) {
  height: 16px;
  animation-delay: .2s;
}

@keyframes ucm-wave {
  to {
    height: 6px;
  }
}

.ucm-voice-status {
  color: #7c3aed99;
  font-size: 12px;
  font-weight: 500;
}

.ucm-voice-transcript {
  text-align: left;
  border-top: 1px solid #ffffff0a;
  margin-top: 16px;
  padding-top: 16px;
}

.ucm-voice-transcript p {
  color: #fff6;
  margin-bottom: 8px;
  font-size: 12px;
  line-height: 1.6;
}

.ucm-voice-transcript .ucm-voice-user {
  color: #fff9;
}

.ucm-canvas {
  background: #0a0a0c;
  border: 1px solid #ffffff0f;
  border-radius: 10px;
  width: 100%;
  overflow: hidden;
}

.ucm-canvas-header {
  border-bottom: 1px solid #ffffff0a;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  display: flex;
}

.ucm-canvas-tabs {
  gap: 0;
  margin-left: 12px;
  display: flex;
}

.ucm-canvas-tab {
  color: #ffffff40;
  border-bottom: 1px solid #0000;
  padding: 4px 10px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
}

.ucm-canvas-tab.active {
  color: #fff9;
  border-bottom-color: #7c3aed80;
}

.ucm-canvas-split {
  grid-template-columns: 1fr 1fr;
  min-height: 300px;
  display: grid;
}

.ucm-canvas-code {
  color: #ffffff59;
  white-space: pre;
  border-right: 1px solid #ffffff0a;
  padding: 12px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  line-height: 1.6;
  overflow: hidden;
}

.ucm-canvas-preview {
  background: #ffffff03;
  justify-content: center;
  align-items: center;
  padding: 12px;
  display: flex;
}

.ucm-research {
  background: #0a0a0c;
  border: 1px solid #ffffff0f;
  border-radius: 10px;
  width: 100%;
  padding: 20px;
  overflow: hidden;
}

.ucm-research-header {
  color: #7c3aed99;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 12px;
  font-size: 11px;
  font-weight: 600;
}

.ucm-research-query {
  color: #ffffffb3;
  border-bottom: 1px solid #ffffff0f;
  margin-bottom: 16px;
  padding-bottom: 12px;
  font-size: 14px;
  font-weight: 500;
}

.ucm-research-sources {
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 16px;
  display: flex;
}

.ucm-research-source {
  color: #ffffff59;
  background: #ffffff0a;
  border: 1px solid #ffffff0f;
  border-radius: 4px;
  padding: 3px 8px;
  font-size: 10px;
}

.ucm-research-content {
  color: #ffffff73;
  font-size: 12px;
  line-height: 1.7;
}

.ucm-research-content strong {
  color: #ffffffa6;
}

.ucm-agent {
  background: #0a0a0c;
  border: 1px solid #ffffff0f;
  border-radius: 10px;
  width: 100%;
  padding: 20px;
  overflow: hidden;
}

.ucm-agent-header {
  color: #ffffffb3;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.ucm-agent-field {
  margin-bottom: 12px;
}

.ucm-agent-label {
  color: #ffffff59;
  margin-bottom: 4px;
  font-size: 11px;
}

.ucm-agent-input {
  color: #ffffff80;
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 6px;
  width: 100%;
  padding: 8px 10px;
  font-family: inherit;
  font-size: 12px;
}

.ucm-agent-textarea {
  color: #fff6;
  resize: none;
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 6px;
  width: 100%;
  min-height: 60px;
  padding: 8px 10px;
  font-family: inherit;
  font-size: 11px;
}

.ucm-agent-publish {
  color: #7c3aedcc;
  background: #7c3aed33;
  border: 1px solid #7c3aed4d;
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 8px 16px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.ucd-cta {
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 40px 80px;
}

.ucd-cta-inner {
  align-items: flex-start;
  gap: 16px;
  display: flex;
}

.ucd-cta-icon {
  color: #fff6;
  border: 1px solid #ffffff1a;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  display: flex;
}

.ucd-cta-content {
  flex: 1;
}

.ucd-cta-title {
  margin-bottom: 8px;
  font-size: 24px;
  font-weight: 600;
}

.ucd-cta-desc {
  color: #ffffff73;
  margin-bottom: 20px;
  font-size: 15px;
  line-height: 1.6;
}

.ucd-related {
  border-top: 1px solid #ffffff0f;
  padding: 80px 0;
}

.ucd-related-inner {
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.ucd-related-icon {
  color: #ffffff4d;
  justify-content: center;
  margin-bottom: 20px;
  display: flex;
}

.ucd-related-title {
  margin-bottom: 48px;
  font-size: 32px;
  font-weight: 600;
}

.ucd-related-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  display: grid;
}

.ucd-related-card {
  text-align: left;
  background: none;
  border: 1px solid #ffffff14;
  border-radius: 12px;
  flex-direction: column;
  justify-content: space-between;
  min-height: 160px;
  padding: 28px 20px;
  transition: border-color .2s, transform .2s;
  display: flex;
}

.ucd-related-card:hover {
  border-color: #ffffff29;
  transform: translateY(-2px);
}

.ucd-related-card-title {
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.4;
}

.ucd-related-card-label {
  color: #ffffff59;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  font-size: 13px;
  display: flex;
}

@media (max-width: 1100px) {
  .uc-grid {
    grid-template-columns: repeat(2, 1fr);
    padding: 30px 24px;
  }
}

@media (max-width: 1024px) {
  .ucd-breadcrumb {
    padding: 96px 24px 16px;
  }

  .ucd-hero {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 30px 24px 50px;
  }

  .ucd-hero-meta {
    flex-flow: wrap;
    gap: 20px;
  }

  .ucd-content-area {
    grid-template-columns: 1fr;
    padding: 0 24px 60px;
  }

  .ucd-visual {
    order: -1;
    margin-bottom: 30px;
    position: static;
  }

  .ucd-related-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .uc-grid {
    grid-template-columns: 1fr;
  }

  .uc-hero {
    padding: 120px 24px 40px;
  }

  .uc-filter-bar {
    padding: 12px 20px;
  }

  .uc-filter-inner {
    gap: 8px;
  }

  .uc-filter-search {
    order: -1;
    min-width: 100%;
  }

  .uc-view-btns {
    display: none;
  }

  .uc-bottom-cta {
    padding: 40px 24px 80px;
  }

  .uc-bottom-cta-inner {
    padding: 32px 24px;
  }
}

@media (max-width: 640px) {
  .ucd-breadcrumb {
    padding: 90px 20px 16px;
    font-size: 12px;
  }

  .ucd-hero {
    padding: 20px 20px 40px;
  }

  .ucd-hero-title {
    font-size: 28px;
  }

  .ucd-content-area {
    padding: 0 20px 60px;
  }

  .ucd-cta {
    padding: 40px 20px 60px;
  }

  .ucd-related-inner {
    padding: 0 20px;
  }

  .ucd-related-grid {
    grid-template-columns: 1fr;
  }

  .ucd-hero-meta {
    flex-direction: column;
  }

  .ucd-step {
    flex-direction: column;
    gap: 12px;
  }

  .ucd-cta-inner {
    flex-direction: column;
  }
}

.light-mode .uc-page, .light-mode .ucd-page {
  color: #111827;
  background: #fff;
}

.light-mode .uc-hero-label {
  color: #00000059;
}

.light-mode .uc-hero p {
  color: #00000080;
}

.light-mode .uc-filter-bar {
  background: #ffffffe6;
  border-bottom-color: #0000000f;
}

.light-mode .uc-filter-select {
  color: #0009;
  background-color: #00000008;
  background-position: right 10px center;
  background-repeat: no-repeat;
  border-color: #0000001a;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.35)' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
}

.light-mode .uc-filter-select option {
  color: #111;
  background: #fff;
}

.light-mode .uc-filter-search {
  color: #111;
  background-color: #00000008;
  background-position: 12px;
  background-repeat: no-repeat;
  border-color: #0000001a;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='rgba(0,0,0,0.3)' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='M21 21l-4.3-4.3'/%3E%3C/svg%3E") !important;
}

.light-mode .uc-filter-search::placeholder {
  color: #0000004d;
}

.light-mode .uc-view-btn {
  color: #0000004d;
  border-color: #0000001a;
}

.light-mode .uc-view-btn.active, .light-mode .uc-view-btn:hover {
  color: #0009;
  border-color: #0003;
}

.light-mode .uc-card {
  border-color: #00000014;
}

.light-mode .uc-card:hover {
  border-color: #00000026;
}

.light-mode .uc-card-badge {
  color: #0006;
  background: #0000000a;
}

.light-mode .uc-card-desc {
  color: #00000080;
}

.light-mode .uc-card-footer {
  border-top-color: #0000000f;
}

.light-mode .uc-card-category {
  color: #00000059;
}

.light-mode .uc-card-arrow {
  color: #00000026;
}

.light-mode .uc-card:hover .uc-card-arrow {
  color: #0006;
}

.light-mode .uc-mini-mockup {
  background: #00000005;
  border-color: #0000000f;
}

.light-mode .uc-mini-header {
  border-bottom-color: #0000000f;
}

.light-mode .uc-mini-dot {
  background: #0000001f;
}

.light-mode .uc-mini-msg-user span {
  color: #00000080;
  background: #7c3aed1a;
}

.light-mode .uc-mini-msg-ai span {
  color: #0006;
}

.light-mode .uc-mini-code {
  color: #0000004d;
  border-right-color: #0000000f;
}

.light-mode .uc-mini-preview-box {
  background: #7c3aed08;
  border-color: #7c3aed26;
}

.light-mode .uc-mini-research-line {
  background: #0000000f;
}

.light-mode .uc-mini-agent-field {
  background: #00000008;
  border-color: #00000014;
}

.light-mode .uc-no-results {
  color: #00000059;
}

.light-mode .uc-bottom-cta-inner {
  border-color: #00000014;
}

.light-mode .uc-bottom-cta p {
  color: #00000080;
}

.light-mode .ucd-breadcrumb {
  color: #0006;
}

.light-mode .ucd-breadcrumb a:hover {
  color: #000000b3;
}

.light-mode .ucd-bc-sep {
  color: #0003;
}

.light-mode .ucd-bc-current {
  color: #0009;
}

.light-mode .ucd-hero-title {
  color: #111827;
}

.light-mode .ucd-hero-desc {
  color: #0000008c;
}

.light-mode .ucd-try-btn {
  color: #111827;
  border-color: #00000026;
}

.light-mode .ucd-try-btn:hover {
  background: #0000000a;
  border-color: #00000040;
}

.light-mode .ucd-meta-icon {
  color: #00000059;
}

.light-mode .ucd-meta-label {
  color: #0006;
}

.light-mode .ucd-meta-value {
  color: #000c;
}

.light-mode .ucd-copy-link {
  color: #00000080;
  text-decoration-color: #0003;
}

.light-mode .ucd-copy-link:hover {
  color: #000c;
}

.light-mode .ucd-step-number {
  color: #00000080;
  border-color: #0000001a;
}

.light-mode .ucd-step-title {
  color: #111827;
}

.light-mode .ucd-step-text {
  color: #0000008c;
}

.light-mode .ucd-step-text strong {
  color: #000000bf;
}

.light-mode .ucd-prompt-block {
  background: #00000005;
  border-color: #0000000f;
}

.light-mode .ucd-prompt-text {
  color: #0000008c;
}

.light-mode .ucd-prompt-copy {
  color: #00000059;
  border-color: #0000001a;
}

.light-mode .ucd-prompt-copy:hover {
  color: #0009;
  border-color: #0003;
}

.light-mode .ucd-feature-callout {
  border-color: #00000014;
}

.light-mode .ucd-feature-callout-left {
  color: #0009;
}

.light-mode .ucd-visual-frame {
  background: #00000003;
  border-color: #00000014;
}

.light-mode .ucd-visual-action {
  border-top-color: #0000000f;
}

.light-mode .ucd-visual-action a {
  color: #00000080;
}

.light-mode .ucd-visual-action a:hover {
  color: #000c;
}

.light-mode .ucm-chat, .light-mode .ucm-voice, .light-mode .ucm-canvas, .light-mode .ucm-research, .light-mode .ucm-agent {
  background: #f8f8fa;
  border-color: #00000014;
}

.light-mode .ucm-chat-header {
  border-bottom-color: #0000000f;
}

.light-mode .ucm-dot {
  background: #0000001f;
}

.light-mode .ucm-chat-title {
  color: #0000004d;
}

.light-mode .ucm-msg-user-bubble {
  color: #000000b3;
  background: #7c3aed14;
}

.light-mode .ucm-ai-content {
  color: #0009;
}

.light-mode .ucm-ai-content strong {
  color: #000000d9;
}

.light-mode .ucm-ai-content code {
  color: #000000a6;
  background: #0000000d;
}

.light-mode .ucm-ai-content pre {
  background: #00000008;
  border-color: #0000000f;
}

.light-mode .ucm-ai-content pre code {
  color: #0009;
}

.light-mode .ucm-chat-input {
  border-top-color: #0000000f;
}

.light-mode .ucm-chat-input-field {
  color: #0000004d;
  background: #00000008;
  border-color: #00000014;
}

.light-mode .ucm-voice-name {
  color: #000000d9;
}

.light-mode .ucm-voice-role {
  color: #0006;
}

.light-mode .ucm-voice-transcript {
  border-top-color: #0000000f;
}

.light-mode .ucm-voice-transcript p {
  color: #00000080;
}

.light-mode .ucm-canvas-header {
  border-bottom-color: #0000000f;
}

.light-mode .ucm-canvas-tab {
  color: #0000004d;
}

.light-mode .ucm-canvas-tab.active {
  color: #000000b3;
}

.light-mode .ucm-canvas-code {
  color: #0006;
  border-right-color: #0000000f;
}

.light-mode .ucm-canvas-preview {
  background: #00000003;
}

.light-mode .ucm-research-query {
  color: #000000bf;
  border-bottom-color: #0000000f;
}

.light-mode .ucm-research-source {
  color: #0006;
  background: #00000008;
  border-color: #00000014;
}

.light-mode .ucm-research-content {
  color: #0000008c;
}

.light-mode .ucm-research-content strong {
  color: #000000bf;
}

.light-mode .ucm-agent-header {
  color: #000000b3;
}

.light-mode .ucm-agent-label {
  color: #0006;
}

.light-mode .ucm-agent-input {
  color: #0009;
  background: #00000008;
  border-color: #00000014;
}

.light-mode .ucm-agent-textarea {
  color: #00000080;
  background: #00000008;
  border-color: #00000014;
}

.light-mode .ucd-cta-icon {
  color: #0006;
  border-color: #0000001a;
}

.light-mode .ucd-cta-desc {
  color: #00000080;
}

.light-mode .ucd-related {
  border-top-color: #0000000f;
}

.light-mode .ucd-related-icon {
  color: #0000004d;
}

.light-mode .ucd-related-card {
  border-color: #00000014;
}

.light-mode .ucd-related-card:hover {
  border-color: #00000029;
}

.light-mode .ucd-related-card-title {
  color: #111827;
}

.light-mode .ucd-related-card-label {
  color: #0006;
}

:root {
  --research-bg: #000;
  --research-text-primary: #fff;
  --research-text-secondary: #ffffff8c;
  --research-text-muted: #ffffff59;
  --research-border: #ffffff14;
  --research-border-strong: #ffffff1f;
  --research-card-bg: #ffffff05;
  --research-card-bg-hover: #ffffff0a;
}

.research-page {
  z-index: 1;
  padding-top: 96px;
  position: relative;
}

.research-container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 24px;
}

.research-section {
  border-top: 1px solid var(--research-border);
  padding: 80px 0;
}

.research-section:first-child {
  border-top: none;
}

.research-section-label {
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--research-text-muted);
  margin-bottom: 16px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.research-section-title {
  letter-spacing: -.02em;
  margin-bottom: 16px;
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 700;
  line-height: 1.15;
}

.research-section-subtitle {
  color: var(--research-text-secondary);
  max-width: 640px;
  font-size: 17px;
  line-height: 1.6;
}

.research-hero {
  text-align: center;
  padding: 80px 0 60px;
}

.research-hero .research-section-subtitle {
  max-width: 560px;
  margin: 0 auto;
}

.research-hero-title {
  letter-spacing: -.03em;
  margin-bottom: 20px;
  font-size: clamp(36px, 5.5vw, 56px);
  font-weight: 800;
  line-height: 1.08;
}

.model-cards-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 48px;
  display: grid;
}

@media (max-width: 1024px) {
  .model-cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .model-cards-grid {
    grid-template-columns: 1fr;
  }
}

.model-card {
  background: var(--research-card-bg);
  border: 1px solid var(--research-border);
  border-radius: 16px;
  flex-direction: column;
  padding: 0;
  transition: border-color .25s, background .25s;
  display: flex;
  overflow: hidden;
}

.model-card:hover {
  border-color: var(--research-border-strong);
  background: var(--research-card-bg-hover);
}

.model-card-accent {
  width: 100%;
  height: 3px;
}

.model-card-body {
  flex-direction: column;
  flex: 1;
  padding: 24px 20px;
  display: flex;
}

.model-card-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 4px;
  display: flex;
}

.model-card-name {
  letter-spacing: -.01em;
  font-size: 22px;
  font-weight: 700;
}

.model-card-role {
  text-transform: uppercase;
  letter-spacing: .5px;
  border-radius: 6px;
  padding: 3px 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.model-card-specs {
  flex-wrap: wrap;
  gap: 6px;
  margin: 14px 0 16px;
  display: flex;
}

.model-card-spec {
  color: var(--research-text-secondary);
  white-space: nowrap;
  background: #ffffff0a;
  border-radius: 6px;
  padding: 3px 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 500;
}

.model-card-desc {
  color: var(--research-text-secondary);
  flex: 1;
  margin-bottom: 18px;
  font-size: 13.5px;
  line-height: 1.65;
}

.model-card-bestfor-label {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--research-text-muted);
  margin-bottom: 8px;
  font-size: 11px;
  font-weight: 600;
}

.model-card-tags {
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 16px;
  display: flex;
}

.model-card-tag {
  color: var(--research-text-secondary);
  background: #ffffff0d;
  border-radius: 999px;
  padding: 3px 10px;
  font-size: 11px;
  font-weight: 500;
}

.model-card-availability {
  color: var(--research-text-muted);
  border-top: 1px solid var(--research-border);
  margin-top: auto;
  padding-top: 14px;
  font-size: 11px;
  font-weight: 500;
}

.model-card-availability span {
  color: var(--research-text-secondary);
}

.comparison-table-wrap {
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--research-border);
  background: var(--research-card-bg);
  border-radius: 16px;
  margin-top: 40px;
  overflow-x: auto;
}

.comparison-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 700px;
  font-size: 14px;
}

.comparison-table thead th {
  text-align: center;
  border-bottom: 1px solid var(--research-border);
  white-space: nowrap;
  padding: 16px 20px;
  font-size: 15px;
  font-weight: 600;
}

.comparison-table thead th:first-child {
  text-align: left;
  color: var(--research-text-secondary);
  font-size: 13px;
  font-weight: 500;
}

.comparison-table tbody tr {
  border-bottom: 1px solid var(--research-border);
  transition: background .15s;
}

.comparison-table tbody tr:last-child {
  border-bottom: none;
}

.comparison-table tbody tr:hover {
  background: #ffffff05;
}

.comparison-table td {
  text-align: center;
  color: var(--research-text-secondary);
  padding: 13px 20px;
}

.comparison-table td:first-child {
  text-align: left;
  color: var(--research-text-primary);
  white-space: nowrap;
  font-weight: 500;
}

.comparison-table .dots {
  align-items: center;
  gap: 3px;
  display: inline-flex;
}

.comparison-table .dot {
  background: #ffffff1f;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  transition: background .2s;
}

.comparison-table .dot.filled {
  background: currentColor;
}

.comparison-table .text-val {
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  font-weight: 500;
}

.capabilities-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 48px;
  display: grid;
}

@media (max-width: 768px) {
  .capabilities-grid {
    grid-template-columns: 1fr;
  }
}

.capability-card {
  background: var(--research-card-bg);
  border: 1px solid var(--research-border);
  border-radius: 16px;
  padding: 28px 24px;
  transition: border-color .25s, background .25s;
}

.capability-card:hover {
  border-color: var(--research-border-strong);
  background: var(--research-card-bg-hover);
}

.capability-card-icon {
  margin-bottom: 16px;
  font-size: 28px;
  display: block;
}

.capability-card-title {
  margin-bottom: 8px;
  font-size: 17px;
  font-weight: 650;
}

.capability-card-desc {
  color: var(--research-text-secondary);
  font-size: 14px;
  line-height: 1.6;
}

.safety-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 48px;
  display: grid;
}

@media (max-width: 768px) {
  .safety-grid {
    grid-template-columns: 1fr;
  }
}

.safety-card {
  background: var(--research-card-bg);
  border: 1px solid var(--research-border);
  border-radius: 16px;
  padding: 32px 28px;
  transition: border-color .25s;
}

.safety-card:hover {
  border-color: var(--research-border-strong);
}

.safety-card-icon {
  color: var(--research-text-secondary);
  margin-bottom: 16px;
  font-size: 24px;
}

.safety-card-title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 650;
}

.safety-card-desc {
  color: var(--research-text-secondary);
  font-size: 14.5px;
  line-height: 1.7;
}

.tech-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 48px;
  display: grid;
}

@media (max-width: 768px) {
  .tech-grid {
    grid-template-columns: 1fr;
  }
}

.tech-card {
  background: var(--research-card-bg);
  border: 1px solid var(--research-border);
  border-radius: 16px;
  padding: 24px 22px;
  transition: border-color .25s;
}

.tech-card:hover {
  border-color: var(--research-border-strong);
}

.tech-card-title {
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 650;
}

.tech-card-desc {
  color: var(--research-text-secondary);
  font-size: 13.5px;
  line-height: 1.65;
}

.blog-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-top: 48px;
  display: grid;
}

@media (max-width: 768px) {
  .blog-grid {
    grid-template-columns: 1fr;
  }
}

.blog-card {
  background: var(--research-card-bg);
  border: 1px solid var(--research-border);
  color: inherit;
  border-radius: 16px;
  flex-direction: column;
  padding: 28px 24px;
  text-decoration: none;
  transition: border-color .25s, background .25s;
  display: flex;
}

.blog-card:hover {
  border-color: var(--research-border-strong);
  background: var(--research-card-bg-hover);
}

.blog-card-meta {
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  display: flex;
}

.blog-card-tag {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: #a855f7;
  background: #a855f71f;
  border-radius: 6px;
  padding: 3px 10px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 600;
}

.blog-card-tag.tag-engineering {
  color: #3b82f6;
  background: #3b82f61f;
}

.blog-card-tag.tag-safety {
  color: #22c55e;
  background: #22c55e1f;
}

.blog-card-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--research-text-muted);
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 500;
}

.blog-card-title {
  margin-bottom: 10px;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.35;
}

.blog-card-desc {
  color: var(--research-text-secondary);
  flex: 1;
  font-size: 13.5px;
  line-height: 1.6;
}

.blog-card-date {
  color: var(--research-text-muted);
  border-top: 1px solid var(--research-border);
  margin-top: 16px;
  padding-top: 14px;
  font-size: 12px;
}

.research-cta {
  text-align: center;
  border-top: 1px solid var(--research-border);
  padding: 80px 0 100px;
}

.research-cta-title {
  letter-spacing: -.02em;
  margin-bottom: 12px;
  font-size: clamp(28px, 4vw, 40px);
  font-weight: 700;
}

.research-cta-subtitle {
  color: var(--research-text-secondary);
  margin-bottom: 32px;
  font-size: 17px;
}

.btn-primary-cta {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 12px 28px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .2s, transform .15s;
  display: inline-flex;
}

.btn-primary-cta:hover {
  opacity: .88;
  transform: translateY(-1px);
}

.btn-text-link {
  color: var(--research-text-secondary);
  align-items: center;
  gap: 4px;
  margin-left: 24px;
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
  transition: color .2s;
  display: inline-flex;
}

.btn-text-link:hover {
  color: var(--research-text-primary);
}

.subscribe-link {
  color: var(--research-text-secondary);
  align-items: center;
  gap: 6px;
  margin-top: 32px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: color .2s;
  display: inline-flex;
}

.subscribe-link:hover {
  color: var(--research-text-primary);
}

html:not(.dark) body, .light-mode body {
  --research-bg: #fff;
  --research-text-primary: #111827;
  --research-text-secondary: #4b5563;
  --research-text-muted: #9ca3af;
  --research-border: #00000014;
  --research-border-strong: #00000024;
  --research-card-bg: #00000005;
  --research-card-bg-hover: #0000000a;
}

html:not(.dark) .btn-primary-cta, .light-mode .btn-primary-cta {
  color: #fff;
  background: #111827;
}

html:not(.dark) .model-card-spec, .light-mode .model-card-spec {
  background: #0000000d;
}

html:not(.dark) .model-card-tag, .light-mode .model-card-tag {
  background: #0000000f;
}

html:not(.dark) .comparison-table tbody tr:hover, .light-mode .comparison-table tbody tr:hover {
  background: #00000005;
}

html:not(.dark) .comparison-table .dot, .light-mode .comparison-table .dot {
  background: #0000001a;
}

html:not(.dark) .btn-secondary-cta, .light-mode .btn-secondary-cta {
  color: #111827;
  border-color: #00000026;
}

html:not(.dark) .btn-secondary-cta:hover, .light-mode .btn-secondary-cta:hover {
  background: #0000000a;
  border-color: #00000040;
}

html:not(.dark) .subscribe-link, .light-mode .subscribe-link {
  color: var(--research-text-secondary);
}

:root {
  --pricing-bg: #000;
  --pricing-text-primary: #fff;
  --pricing-text-secondary: #ffffff80;
  --pricing-text-muted: #ffffff59;
  --pricing-border: #ffffff14;
  --pricing-border-strong: #ffffff1f;
  --pricing-card-bg: #ffffff05;
  --pricing-accent: #a855f7;
  --pricing-accent-dim: #a855f71f;
  --pricing-green: #22c55e;
  --pricing-green-dim: #22c55e1f;
}

.pricing-page {
  z-index: 1;
  padding-top: 96px;
  position: relative;
}

.pricing-container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 24px;
}

.pricing-breadcrumb {
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--pricing-text-muted);
  margin-bottom: 40px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.pricing-tabs {
  border: 1px solid var(--pricing-border);
  background: #ffffff0a;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  width: fit-content;
  margin: 0 auto 48px;
  padding: 4px;
  display: flex;
}

.pricing-tab {
  color: var(--pricing-text-secondary);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-radius: 8px;
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}

.pricing-tab:hover {
  color: var(--pricing-text-primary);
}

.pricing-tab.active {
  color: var(--pricing-text-primary);
  background: #ffffff14;
}

.pricing-controls {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin-bottom: 48px;
  display: flex;
}

.pricing-toggle {
  border: 1px solid var(--pricing-border);
  background: #ffffff0a;
  border-radius: 10px;
  align-items: center;
  gap: 4px;
  padding: 4px;
  display: flex;
}

.pricing-toggle-btn {
  color: var(--pricing-text-secondary);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-radius: 7px;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.pricing-toggle-btn:hover {
  color: var(--pricing-text-primary);
}

.pricing-toggle-btn.active {
  color: var(--pricing-text-primary);
  background: #ffffff14;
}

.pricing-badge {
  color: var(--pricing-green);
  background: var(--pricing-green-dim);
  letter-spacing: .02em;
  border-radius: 4px;
  padding: 2px 6px;
  font-size: 10px;
  font-weight: 600;
}

.plans-container {
  border: 1px solid var(--pricing-border-strong);
  background: var(--pricing-card-bg);
  border-radius: 16px;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 16px;
  display: grid;
  overflow: hidden;
}

.plan-card {
  flex-direction: column;
  padding: 32px 28px;
  display: flex;
  position: relative;
}

.plan-card:not(:last-child) {
  border-right: 1px solid #ffffff0a;
}

.plan-card--popular:before {
  content: "";
  background: var(--pricing-accent);
  height: 2px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

.plan-icon {
  width: 40px;
  height: 40px;
  margin-bottom: 20px;
}

.plan-icon svg {
  width: 100%;
  height: 100%;
}

.plan-name {
  color: var(--pricing-text-primary);
  letter-spacing: -.02em;
  align-items: center;
  gap: 10px;
  margin-bottom: 4px;
  font-size: 20px;
  font-weight: 600;
  display: flex;
}

.plan-popular-badge {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #fff;
  background: #a855f7;
  border-radius: 4px;
  padding: 3px 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 9px;
  font-weight: 600;
}

.plan-tagline {
  color: var(--pricing-text-secondary);
  margin-bottom: 24px;
  font-size: 13px;
}

.plan-price {
  margin-bottom: 4px;
}

.plan-price-amount {
  color: var(--pricing-text-primary);
  letter-spacing: -.03em;
  font-size: 36px;
  font-weight: 700;
  line-height: 1.1;
}

.plan-price-period {
  color: var(--pricing-text-secondary);
  font-size: 14px;
  font-weight: 400;
}

.plan-price-desc {
  color: var(--pricing-text-muted);
  min-height: 36px;
  margin-bottom: 20px;
  font-size: 12px;
  line-height: 1.5;
}

.plan-trial {
  color: var(--pricing-green);
  margin-top: -12px;
  margin-bottom: 16px;
  font-size: 12px;
  font-weight: 500;
}

.plan-cta {
  text-align: center;
  cursor: pointer;
  border-radius: 10px;
  width: 100%;
  margin-bottom: 28px;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: block;
}

.plan-cta--outline {
  color: var(--pricing-text-primary);
  border: 1px solid var(--pricing-border-strong);
  background: none;
}

.plan-cta--outline:hover {
  background: #ffffff0d;
  border-color: #fff3;
}

.plan-cta--primary {
  color: #000;
  background: #fff;
  border: 1px solid #fff;
}

.plan-cta--primary:hover {
  background: #e5e5e5;
  border-color: #e5e5e5;
  transform: translateY(-1px);
}

.plan-features {
  flex: 1;
  list-style: none;
}

.plan-features li {
  color: var(--pricing-text-secondary);
  align-items: flex-start;
  gap: 10px;
  padding: 6px 0;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
}

.plan-features li .check {
  width: 16px;
  height: 16px;
  color: var(--pricing-accent);
  opacity: .8;
  flex-shrink: 0;
  margin-top: 2px;
}

.plan-features .features-divider {
  color: var(--pricing-text-muted);
  padding: 8px 0 4px;
  font-size: 12px;
  font-weight: 500;
  display: block;
}

.pricing-footnote {
  color: var(--pricing-text-muted);
  text-align: center;
  margin-bottom: 80px;
  font-size: 12px;
}

.pricing-footnote a {
  color: var(--pricing-text-muted);
  text-underline-offset: 2px;
  text-decoration: underline;
}

.pricing-footnote a:hover {
  color: var(--pricing-text-secondary);
}

.compare-section {
  margin-bottom: 80px;
}

.compare-title {
  letter-spacing: -.02em;
  color: var(--pricing-text-primary);
  text-align: center;
  margin-bottom: 48px;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
}

.compare-table-wrapper {
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--pricing-border-strong);
  border-radius: 16px;
  margin-bottom: 16px;
  overflow-x: auto;
}

.compare-table {
  border-collapse: collapse;
  width: 100%;
  min-width: 700px;
}

.compare-table thead th {
  color: var(--pricing-text-primary);
  text-align: center;
  border-bottom: 1px solid var(--pricing-border);
  background: #ffffff05;
  padding: 20px 24px;
  font-size: 14px;
  font-weight: 600;
}

.compare-table thead th:first-child {
  text-align: left;
  width: 40%;
}

.compare-table thead th.popular {
  color: var(--pricing-accent);
}

.compare-table .section-header td {
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--pricing-text-muted);
  border-bottom: 1px solid var(--pricing-border);
  background: #ffffff04;
  padding: 20px 24px 12px;
  font-size: 12px;
  font-weight: 600;
}

.compare-table tbody td {
  color: var(--pricing-text-secondary);
  text-align: center;
  border-bottom: 1px solid #ffffff08;
  padding: 14px 24px;
  font-size: 13px;
}

.compare-table tbody td:first-child {
  text-align: left;
  color: var(--pricing-text-secondary);
}

.compare-table tbody tr:last-child td {
  border-bottom: none;
}

.compare-check {
  width: 20px;
  height: 20px;
  color: var(--pricing-accent);
  opacity: .7;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.compare-dash {
  color: #ffffff26;
  font-size: 18px;
}

.compare-cross {
  color: #fff3;
  font-size: .85em;
}

.compare-text {
  color: var(--pricing-text-secondary);
  font-size: 13px;
}

.compare-pill {
  color: var(--pricing-text-secondary);
  border: 1px solid #ffffff26;
  border-radius: 4px;
  padding: 2px 8px;
  font-size: .72rem;
  display: inline-block;
}

.compare-table td .model-desc {
  color: var(--pricing-text-muted);
  font-weight: 400;
}

.faq-section {
  max-width: 760px;
  margin: 0 auto 100px;
}

.faq-title {
  letter-spacing: -.02em;
  color: var(--pricing-text-primary);
  text-align: center;
  margin-bottom: 40px;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 600;
}

.faq-item {
  border-bottom: 1px solid var(--pricing-border);
}

.faq-question {
  width: 100%;
  color: var(--pricing-text-primary);
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 20px 0;
  font-size: 15px;
  font-weight: 500;
  transition: color .2s;
  display: flex;
}

.faq-question:hover {
  color: #fffc;
}

.faq-icon {
  width: 20px;
  height: 20px;
  color: var(--pricing-text-muted);
  flex-shrink: 0;
  transition: transform .3s;
}

.faq-item.open .faq-icon {
  transform: rotate(45deg);
}

.faq-answer {
  max-height: 0;
  transition: max-height .35s, padding .35s;
  overflow: hidden;
}

.faq-item.open .faq-answer {
  max-height: 300px;
}

.faq-answer-inner {
  color: var(--pricing-text-secondary);
  padding-bottom: 20px;
  font-size: 14px;
  line-height: 1.7;
}

.coming-soon-card {
  background: var(--pricing-card-bg);
  border: 1px solid var(--pricing-border-strong);
  text-align: center;
  border-radius: 16px;
  max-width: 640px;
  margin: 0 auto 100px;
  padding: 48px;
}

.coming-soon-badge {
  text-transform: uppercase;
  letter-spacing: .1em;
  color: var(--pricing-accent);
  background: var(--pricing-accent-dim);
  border-radius: 6px;
  margin-bottom: 24px;
  padding: 4px 12px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 600;
  display: inline-block;
}

.coming-soon-title {
  color: var(--pricing-text-primary);
  letter-spacing: -.02em;
  margin-bottom: 12px;
  font-size: 24px;
  font-weight: 600;
}

.coming-soon-desc {
  color: var(--pricing-text-secondary);
  max-width: 460px;
  margin-bottom: 32px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
  line-height: 1.6;
}

.coming-soon-features {
  text-align: left;
  grid-template-columns: 1fr 1fr;
  gap: 12px 24px;
  max-width: 420px;
  margin-bottom: 36px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}

.coming-soon-feature {
  color: var(--pricing-text-secondary);
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: flex;
}

.coming-soon-feature .check {
  width: 14px;
  height: 14px;
  color: var(--pricing-accent);
  opacity: .7;
  flex-shrink: 0;
}

.coming-soon-actions {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
  display: flex;
}

.coming-soon-btn {
  cursor: pointer;
  border-radius: 10px;
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
}

.coming-soon-btn--primary {
  color: #000;
  background: #fff;
  border: 1px solid #fff;
}

.coming-soon-btn--primary:hover {
  background: #e5e5e5;
  border-color: #e5e5e5;
  transform: translateY(-1px);
}

.coming-soon-btn--outline {
  color: var(--pricing-text-primary);
  border: 1px solid var(--pricing-border-strong);
  background: none;
}

.coming-soon-btn--outline:hover {
  background: #ffffff0d;
  border-color: #fff3;
}

.tab-content {
  display: none;
}

.tab-content.active {
  display: block;
}

@media (max-width: 1024px) {
  .plans-container {
    grid-template-columns: repeat(2, 1fr);
  }

  .plan-card:nth-child(2) {
    border-right: none;
  }

  .plan-card:first-child, .plan-card:nth-child(2) {
    border-bottom: 1px solid #ffffff0a;
  }
}

@media (max-width: 640px) {
  .pricing-page {
    padding-top: 80px;
  }

  .plans-container {
    grid-template-columns: 1fr;
  }

  .plan-card {
    border-bottom: 1px solid #ffffff0a;
    border-right: none !important;
  }

  .plan-card:last-child {
    border-bottom: none;
  }

  .pricing-tabs {
    width: calc(100% - 8px);
  }

  .pricing-tab {
    padding: 10px 16px;
    font-size: 13px;
  }

  .pricing-controls {
    gap: 12px;
  }

  .plan-card {
    padding: 28px 24px;
  }

  .coming-soon-card {
    padding: 32px 24px;
  }

  .coming-soon-features {
    grid-template-columns: 1fr;
  }

  .faq-question {
    font-size: 14px;
  }
}

.light-mode {
  --pricing-bg: #f9fafb;
  --pricing-text-primary: #111827;
  --pricing-text-secondary: #0000008c;
  --pricing-text-muted: #00000059;
  --pricing-border: #00000014;
  --pricing-border-strong: #0000001f;
  --pricing-card-bg: #00000005;
  --pricing-accent: #9333ea;
  --pricing-accent-dim: #9333ea1a;
  --pricing-green: #16a34a;
  --pricing-green-dim: #16a34a1a;
}

.light-mode .plan-cta--primary {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .plan-cta--primary:hover {
  background: #1f2937;
  border-color: #1f2937;
}

.light-mode .coming-soon-btn--primary {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .coming-soon-btn--primary:hover {
  background: #1f2937;
  border-color: #1f2937;
}

.light-mode .compare-cross {
  color: #0003;
}

.light-mode .compare-dash {
  color: #00000026;
}

.light-mode .compare-pill {
  border-color: #00000026;
}

.light-mode .compare-table .section-header td {
  background: #00000005;
}

.light-mode .pricing-tabs {
  background: #0000000a;
}

.light-mode .pricing-tab {
  color: #00000080;
}

.light-mode .pricing-tab.active {
  color: #111827;
  background: #0000000f;
}

.light-mode .pricing-tab:hover {
  color: #111827;
}

.light-mode .pricing-toggle {
  background: #0000000a;
}

.light-mode .pricing-toggle-btn {
  color: #00000080;
}

.light-mode .pricing-toggle-btn.active {
  color: #111827;
  background: #0000000f;
}

.light-mode .plan-card:not(:last-child) {
  border-right-color: #0000000f;
}

.light-mode .plan-cta--outline:hover, .light-mode .coming-soon-btn--outline:hover {
  background: #0000000a;
  border-color: #0003;
}

.light-mode .compare-table thead th {
  background: #00000005;
}

.light-mode .compare-table tbody td {
  border-bottom-color: #0000000d;
}

.light-mode .compare-table tbody tr:hover {
  background: #00000005;
}

.light-mode .faq-item {
  border-color: #0000000f;
}

.light-mode .faq-question {
  color: #000000b3;
}

.light-mode .faq-question:hover {
  color: #111827;
}

.light-mode .faq-question svg {
  color: #00000059;
}

.light-mode .faq-answer {
  color: #0000008c;
}

@media (max-width: 900px) {
  .light-mode .plan-card:first-child, .light-mode .plan-card:nth-child(2) {
    border-bottom-color: #0000000f;
  }
}

@media (max-width: 600px) {
  .light-mode .plan-card {
    border-bottom-color: #0000000f;
  }
}

#agentStars {
  z-index: 0;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.agents-page {
  z-index: 1;
  color: #fff;
  background: #000;
  padding-top: 64px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  position: relative;
  overflow-x: hidden;
}

.agents-page a {
  color: inherit;
  text-decoration: none;
}

.agents-container {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 28px;
}

.agents-page .reveal {
  opacity: 0;
  transition: opacity .7s cubic-bezier(.16, 1, .3, 1), transform .7s cubic-bezier(.16, 1, .3, 1);
  transform: translateY(24px);
}

.agents-page .reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.agents-label {
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #ffffff4d;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.agents-section-title {
  letter-spacing: -.03em;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 700;
  line-height: 1.15;
}

.agents-divider {
  border-top: 1px solid #ffffff0a;
}

.agents-hero {
  text-align: center;
  padding: 72px 28px 0;
}

.hero-badge {
  color: #fff9;
  background: #ffffff08;
  border: 1px solid #ffffff1f;
  border-radius: 999px;
  align-items: center;
  gap: 6px;
  margin-bottom: 28px;
  padding: 6px 18px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.hero-badge-dot {
  background: #22c55e;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  box-shadow: 0 0 6px #22c55e;
}

.agents-hero h1 {
  letter-spacing: -.04em;
  margin-bottom: 24px;
  font-size: clamp(2.4rem, 5.5vw, 3.8rem);
  font-weight: 800;
  line-height: 1.1;
}

.agents-hero-sub {
  color: #ffffff6b;
  max-width: 620px;
  margin: 0 auto 36px;
  font-size: clamp(.95rem, 1.4vw, 1.05rem);
  line-height: 1.7;
}

.hero-cta-wrap {
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-bottom: 60px;
  display: flex;
}

.agents-page .btn-primary {
  color: #000;
  background: #fff;
  border: none;
  border-radius: 10px;
  padding: 14px 40px;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .2s;
  display: inline-block;
}

.agents-page .btn-primary:hover {
  opacity: .88;
}

.hero-secondary-link {
  color: #ffffff59;
  font-size: 13.5px;
  text-decoration: none;
  transition: color .2s;
}

.hero-secondary-link:hover {
  color: #fff9;
}

.mascot-lineup {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 16px;
  position: relative;
}

.mascot-lineup-inner {
  justify-content: center;
  align-items: flex-end;
  gap: 0;
  display: flex;
  position: relative;
}

.mascot-item {
  flex-direction: column;
  flex: none;
  align-items: center;
  width: 160px;
  display: flex;
  position: relative;
}

.mascot-label {
  -webkit-backdrop-filter: blur(8px);
  white-space: nowrap;
  background: #00000080;
  border: 1.5px dashed;
  border-radius: 20px;
  margin-bottom: 10px;
  padding: 7px 18px;
  font-size: .8rem;
  font-weight: 600;
  display: inline-block;
}

.mascot-item:nth-child(odd) .mascot-label {
  margin-top: 0;
}

.mascot-item:nth-child(2n) .mascot-label {
  margin-top: 28px;
}

.mascot-item img {
  filter: drop-shadow(0 8px 24px #0006);
  width: 150px;
  height: auto;
  display: block;
}

.mascot-lineup:after {
  content: "";
  pointer-events: none;
  z-index: 2;
  background: linear-gradient(to top, #000, #0000);
  height: 60px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

@media (max-width: 860px) {
  .mascot-item {
    width: 120px;
  }

  .mascot-item img {
    width: 110px;
  }

  .mascot-label {
    padding: 5px 12px;
    font-size: .7rem;
  }
}

@media (max-width: 640px) {
  .mascot-lineup-inner {
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
  }

  .mascot-item {
    width: 100px;
  }

  .mascot-item img {
    width: 90px;
  }

  .mascot-item:nth-child(2n) .mascot-label {
    margin-top: 0;
  }

  .mascot-label {
    padding: 4px 10px;
    font-size: .65rem;
  }
}

.agent-details-section {
  padding: 80px 0 0;
}

.agent-detail {
  border-top: 1px solid #ffffff0a;
  align-items: center;
  gap: 56px;
  padding: 64px 0;
  display: flex;
}

.agent-detail.reverse {
  flex-direction: row-reverse;
}

.agent-detail-img {
  flex: 0 0 280px;
  justify-content: center;
  display: flex;
}

.agent-detail-img img {
  filter: drop-shadow(0 12px 32px #00000080);
  width: 260px;
  height: auto;
}

.agent-detail-content {
  flex: 1;
  min-width: 0;
}

.agent-detail-name {
  letter-spacing: -.02em;
  margin-bottom: 6px;
  font-size: 1.6rem;
  font-weight: 700;
}

.agent-role-badge {
  border: 1.5px dashed;
  border-radius: 20px;
  margin-bottom: 18px;
  padding: 5px 16px;
  font-size: .78rem;
  font-weight: 600;
  display: inline-block;
}

.agent-detail-desc {
  color: #ffffff80;
  margin-bottom: 22px;
  font-size: 15px;
  line-height: 1.75;
}

.agent-capabilities {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
  display: grid;
}

.agent-capabilities li {
  color: #ffffff73;
  align-items: center;
  gap: 8px;
  font-size: 13.5px;
  display: flex;
}

.agent-cap-dot {
  border-radius: 50%;
  flex-shrink: 0;
  width: 5px;
  height: 5px;
}

.btn-agent {
  background: none;
  border: 1.5px solid;
  border-radius: 10px;
  align-items: center;
  gap: 6px;
  padding: 10px 24px;
  font-family: Inter, sans-serif;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: background .2s, opacity .2s;
  display: inline-flex;
}

.btn-agent:hover {
  opacity: .8;
}

@media (max-width: 860px) {
  .agent-detail, .agent-detail.reverse {
    text-align: center;
    flex-direction: column;
    gap: 32px;
  }

  .agent-detail-img {
    flex: none;
  }

  .agent-detail-img img {
    width: 200px;
  }

  .agent-capabilities {
    grid-template-columns: 1fr;
    justify-items: center;
  }
}

.build-section {
  text-align: center;
  border-top: 1px solid #ffffff0a;
  padding: 80px 0;
}

.build-section .agents-section-title {
  margin-bottom: 8px;
}

.build-subtitle {
  color: #ffffff6b;
  margin-bottom: 20px;
  font-size: 15px;
}

.build-desc {
  color: #ffffff73;
  max-width: 640px;
  margin: 0 auto 44px;
  font-size: 15px;
  line-height: 1.75;
}

.build-features {
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 44px;
  display: grid;
}

.build-feature {
  text-align: left;
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  padding: 24px 20px;
  transition: border-color .2s;
}

.build-feature:hover {
  border-color: #ffffff1a;
}

.build-feature-title {
  margin-bottom: 6px;
  font-size: 14px;
  font-weight: 600;
}

.build-feature-desc {
  color: #fff6;
  font-size: 13px;
  line-height: 1.55;
}

@media (max-width: 860px) {
  .build-features {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .build-features {
    grid-template-columns: 1fr;
  }
}

.stats-section {
  border-top: 1px solid #ffffff0a;
  padding: 72px 0;
}

.stats-row {
  text-align: center;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  display: grid;
}

.stat-item {
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  padding: 32px 16px;
}

.stat-number {
  letter-spacing: -.04em;
  background: linear-gradient(135deg, #fff, #ffffffb3);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  margin-bottom: 8px;
  font-size: 3rem;
  font-weight: 800;
  line-height: 1;
}

.stat-label {
  color: #ffffff73;
  font-size: 13px;
  font-weight: 500;
}

@media (max-width: 640px) {
  .stats-row {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .stat-number {
    font-size: 2.2rem;
  }
}

.agents-page .final-cta {
  text-align: center;
  border-top: 1px solid #ffffff0a;
  padding: 80px 0 100px;
}

.agents-page .final-cta .agents-section-title {
  margin-bottom: 12px;
}

.final-cta-sub {
  color: #ffffff6b;
  margin-bottom: 32px;
  font-size: 15px;
}

.final-cta-buttons {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px;
  display: flex;
}

.agents-page .btn-outline {
  color: #fff;
  background: none;
  border: 1px solid #ffffff26;
  border-radius: 10px;
  padding: 14px 32px;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: border-color .2s, background .2s;
  display: inline-block;
}

.agents-page .btn-outline:hover {
  background: #ffffff0a;
  border-color: #ffffff4d;
}

.light-mode .agents-page {
  color: #111827;
  background: #f9fafb;
}

.light-mode .agents-label {
  color: #0006;
}

.light-mode .agents-section-title {
  color: #111827;
}

.light-mode .agents-divider {
  border-top-color: #e5e7eb;
}

.light-mode .hero-badge {
  color: #00000080;
  background: #00000008;
  border-color: #0000001f;
}

.light-mode .agents-hero-sub {
  color: #00000080;
}

.light-mode .hero-secondary-link {
  color: #0006;
}

.light-mode .hero-secondary-link:hover {
  color: #000000b3;
}

.light-mode .agents-page .btn-primary {
  color: #fff;
  background: #111827;
}

.light-mode .mascot-label {
  background: #fffc;
}

.light-mode .mascot-lineup:after {
  background: linear-gradient(to top, #f9fafb, #0000);
}

.light-mode .agent-detail {
  border-top-color: #e5e7eb;
}

.light-mode .agent-detail-desc {
  color: #0000008c;
}

.light-mode .agent-capabilities li {
  color: #00000080;
}

.light-mode .build-section {
  border-top-color: #e5e7eb;
}

.light-mode .build-subtitle {
  color: #00000080;
}

.light-mode .build-desc {
  color: #0000008c;
}

.light-mode .build-feature {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .build-feature:hover {
  border-color: #d1d5db;
}

.light-mode .build-feature-title {
  color: #111827;
}

.light-mode .build-feature-desc {
  color: #00000080;
}

.light-mode .stats-section {
  border-top-color: #e5e7eb;
}

.light-mode .stat-item {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .stat-number {
  background: linear-gradient(135deg, #111827, #000000b3);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
}

.light-mode .stat-label {
  color: #00000080;
}

.light-mode .agents-page .final-cta {
  border-top-color: #e5e7eb;
}

.light-mode .final-cta-sub {
  color: #00000080;
}

.light-mode .agents-page .btn-outline {
  color: #111827;
  border-color: #00000026;
}

.light-mode .agents-page .btn-outline:hover {
  background: #0000000a;
  border-color: #0000004d;
}

.light-mode #agentStars {
  display: none;
}

.light-mode .mascot-item img {
  filter: drop-shadow(0 8px 24px #00000014);
}

.light-mode .agent-detail-img img {
  filter: drop-shadow(0 12px 32px #0000000f);
}

.about-page .text-glow {
  text-shadow: 0 0 20px #a855f780;
}

.about-page .border-glass {
  border: 1px solid #ffffff14;
}

.about-page .glass-card {
  -webkit-backdrop-filter: blur(12px);
  background: #0a0a0c99;
}

.about-page #starfield {
  z-index: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
  transition: opacity .3s;
  position: fixed;
  top: 0;
  left: 0;
}

.about-page .reveal {
  opacity: 0;
  transition: all .8s cubic-bezier(.16, 1, .3, 1);
  transform: translateY(30px);
}

.about-page .reveal.active {
  opacity: 1;
  transform: translateY(0);
}

.about-page .cursor:after {
  content: "|";
  animation: 1s step-end infinite about-blink;
}

@keyframes about-blink {
  50% {
    opacity: 0;
  }
}

.about-page .bar {
  background: linear-gradient(to top, #a855f7, #ec4899);
  border-radius: 2px;
  width: 4px;
  animation: 1s ease-in-out infinite about-wave;
}

@keyframes about-wave {
  0%, 100% {
    height: 10px;
  }

  50% {
    height: 30px;
  }
}

.about-page .torki-ecosystem {
  background: none;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  min-height: 700px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.about-page .torki-ecosystem canvas {
  pointer-events: none;
  z-index: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.about-page .eco-typography {
  z-index: 1;
  pointer-events: none;
  width: 100%;
  max-width: 1400px;
  height: 100%;
  padding: 60px 40px;
  position: relative;
}

.about-page .eco-title-top {
  position: absolute;
  top: 8%;
  left: 40px;
}

.about-page .eco-title-the {
  color: #fff3;
  letter-spacing: -.02em;
  margin: 0;
  font-size: clamp(40px, 6vw, 80px);
  font-weight: 300;
  line-height: 1;
}

.about-page .eco-title-ecosystem {
  color: #ffffff1f;
  letter-spacing: -.04em;
  margin: 0;
  font-size: clamp(60px, 12vw, 160px);
  font-weight: 700;
  line-height: .9;
}

.about-page .eco-question-wrap {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.about-page .eco-question {
  letter-spacing: .12em;
  color: #fff6;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: JetBrains Mono, monospace;
  font-size: clamp(10px, 1.3vw, 14px);
  font-weight: 400;
  transition: opacity .4s, transform .4s;
}

.about-page .eco-title-bottom {
  text-align: right;
  position: absolute;
  bottom: 8%;
  right: 40px;
}

.about-page .eco-subtitle {
  letter-spacing: .08em;
  color: #7c3aed73;
  text-transform: uppercase;
  margin-bottom: 16px;
  font-family: JetBrains Mono, monospace;
  font-size: clamp(11px, 1.2vw, 13px);
}

.about-page .eco-title-of {
  color: #ffffff1f;
  letter-spacing: -.04em;
  margin: 0;
  font-size: clamp(48px, 10vw, 140px);
  font-weight: 700;
  line-height: .9;
}

.about-page .eco-indicator {
  z-index: 3;
  text-align: center;
  cursor: default;
  pointer-events: auto;
  position: absolute;
  transform: translate(-50%, -50%);
}

.about-page .eco-dot {
  border-radius: 50%;
  width: 10px;
  height: 10px;
  margin: 0 auto 8px;
  transition: all .3s;
}

.about-page .eco-label {
  letter-spacing: .15em;
  color: #fff6;
  text-transform: uppercase;
  margin-bottom: 3px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 600;
  transition: color .3s;
}

.about-page .eco-sub {
  color: #ffffff40;
  opacity: 0;
  white-space: nowrap;
  font-family: Inter, sans-serif;
  font-size: 10.5px;
  font-weight: 400;
  transition: all .25s;
  transform: translateY(-4px);
}

.about-page .eco-indicator:hover .eco-sub {
  opacity: 1;
  transform: translateY(0);
}

.about-page .eco-indicator--think .eco-dot {
  background: #a855f799;
  box-shadow: 0 0 10px #a855f740;
}

.about-page .eco-indicator--think:hover .eco-dot {
  background: #a855f7e6;
  transform: scale(1.3);
  box-shadow: 0 0 20px #a855f780;
}

.about-page .eco-indicator--think:hover .eco-label {
  color: #a855f7e6;
}

.about-page .eco-indicator--see .eco-dot {
  background: #60a5fa99;
  box-shadow: 0 0 10px #60a5fa40;
}

.about-page .eco-indicator--see:hover .eco-dot {
  background: #60a5fae6;
  transform: scale(1.3);
  box-shadow: 0 0 20px #60a5fa80;
}

.about-page .eco-indicator--see:hover .eco-label {
  color: #60a5fae6;
}

.about-page .eco-indicator--speak .eco-dot {
  background: #f472b699;
  box-shadow: 0 0 10px #f472b640;
}

.about-page .eco-indicator--speak:hover .eco-dot {
  background: #f472b6e6;
  transform: scale(1.3);
  box-shadow: 0 0 20px #f472b680;
}

.about-page .eco-indicator--speak:hover .eco-label {
  color: #f472b6e6;
}

.about-page .eco-indicator--create .eco-dot {
  background: #34d39999;
  box-shadow: 0 0 10px #34d39940;
}

.about-page .eco-indicator--create:hover .eco-dot {
  background: #34d399e6;
  transform: scale(1.3);
  box-shadow: 0 0 20px #34d39980;
}

.about-page .eco-indicator--create:hover .eco-label {
  color: #34d399e6;
}

.about-page .eco-indicator--build .eco-dot {
  background: #fbbf2499;
  box-shadow: 0 0 10px #fbbf2440;
}

.about-page .eco-indicator--build:hover .eco-dot {
  background: #fbbf24e6;
  transform: scale(1.3);
  box-shadow: 0 0 20px #fbbf2480;
}

.about-page .eco-indicator--build:hover .eco-label {
  color: #fbbf24e6;
}

@keyframes eco-fade-in {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.about-page .eco-animate {
  opacity: 0;
  animation: .8s cubic-bezier(.16, 1, .3, 1) forwards eco-fade-in;
}

.about-page .eco-delay-1 {
  animation-delay: .2s;
}

.about-page .eco-delay-2 {
  animation-delay: .35s;
}

.about-page .eco-delay-3 {
  animation-delay: .5s;
}

.about-page .eco-delay-4 {
  animation-delay: .6s;
}

.about-page .eco-delay-5 {
  animation-delay: .8s;
}

.about-page .eco-delay-6 {
  animation-delay: 1s;
}

.about-page .eco-delay-7 {
  animation-delay: 1.2s;
}

.about-page .eco-delay-8 {
  animation-delay: 1.4s;
}

.about-page .eco-delay-9 {
  animation-delay: 1.6s;
}

@media (max-width: 768px) {
  .about-page .eco-typography {
    padding: 40px 20px;
  }

  .about-page .eco-title-top {
    left: 20px;
  }

  .about-page .eco-title-bottom {
    right: 20px;
  }

  .about-page .eco-indicator--think {
    top: 18% !important;
    left: 20% !important;
  }

  .about-page .eco-indicator--see {
    top: 15% !important;
    left: 80% !important;
  }

  .about-page .eco-indicator--speak {
    top: 75% !important;
    left: 15% !important;
  }

  .about-page .eco-indicator--create {
    top: 72% !important;
    left: 85% !important;
  }

  .about-page .eco-indicator--build {
    top: 92% !important;
    left: 50% !important;
  }

  .about-page .eco-sub {
    display: none;
  }
}

.about-page .spotlight-border {
  background: radial-gradient(600px circle at var(--mouse-x, 0) var(--mouse-y, 0), #fff6, transparent 40%);
  pointer-events: none;
}

.light-mode .about-page {
  color: #1a1a1a !important;
  background: linear-gradient(#eeeef2 0%, #e5e5eb 100%) !important;
}

.light-mode .about-page #starfield {
  opacity: 1;
  z-index: 1;
}

.light-mode .about-page .min-h-screen {
  z-index: 2;
  background: none;
  position: relative;
}

.light-mode .about-page section {
  z-index: 2;
  position: relative;
}

.light-mode .about-page h1.text-transparent {
  background: linear-gradient(#1a1a1a, #4a4a4a);
  -webkit-background-clip: text;
  background-clip: text;
}

.light-mode .about-page .text-gray-400 {
  color: #666 !important;
}

.light-mode .about-page .text-gray-500 {
  color: #888 !important;
}

.light-mode .about-page .text-gray-300 {
  color: #555 !important;
}

.light-mode .about-page .text-gray-700 {
  color: #333 !important;
}

.light-mode .about-page .text-white {
  color: #1a1a1a !important;
}

.light-mode .about-page .bg-black {
  box-shadow: 0 2px 20px #00000014;
  background-color: #fff !important;
}

.light-mode .about-page input.bg-transparent {
  color: #1a1a1a;
}

.light-mode .about-page input.bg-transparent::placeholder {
  color: #999;
}

.light-mode .about-page .bg-white\/10 {
  background-color: #0000000f !important;
}

.light-mode .about-page .bg-white\/10:hover {
  color: #fff !important;
  background-color: #7c3aed !important;
}

.light-mode .about-page .bg-purple-600\/20 {
  background-color: #a855f714 !important;
}

.light-mode .about-page .glass-card {
  background: #fffc;
  border: 1px solid #00000014;
}

.light-mode .about-page .border-glass {
  border-color: #00000014;
}

.light-mode .about-page .border-white\/10 {
  border-color: #00000014 !important;
}

.light-mode .about-page .border-white\/5 {
  border-color: #0000000d !important;
}

.light-mode .about-page .hover\:border-white\/20:hover {
  border-color: #7c3aed4d !important;
}

.light-mode .about-page .bg-black\/40 {
  background-color: #0000000a !important;
}

.light-mode .about-page .bg-black\/50 {
  background-color: #00000008 !important;
}

.light-mode .about-page section.bg-black {
  background-color: #fafafa !important;
}

.light-mode .about-page #features {
  background: linear-gradient(#fff 0%, #f5f5f7 100%);
}

.light-mode .about-page #products {
  background: #f5f5f7 !important;
}

.light-mode .about-page #news {
  background: #fff !important;
  border-top-color: #0000000f !important;
}

.light-mode .about-page .card-wrapper {
  background: #0000000a;
}

.light-mode .about-page .card-wrapper .bg-\[\#0a0a0c\] {
  box-shadow: 0 4px 24px #0000000f;
  background: #fff !important;
}

.light-mode .about-page .spotlight-border {
  background: radial-gradient(600px circle at var(--mouse-x, 0) var(--mouse-y, 0), #7c3aed26, transparent 40%) !important;
}

.light-mode .about-page #news a.border-white\/10 {
  background: #fff;
  border-color: #00000014 !important;
}

.light-mode .about-page .from-purple-900 {
  --tw-gradient-from: #7c3aed14;
}

.light-mode .about-page .via-purple-950 {
  --tw-gradient-via: #7c3aed0a;
}

.light-mode .about-page .from-orange-900\/20 {
  background: linear-gradient(to right, #f973160f, #0000) !important;
}

.light-mode .about-page .from-blue-900\/20 {
  background: linear-gradient(to right, #3b82f60f, #0000) !important;
}

.light-mode .about-page .bg-white\/5 {
  background-color: #0000000a !important;
}

.light-mode .about-page .bg-green-500 {
  background-color: #22c55e;
}

.light-mode .about-page .text-purple-400 {
  color: #9333ea !important;
}

.light-mode .about-page .text-pink-400 {
  color: #ec4899 !important;
}

.light-mode .about-page .text-blue-400 {
  color: #3b82f6 !important;
}

.light-mode .about-page .text-orange-400 {
  color: #f97316 !important;
}

.light-mode .about-page .bg-purple-900\/20 {
  background-color: #a855f71a !important;
}

.light-mode .about-page .bg-pink-900\/20 {
  background-color: #ec48991a !important;
}

.light-mode .about-page .font-mono.text-gray-300 {
  color: #555 !important;
}

.light-mode .about-page .font-mono.text-gray-500 {
  color: #777 !important;
}

.light-mode .about-page .animate-bounce {
  color: #666;
}

.light-mode .about-page .bg-white\/10 svg {
  color: #1a1a1a;
}

.light-mode .about-page .bg-white\/10:hover svg {
  color: #fff;
}

.light-mode .about-page footer, .light-mode .about-page footer.bg-black {
  background-color: #f5f5f7 !important;
  border-top-color: #0000000f !important;
}

.light-mode .about-page footer .text-white {
  color: #1a1a1a !important;
}

.light-mode .about-page footer .text-gray-400, .light-mode .about-page footer .text-gray-500 {
  color: #666 !important;
}

.light-mode .about-page footer a.text-gray-400:hover, .light-mode .about-page footer a.text-gray-500:hover {
  color: #7c3aed !important;
}

.light-mode .about-page footer .border-white\/10 {
  border-color: #00000014 !important;
}

.light-mode .about-page #news .bg-black {
  background-color: #fff !important;
}

.light-mode .about-page #news .border-white\/10 {
  border-color: #00000014 !important;
}

.light-mode .about-page #news .text-white, .light-mode .about-page #news h4.text-white {
  color: #1a1a1a !important;
}

.light-mode .about-page #products h2 span.text-transparent {
  color: #0000 !important;
}

.light-mode .about-page #products .card-wrapper .bg-\[\#0a0a0c\] {
  box-shadow: 0 4px 24px #0000000f;
  background: #fff !important;
}

.light-mode .about-page #products h3.text-white {
  color: #1a1a1a !important;
}

.light-mode .about-page #products .text-gray-400 {
  color: #666 !important;
}

.light-mode .about-page #products .bg-white\/5 {
  background-color: #0000000a !important;
}

.light-mode .about-page #products .border-white\/10 {
  border-color: #00000014 !important;
}

.light-mode .about-page #products a.bg-white\/5 {
  color: #1a1a1a !important;
}

.light-mode .about-page #products a.bg-white\/5:hover {
  color: #fff !important;
  background-color: #7c3aed !important;
}

.light-mode .about-page .font-mono.text-purple-400 {
  color: #9333ea !important;
}

.light-mode .about-page .inline-flex.bg-white\/5 {
  background-color: #0000000a !important;
  border-color: #0000001a !important;
}

.light-mode .about-page .inline-flex.bg-white\/5 span.font-mono {
  color: #555 !important;
}

.light-mode .about-page .group .absolute.-inset-0\.5 {
  opacity: .15 !important;
}

.light-mode .about-page .group:hover .absolute.-inset-0\.5 {
  opacity: .4 !important;
}

.light-mode .about-page #hero-input-wrapper .bg-black {
  box-shadow: 0 4px 24px #00000014;
  background-color: #fff !important;
  border-color: #00000014 !important;
}

.light-mode .about-page #hero-input-wrapper input {
  color: #1a1a1a !important;
}

.light-mode .about-page #hero-input-wrapper input::placeholder {
  color: #999 !important;
}

.light-mode .about-page #hero-input-wrapper .text-gray-400 {
  color: #666 !important;
}

.light-mode .about-page #hero-input-wrapper .hover\:text-white:hover {
  color: #1a1a1a !important;
}

.light-mode .about-page #hero-input-wrapper .bg-white\/5 {
  background-color: #0000000a !important;
}

.light-mode .about-page #hero-input-wrapper .hover\:bg-white\/10:hover {
  background-color: #00000014 !important;
}

.light-mode .about-page #hero-input-wrapper .border-white\/5 {
  border-color: #0000000f !important;
}

.light-mode .about-page #hero-input-wrapper #hero-send-btn {
  color: #1a1a1a !important;
  background-color: #0000000f !important;
}

.light-mode .about-page #hero-input-wrapper #hero-send-btn:hover {
  color: #fff !important;
  background-color: #7c3aed !important;
}

.light-mode .about-page .torki-ecosystem {
  background: none;
}

.light-mode .about-page .eco-title-the {
  color: #00000026;
}

.light-mode .about-page .eco-title-ecosystem {
  color: #00000014;
}

.light-mode .about-page .eco-question {
  color: #00000080;
}

.light-mode .about-page .eco-subtitle {
  color: #7c3aed99;
}

.light-mode .about-page .eco-title-of {
  color: #00000014;
}

.light-mode .about-page .eco-label {
  color: #00000080;
}

.light-mode .about-page .eco-sub {
  color: #0006;
}

.about-news-section {
  z-index: 10;
  background: #000;
  border-top: 1px solid #ffffff0d;
  padding: 128px 24px;
  position: relative;
}

.about-news-heading {
  color: #fff;
}

.about-news-heading-muted {
  color: #ffffff59;
}

.about-news-archive-link {
  color: #ffffff59;
  font-family: JetBrains Mono, monospace;
  font-size: 13px;
  text-decoration: none;
  transition: color .2s;
}

.about-news-archive-link:hover {
  color: #fff;
}

.about-news-featured {
  background: #000;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  height: 100%;
  transition: all .5s;
  display: block;
  position: relative;
  overflow: hidden;
}

.about-news-featured:hover {
  border-color: #a855f780;
  transform: translateY(-3px);
}

.about-news-featured-bg {
  position: absolute;
  inset: 0;
}

.about-news-cover-img {
  object-fit: cover;
  opacity: .3;
  width: 100%;
  height: 100%;
  transition: opacity .5s;
}

.about-news-featured:hover .about-news-cover-img {
  opacity: .4;
}

.about-news-featured-overlay {
  background: linear-gradient(to top, #000, #000c 50%, #0000);
  position: absolute;
  inset: 0;
}

.about-news-featured-content {
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  min-height: 500px;
  padding: 32px 48px;
  display: flex;
  position: relative;
}

.about-news-featured-title {
  color: #fff;
  max-width: 640px;
  margin: 8px 0;
  font-size: clamp(24px, 4vw, 40px);
  font-weight: 700;
  line-height: 1.15;
}

.about-news-featured-excerpt {
  color: #ffffff80;
  max-width: 540px;
  font-size: 16px;
  line-height: 1.6;
}

.about-news-meta {
  letter-spacing: .1em;
  align-items: center;
  gap: 12px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  display: flex;
}

.about-news-meta-purple {
  color: #a855f7;
}

.about-news-meta-orange {
  color: #f97316;
}

.about-news-meta-blue {
  color: #3b82f6;
}

.about-news-meta-date {
  color: #ffffff59;
}

.about-news-meta-dot {
  color: #fff3;
}

.about-news-readtime {
  color: #fff3;
  margin-top: 8px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

.about-news-item {
  background: #000;
  border: 1px solid #ffffff1a;
  border-radius: 16px;
  flex: 1;
  transition: all .3s;
  display: block;
  position: relative;
  overflow: hidden;
}

.about-news-item:hover {
  transform: translateY(-3px);
}

.about-news-item-orange:hover {
  border-color: #f9731680;
}

.about-news-item-blue:hover {
  border-color: #3b82f680;
}

.about-news-item-bg {
  position: absolute;
  inset: 0;
}

.about-news-item-cover {
  object-fit: cover;
  opacity: .12;
  width: 100%;
  height: 100%;
  transition: opacity .3s;
}

.about-news-item:hover .about-news-item-cover {
  opacity: .2;
}

.about-news-item-overlay {
  background: linear-gradient(to right, #000000e6, #000000b3);
  position: absolute;
  inset: 0;
}

.about-news-item-content {
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding: 28px;
  display: flex;
  position: relative;
}

.about-news-item-title {
  color: #fff;
  margin-bottom: 6px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.about-news-item-excerpt {
  color: #ffffff59;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  font-size: 13px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.about-news-mobile-link {
  text-align: center;
  color: #ffffff59;
  border: 1px solid #ffffff0d;
  border-radius: 12px;
  padding: 14px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  text-decoration: none;
  display: block;
}

@media (max-width: 640px) {
  .about-news-featured-content {
    min-height: 400px;
    padding: 24px;
  }

  .about-news-item-content {
    padding: 20px;
  }
}

.light-mode .about-news-section {
  background: #fff;
  border-top-color: #0000000f;
}

.light-mode .about-news-heading {
  color: #111827;
}

.light-mode .about-news-heading-muted {
  color: #0000004d;
}

.light-mode .about-news-archive-link {
  color: #0006;
}

.light-mode .about-news-archive-link:hover {
  color: #111827;
}

.light-mode .about-news-featured {
  background: #fff;
  border-color: #00000014;
}

.light-mode .about-news-featured:hover {
  border-color: #a855f74d;
}

.light-mode .about-news-cover-img {
  opacity: .15;
}

.light-mode .about-news-featured:hover .about-news-cover-img {
  opacity: .2;
}

.light-mode .about-news-featured-overlay {
  background: linear-gradient(to top, #fff, #ffffffd9 50%, #fff6);
}

.light-mode .about-news-featured-title {
  color: #111827;
}

.light-mode .about-news-featured-excerpt {
  color: #00000080;
}

.light-mode .about-news-meta-date {
  color: #00000059;
}

.light-mode .about-news-meta-dot {
  color: #00000026;
}

.light-mode .about-news-readtime {
  color: #00000040;
}

.light-mode .about-news-item {
  background: #fff;
  border-color: #00000014;
}

.light-mode .about-news-item-orange:hover {
  border-color: #f973164d;
}

.light-mode .about-news-item-blue:hover {
  border-color: #3b82f64d;
}

.light-mode .about-news-item-cover {
  opacity: .08;
}

.light-mode .about-news-item:hover .about-news-item-cover {
  opacity: .12;
}

.light-mode .about-news-item-overlay {
  background: linear-gradient(to right, #ffffffeb, #fffc);
}

.light-mode .about-news-item-title {
  color: #111827;
}

.light-mode .about-news-item-excerpt {
  color: #00000073;
}

.light-mode .about-news-mobile-link {
  color: #0006;
  border-color: #0000000f;
}

.about-cta-secondary {
  color: #ffffff80;
  border: 1px solid #ffffff1a;
  border-radius: 9999px;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.about-cta-secondary:hover {
  color: #fff;
  border-color: #fff3;
}

.light-mode .about-cta-secondary {
  color: #00000080;
  border-color: #0000001f;
}

.light-mode .about-cta-secondary:hover {
  color: #111827;
  border-color: #00000040;
}

.team-page {
  z-index: 1;
  color: #fff;
  background: #000;
  padding-top: 64px;
  font-family: Inter, system-ui, -apple-system, sans-serif;
  line-height: 1.6;
  position: relative;
  overflow-x: hidden;
}

.team-page a {
  color: #000;
  text-decoration: none;
}

.team-stars {
  z-index: 0;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.team-section {
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 32px;
}

.team-label {
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #ffffff4d;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.team-section-title {
  letter-spacing: -.03em;
  color: #fff;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 700;
  line-height: 1.15;
}

.team-page .reveal {
  opacity: 0;
  transition: opacity .7s cubic-bezier(.16, 1, .3, 1), transform .7s cubic-bezier(.16, 1, .3, 1);
  transform: translateY(24px);
}

.team-page .reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.team-hero {
  text-align: center;
  padding: 80px 32px 48px;
}

.team-hero .team-label {
  margin-bottom: 16px;
}

.team-hero h1 {
  letter-spacing: -.04em;
  margin-bottom: 20px;
  font-size: clamp(2.2rem, 5vw, 3.6rem);
  font-weight: 800;
  line-height: 1.1;
}

.team-hero-sub {
  color: #ffffff73;
  max-width: 600px;
  margin: 0 auto;
  font-size: clamp(.95rem, 1.5vw, 1.1rem);
  line-height: 1.7;
}

.founder-section {
  padding: 48px 0 72px;
}

.founder-card {
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 20px;
  align-items: center;
  gap: 56px;
  padding: 48px;
  display: flex;
}

.founder-photo-wrap {
  flex-shrink: 0;
}

.team-photo {
  object-fit: cover;
  border: none;
  border-radius: 50%;
  width: 240px;
  height: 240px;
}

.founder-info {
  flex: 1;
  min-width: 0;
}

.founder-name {
  letter-spacing: -.02em;
  margin-bottom: 4px;
  font-size: 1.7rem;
  font-weight: 700;
}

.founder-role {
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #a855f7;
  margin-bottom: 4px;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  font-weight: 500;
}

.founder-company {
  color: #ffffff4d;
  margin-bottom: 20px;
  font-size: 13px;
}

.founder-bio {
  color: #ffffff8c;
  margin-bottom: 24px;
  font-size: 15px;
  line-height: 1.75;
}

.founder-socials {
  gap: 10px;
  display: flex;
}

.founder-social-btn {
  color: #ffffff80;
  background: #ffffff08;
  border: 1px solid #ffffff1a;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 38px;
  height: 38px;
  text-decoration: none;
  transition: all .15s;
  display: flex;
}

.founder-social-btn:hover {
  color: #ffffffd9;
  background: #ffffff0f;
  border-color: #fff3;
}

.founder-social-btn svg {
  width: 18px;
  height: 18px;
}

.story-section {
  border-top: 1px solid #ffffff0a;
  padding: 72px 0;
}

.story-section .team-section-title {
  margin-bottom: 32px;
}

.story-text {
  max-width: 760px;
}

.story-text p {
  color: #ffffff80;
  margin-bottom: 20px;
  font-size: 15px;
  line-height: 1.8;
}

.story-text p:last-child {
  margin-bottom: 0;
}

.story-text .story-emphasis {
  color: #a855f7;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.6;
}

.values-section {
  border-top: 1px solid #ffffff0a;
  padding: 72px 0;
}

.values-section .team-section-title {
  margin-bottom: 40px;
}

.values-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  display: grid;
}

.value-card {
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  padding: 28px;
  transition: border-color .2s, background .2s;
}

.value-card:hover {
  background: #ffffff06;
  border-color: #ffffff1a;
}

.value-title {
  color: #fff;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
}

.value-desc {
  color: #fff6;
  font-size: 13.5px;
  line-height: 1.6;
}

.team-page .stats-section {
  border-top: 1px solid #ffffff0a;
  padding: 72px 0;
}

.team-page .stats-row {
  text-align: center;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  display: grid;
}

.team-page .stat-item {
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  padding: 32px 16px;
}

.team-page .stat-number {
  letter-spacing: -.04em;
  background: linear-gradient(135deg, #fff, #ffffffb3);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  margin-bottom: 8px;
  font-size: 3.2rem;
  font-weight: 800;
  line-height: 1;
}

.team-page .stat-label {
  color: #ffffff73;
  margin-bottom: 4px;
  font-size: 13px;
  font-weight: 500;
}

.stat-detail {
  color: #ffffff40;
  font-size: 11px;
}

.team-cta-section {
  text-align: center;
  border-top: 1px solid #ffffff0a;
  padding: 72px 0 100px;
}

.team-cta-section .team-section-title {
  margin-bottom: 16px;
}

.team-cta-desc {
  color: #ffffff73;
  max-width: 540px;
  margin: 0 auto 32px;
  font-size: 15px;
  line-height: 1.7;
}

.team-cta-btn {
  color: #000;
  background: #fff;
  border: none;
  border-radius: 10px;
  padding: 14px 36px;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .2s;
  display: inline-block;
}

.team-cta-btn:hover {
  opacity: .88;
}

.team-cta-note {
  color: #ffffff40;
  margin-top: 16px;
  font-size: 13px;
}

@media (max-width: 860px) {
  .founder-card {
    text-align: center;
    flex-direction: column;
    gap: 32px;
    padding: 36px 28px;
  }

  .founder-socials {
    justify-content: center;
  }

  .values-grid, .team-page .stats-row {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .team-hero {
    padding: 56px 20px 36px;
  }

  .team-section {
    padding: 0 20px;
  }

  .founder-card {
    padding: 28px 20px;
  }

  .team-photo {
    width: 180px;
    height: 180px;
  }

  .founder-name {
    font-size: 1.4rem;
  }

  .values-grid {
    grid-template-columns: 1fr;
  }

  .team-page .stats-row {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .team-page .stat-number {
    font-size: 2.4rem;
  }
}

.light-mode .team-page {
  color: #111827;
  background: #f9fafb;
}

.light-mode .team-label {
  color: #0006;
}

.light-mode .team-section-title {
  color: #111827;
}

.light-mode .team-hero-sub {
  color: #00000080;
}

.light-mode .founder-card {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .founder-name {
  color: #111827;
}

.light-mode .founder-company {
  color: #0006;
}

.light-mode .founder-bio {
  color: #0009;
}

.light-mode .founder-social-btn {
  color: #00000080;
  background: #00000005;
  border-color: #e5e7eb;
}

.light-mode .founder-social-btn:hover {
  color: #000c;
  background: #0000000d;
  border-color: #d1d5db;
}

.light-mode .story-section {
  border-top-color: #e5e7eb;
}

.light-mode .story-text p {
  color: #0009;
}

.light-mode .values-section {
  border-top-color: #e5e7eb;
}

.light-mode .value-card {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .value-card:hover {
  background: #fafafa;
  border-color: #d1d5db;
}

.light-mode .value-title {
  color: #111827;
}

.light-mode .value-desc {
  color: #00000080;
}

.light-mode .team-page .stats-section {
  border-top-color: #e5e7eb;
}

.light-mode .team-page .stat-item {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .team-page .stat-number {
  background: linear-gradient(135deg, #111827, #000000b3);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
}

.light-mode .team-page .stat-label {
  color: #00000080;
}

.light-mode .stat-detail {
  color: #00000059;
}

.light-mode .team-cta-section {
  border-top-color: #e5e7eb;
}

.light-mode .team-cta-desc {
  color: #00000080;
}

.light-mode .team-cta-btn {
  color: #fff;
  background: #111827;
}

.light-mode .team-cta-btn:hover {
  background: #374151;
}

.light-mode .team-cta-note {
  color: #00000059;
}

.light-mode .team-stars {
  display: none;
}

.light-mode .founder-role, .light-mode .story-emphasis {
  color: #7c3aed;
}

.light-mode .founder-photo-wrap {
  border-color: #00000014;
}

.light-mode .team-hero h1 {
  color: #111827;
}

.news-page, .article-page {
  z-index: 1;
  position: relative;
}

.news-stars, .article-stars {
  z-index: 0;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.news-container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 32px;
}

.news-label {
  text-transform: uppercase;
  letter-spacing: .14em;
  color: #ffffff4d;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
  font-weight: 500;
}

.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

.cat-pill {
  text-transform: uppercase;
  letter-spacing: .08em;
  border-radius: 6px;
  padding: 3px 10px;
  font-family: JetBrains Mono, monospace;
  font-size: 10px;
  font-weight: 600;
  display: inline-block;
}

.cat-pill--product {
  color: #a855f7;
  background: #a855f726;
}

.cat-pill--engineering {
  color: #3b82f6;
  background: #3b82f626;
}

.cat-pill--research {
  color: #22c55e;
  background: #22c55e26;
}

.cat-pill--company {
  color: #f59e0b;
  background: #f59e0b26;
}

.cat-pill--safety {
  color: #ef4444;
  background: #ef444426;
}

.news-hero {
  text-align: center;
  padding: 80px 32px 48px;
}

.news-hero .news-label {
  margin-bottom: 16px;
}

.news-hero h1 {
  letter-spacing: -.04em;
  margin-bottom: 16px;
  font-size: clamp(2.2rem, 5vw, 3.2rem);
  font-weight: 800;
  line-height: 1.1;
}

.news-hero-sub {
  color: #fff6;
  max-width: 560px;
  margin: 0 auto;
  font-size: clamp(.95rem, 1.5vw, 1.05rem);
  line-height: 1.7;
}

.news-tabs {
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-bottom: 48px;
  padding: 0 32px;
  display: flex;
}

.news-tab {
  color: #ffffff73;
  cursor: pointer;
  background: none;
  border: 1px solid #0000;
  border-radius: 8px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .15s;
}

.news-tab:hover {
  color: #ffffffb3;
  background: #ffffff0a;
}

.news-tab--active {
  color: #fff;
  background: #ffffff0f;
  border-color: #ffffff1a;
}

.news-featured {
  color: inherit;
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 16px;
  align-items: stretch;
  gap: 36px;
  margin-bottom: 48px;
  text-decoration: none;
  transition: border-color .2s, transform .2s;
  display: flex;
  overflow: hidden;
}

.news-featured:hover {
  border-color: #ffffff1f;
  transform: translateY(-2px);
}

.news-featured__img {
  flex: 0 0 42%;
  min-height: 280px;
  position: relative;
  overflow: hidden;
}

.news-featured__img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.news-featured__img--placeholder {
  color: #ffffff14;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 3rem;
  font-weight: 800;
  display: flex;
  position: absolute;
  inset: 0;
}

.news-featured__body {
  flex-direction: column;
  flex: 1;
  justify-content: center;
  padding: 36px 36px 36px 0;
  display: flex;
}

.news-featured__meta {
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  display: flex;
}

.news-featured__meta-text {
  color: #ffffff59;
  font-size: 12px;
}

.news-featured__title {
  letter-spacing: -.02em;
  margin-bottom: 12px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.25;
}

.news-featured__excerpt {
  color: #ffffff73;
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.7;
}

.news-featured__author {
  color: #ffffff59;
  font-size: 13px;
}

.news-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 48px;
  display: grid;
}

.news-card {
  color: inherit;
  background: #ffffff04;
  border: 1px solid #ffffff0f;
  border-radius: 14px;
  flex-direction: column;
  text-decoration: none;
  transition: border-color .2s, transform .2s;
  display: flex;
  overflow: hidden;
}

.news-card:hover {
  border-color: #ffffff1f;
  transform: translateY(-2px);
}

.news-card__img {
  aspect-ratio: 16 / 9;
  position: relative;
  overflow: hidden;
}

.news-card__img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.news-card__img--placeholder {
  color: #ffffff0f;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 2rem;
  font-weight: 800;
  display: flex;
}

.news-card__body {
  flex-direction: column;
  flex: 1;
  padding: 20px;
  display: flex;
}

.news-card__meta {
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  display: flex;
}

.news-card__meta-text {
  color: #ffffff4d;
  font-size: 11.5px;
}

.news-card__title {
  letter-spacing: -.01em;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
  display: -webkit-box;
  overflow: hidden;
}

.news-card__excerpt {
  color: #ffffff61;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  flex: 1;
  margin-bottom: 16px;
  font-size: 13px;
  line-height: 1.6;
  display: -webkit-box;
  overflow: hidden;
}

.news-card__author {
  color: #ffffff4d;
  margin-top: auto;
  font-size: 12px;
}

.grad--product {
  background: linear-gradient(135deg, #a855f733, #a855f70d);
}

.grad--engineering {
  background: linear-gradient(135deg, #3b82f633, #3b82f60d);
}

.grad--research {
  background: linear-gradient(135deg, #22c55e33, #22c55e0d);
}

.grad--company {
  background: linear-gradient(135deg, #f59e0b33, #f59e0b0d);
}

.grad--safety {
  background: linear-gradient(135deg, #ef444433, #ef44440d);
}

.news-pagination {
  justify-content: center;
  gap: 8px;
  padding-bottom: 80px;
  display: flex;
}

.news-pagination a, .news-pagination span {
  border-radius: 8px;
  padding: 10px 18px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .15s;
}

.news-pagination a {
  color: #ffffff80;
  border: 1px solid #ffffff1a;
}

.news-pagination a:hover {
  color: #fff;
  background: #ffffff0a;
  border-color: #fff3;
}

.news-pagination .current {
  color: #fff;
  background: #ffffff14;
  border: 1px solid #ffffff26;
}

.news-pagination .disabled {
  color: #ffffff26;
  pointer-events: none;
}

.news-empty {
  text-align: center;
  padding: 80px 32px 120px;
}

.news-empty__icon {
  opacity: .15;
  margin-bottom: 20px;
  font-size: 3rem;
}

.news-empty__text {
  color: #ffffff59;
  max-width: 400px;
  margin: 0 auto;
  font-size: 15px;
}

.article-back {
  max-width: 780px;
  margin: 0 auto;
  padding: 32px 32px 0;
}

.article-back a {
  color: #fff6;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  text-decoration: none;
  transition: color .15s;
  display: inline-flex;
}

.article-back a:hover {
  color: #ffffffb3;
}

.article-header {
  text-align: center;
  max-width: 780px;
  margin: 0 auto;
  padding: 32px 32px 0;
}

.article-meta {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  display: flex;
}

.article-meta-text {
  color: #ffffff59;
  font-size: 13px;
}

.article-title {
  letter-spacing: -.04em;
  margin-bottom: 16px;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 800;
  line-height: 1.1;
}

.article-excerpt {
  color: #ffffff73;
  max-width: 620px;
  margin: 0 auto 24px;
  font-size: 1.1rem;
  line-height: 1.7;
}

.article-author-row {
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
  display: flex;
}

.article-author-img {
  object-fit: cover;
  border: 2px solid #ffffff14;
  border-radius: 50%;
  width: 36px;
  height: 36px;
}

.article-author-placeholder {
  border: 2px solid #ffffff14;
  border-radius: 50%;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  overflow: hidden;
}

.article-author-placeholder img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.article-author-name {
  color: #ffffffb3;
  font-size: 14px;
  font-weight: 500;
}

.article-author-role {
  color: #ffffff4d;
  font-size: 12px;
}

.article-author-site {
  color: #ffffff40;
  font-size: 12px;
}

.article-cover {
  max-width: 900px;
  margin: 0 auto 48px;
  padding: 0 32px;
}

.article-cover img {
  border-radius: 14px;
  width: 100%;
  display: block;
}

.article-body {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 32px 48px;
}

.article-body h2 {
  color: #fff;
  letter-spacing: -.02em;
  margin: 40px 0 16px;
  font-size: 1.5rem;
  font-weight: 700;
}

.article-body h3 {
  color: #fff;
  margin: 32px 0 12px;
  font-size: 1.2rem;
  font-weight: 600;
}

.article-body p {
  color: #ffffffb3;
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1.85;
}

.article-body a {
  color: #a855f7;
  text-decoration: none;
}

.article-body a:hover {
  text-decoration: underline;
}

.article-body ul, .article-body ol {
  color: #ffffffb3;
  margin: 0 0 20px 24px;
}

.article-body li {
  margin-bottom: 8px;
  font-size: 16px;
  line-height: 1.7;
}

.article-body blockquote {
  background: #a855f70a;
  border-left: 3px solid #a855f7;
  border-radius: 0 8px 8px 0;
  margin: 24px 0;
  padding: 12px 20px;
}

.article-body blockquote p {
  color: #fff9;
  margin-bottom: 0;
}

.article-body pre {
  background: #111;
  border: 1px solid #ffffff14;
  border-radius: 10px;
  margin: 24px 0;
  padding: 20px;
  font-size: 14px;
  overflow-x: auto;
}

.article-body code {
  font-family: JetBrains Mono, monospace;
  font-size: .9em;
}

.article-body p code, .article-body li code {
  background: #ffffff0f;
  border-radius: 4px;
  padding: 2px 6px;
}

.article-body img {
  border-radius: 10px;
  max-width: 100%;
  height: auto;
  margin: 24px auto;
  display: block;
}

.article-body table {
  border-collapse: collapse;
  width: 100%;
  margin: 24px 0;
  font-size: 14px;
  display: block;
  overflow-x: auto;
}

.article-body thead {
  border-bottom: 2px solid #ffffff1f;
}

.article-body th {
  text-align: left;
  color: #ffffffd9;
  white-space: nowrap;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 600;
}

.article-body td {
  color: #ffffffa6;
  white-space: nowrap;
  border-bottom: 1px solid #ffffff0f;
  padding: 10px 12px;
}

.article-body tbody tr:hover td {
  background: #ffffff08;
}

.article-footer {
  border-top: 1px solid #ffffff0f;
  max-width: 720px;
  margin: 0 auto;
  padding: 32px 32px 48px;
}

.article-share {
  align-items: center;
  gap: 8px;
  margin-bottom: 32px;
  display: flex;
}

.article-share-label {
  color: #fff6;
  margin-right: 4px;
  font-size: 13px;
}

.article-share-btn {
  color: #ffffff80;
  cursor: pointer;
  background: #ffffff08;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  text-decoration: none;
  transition: all .15s;
  display: flex;
  position: relative;
}

.article-share-btn:hover {
  color: #fff;
  background: #ffffff0f;
  border-color: #fff3;
}

.article-share-btn.copied {
  color: #22c55e;
  border-color: #22c55e4d;
}

.article-share-btn .copied-tip {
  color: #22c55e;
  white-space: nowrap;
  font-size: 11px;
  display: none;
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
}

.article-share-btn.copied .copied-tip {
  display: block;
}

.article-related-title {
  margin-bottom: 24px;
  font-size: 1.3rem;
  font-weight: 700;
}

.article-related-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  display: grid;
}

.related-card {
  color: inherit;
  border: 1px solid #ffffff0f;
  border-radius: 12px;
  padding: 20px;
  text-decoration: none;
  transition: border-color .2s, transform .2s;
}

.related-card:hover {
  border-color: #ffffff1f;
  transform: translateY(-2px);
}

.related-card__cat {
  margin-bottom: 10px;
}

.related-card__title {
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}

.related-card__date {
  color: #ffffff4d;
  font-size: 12px;
}

@media (max-width: 860px) {
  .news-featured {
    flex-direction: column;
  }

  .news-featured__img {
    flex: none;
    min-height: 200px;
  }

  .news-featured__body {
    padding: 24px;
  }

  .news-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .article-related-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .news-container {
    padding: 0 20px;
  }

  .news-hero {
    padding: 56px 20px 36px;
  }

  .news-grid {
    grid-template-columns: 1fr;
  }

  .news-featured__title {
    font-size: 1.3rem;
  }

  .article-header, .article-back, .article-body, .article-footer, .article-cover {
    padding-left: 20px;
    padding-right: 20px;
  }

  .article-title {
    font-size: 1.8rem;
  }
}

.light-mode .news-label {
  color: #0006;
}

.light-mode .news-hero-sub, .light-mode .news-tab {
  color: #00000080;
}

.light-mode .news-tab:hover {
  color: #000000b3;
  background: #0000000a;
}

.light-mode .news-tab--active {
  color: #111827;
  background: #0000000d;
  border-color: #0000001a;
}

.light-mode .news-featured {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .news-featured:hover {
  border-color: #d1d5db;
}

.light-mode .news-featured__meta-text {
  color: #0006;
}

.light-mode .news-featured__title {
  color: #111827;
}

.light-mode .news-featured__excerpt {
  color: #0000008c;
}

.light-mode .news-featured__author {
  color: #00000073;
}

.light-mode .news-featured__img--placeholder {
  color: #00000014;
}

.light-mode .news-card {
  background: #fff;
  border-color: #e5e7eb;
}

.light-mode .news-card:hover {
  border-color: #d1d5db;
}

.light-mode .news-card__meta-text {
  color: #0006;
}

.light-mode .news-card__title {
  color: #111827;
}

.light-mode .news-card__excerpt {
  color: #00000080;
}

.light-mode .news-card__author {
  color: #0006;
}

.light-mode .news-card__img--placeholder {
  color: #0000000f;
}

.light-mode .news-pagination a {
  color: #00000080;
  border-color: #0000001a;
}

.light-mode .news-pagination a:hover {
  color: #111827;
  background: #00000008;
  border-color: #0003;
}

.light-mode .news-pagination .current {
  color: #111827;
  background: #0000000f;
  border-color: #0000001f;
}

.light-mode .news-pagination .disabled {
  color: #0003;
}

.light-mode .news-empty__text {
  color: #0006;
}

.light-mode .news-stars {
  display: none;
}

.light-mode .article-back a {
  color: #00000073;
}

.light-mode .article-back a:hover {
  color: #000000b3;
}

.light-mode .article-meta-text {
  color: #00000073;
}

.light-mode .article-title {
  color: #111827;
}

.light-mode .article-excerpt {
  color: #0000008c;
}

.light-mode .article-author-name {
  color: #000000b3;
}

.light-mode .article-author-role {
  color: #0006;
}

.light-mode .article-author-img {
  border-color: #00000014;
}

.light-mode .article-body h2, .light-mode .article-body h3 {
  color: #111827;
}

.light-mode .article-body p, .light-mode .article-body ul, .light-mode .article-body ol {
  color: #000000b3;
}

.light-mode .article-body blockquote {
  background: #a855f70f;
}

.light-mode .article-body blockquote p {
  color: #0009;
}

.light-mode .article-body pre {
  background: #f3f4f6;
  border-color: #e5e7eb;
}

.light-mode .article-body p code, .light-mode .article-body li code {
  background: #0000000f;
}

.light-mode .article-footer {
  border-top-color: #e5e7eb;
}

.light-mode .article-share-label {
  color: #00000073;
}

.light-mode .article-share-btn {
  color: #00000080;
  background: #00000005;
  border-color: #0000001a;
}

.light-mode .article-share-btn:hover {
  color: #111;
  background: #0000000d;
  border-color: #0003;
}

.light-mode .article-author-site {
  color: #00000059;
}

.light-mode .article-related-title {
  color: #111827;
}

.light-mode .related-card {
  border-color: #e5e7eb;
}

.light-mode .related-card:hover {
  border-color: #d1d5db;
}

.light-mode .related-card__title {
  color: #111827;
}

.light-mode .related-card__date {
  color: #0006;
}

.light-mode .article-body thead {
  border-bottom-color: #e5e7eb;
}

.light-mode .article-body th {
  color: #111827;
}

.light-mode .article-body td {
  color: #000000a6;
  border-bottom-color: #f3f4f6;
}

.light-mode .article-body tbody tr:hover td {
  background: #00000005;
}

.light-mode .article-stars {
  display: none;
}

:root {
  --cs-bg: #000;
  --cs-text-primary: #fff;
  --cs-text-secondary: #ffffff80;
  --cs-text-muted: #ffffff59;
  --cs-border: #ffffff14;
  --cs-border-strong: #ffffff1f;
  --cs-card-bg: #ffffff05;
  --cs-accent: #a855f7;
  --cs-input-bg: #ffffff0d;
}

#starfield {
  z-index: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
}

.reveal {
  opacity: 0;
  transition: all .7s cubic-bezier(.16, 1, .3, 1);
  transform: translateY(24px);
}

.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

.cs-page {
  z-index: 1;
  padding-top: 96px;
  position: relative;
}

.cs-container {
  max-width: 1060px;
  margin: 0 auto;
  padding: 0 24px 80px;
}

.cs-hero {
  text-align: center;
  padding: 60px 0 48px;
}

.cs-breadcrumb {
  text-transform: uppercase;
  letter-spacing: .12em;
  color: var(--cs-text-muted);
  margin-bottom: 24px;
  font-family: JetBrains Mono, monospace;
  font-size: 11px;
}

.cs-hero h1 {
  letter-spacing: -.03em;
  margin-bottom: 16px;
  font-size: clamp(32px, 5vw, 48px);
  font-weight: 700;
  line-height: 1.1;
}

.cs-hero-sub {
  color: var(--cs-text-secondary);
  max-width: 560px;
  margin: 0 auto;
  font-size: 16px;
  line-height: 1.6;
}

.cs-layout {
  grid-template-columns: 300px 1fr;
  align-items: start;
  gap: 48px;
  display: grid;
}

@media (max-width: 860px) {
  .cs-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

.cs-sidebar-card {
  background: var(--cs-card-bg);
  border: 1px solid var(--cs-border);
  border-radius: 12px;
  margin-bottom: 16px;
  padding: 24px;
}

.cs-sidebar-card h3 {
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 600;
}

.cs-sidebar-card p {
  color: var(--cs-text-secondary);
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 1.6;
}

.cs-sidebar-card p:last-child {
  margin-bottom: 0;
}

.cs-sidebar-btn {
  border: 1px solid var(--cs-border-strong);
  color: var(--cs-text-secondary);
  border-radius: 6px;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.cs-sidebar-btn:hover {
  color: var(--cs-text-primary);
  border-color: #ffffff4d;
}

.cs-sidebar-email {
  color: var(--cs-accent);
  text-decoration: none;
}

.cs-sidebar-email:hover {
  text-decoration: underline;
}

.cs-form-card {
  background: var(--cs-card-bg);
  border: 1px solid var(--cs-border);
  border-radius: 16px;
  padding: 32px;
}

.cs-form-row {
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  display: grid;
}

@media (max-width: 640px) {
  .cs-form-row {
    grid-template-columns: 1fr;
  }

  .cs-form-card {
    padding: 24px 20px;
  }
}

.cs-form-group {
  margin-bottom: 20px;
}

.cs-form-label {
  color: var(--cs-text-secondary);
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 500;
  display: block;
}

.cs-form-label .required {
  color: #ef4444;
  margin-left: 2px;
}

.cs-form-input, .cs-form-select, .cs-form-textarea {
  background: var(--cs-input-bg);
  border: 1px solid var(--cs-border-strong);
  width: 100%;
  color: var(--cs-text-primary);
  -webkit-appearance: none;
  border-radius: 8px;
  outline: none;
  padding: 12px 14px;
  font-family: Inter, sans-serif;
  font-size: 14px;
  transition: border-color .2s;
}

.cs-form-input::placeholder, .cs-form-textarea::placeholder {
  color: #ffffff4d;
}

.cs-form-input:focus, .cs-form-select:focus, .cs-form-textarea:focus {
  border-color: var(--cs-accent);
}

.cs-form-select {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='rgba(255,255,255,0.4)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 14px center;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.cs-form-select option {
  color: #fff;
  background: #1a1a1a;
}

.cs-form-textarea {
  resize: vertical;
  min-height: 100px;
}

.cs-form-error {
  color: #ef4444;
  margin-top: 4px;
  font-size: 12px;
  display: none;
}

.cs-form-error.visible {
  display: block;
}

.cs-hp {
  opacity: 0;
  position: absolute;
  left: -9999px;
}

.cs-form-submit {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 8px;
  width: 100%;
  margin-top: 8px;
  padding: 14px 24px;
  font-family: Inter, sans-serif;
  font-size: 15px;
  font-weight: 600;
  transition: all .2s;
}

.cs-form-submit:hover {
  background: #ffffffe6;
  border-color: #ffffffe6;
}

.cs-form-submit:disabled {
  opacity: .6;
  cursor: not-allowed;
}

.cs-form-note {
  color: var(--cs-text-muted);
  text-align: center;
  margin-top: 16px;
  font-size: 12px;
}

.cs-form-note a {
  color: var(--cs-text-secondary);
  text-decoration: underline;
}

.cs-success {
  text-align: center;
  padding: 48px 24px;
  display: none;
}

.cs-success.active {
  display: block;
}

.cs-success-icon {
  color: #22c55e;
  background: #22c55e1f;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  margin: 0 auto 20px;
  font-size: 24px;
  display: flex;
}

.cs-success h2 {
  margin-bottom: 12px;
  font-size: 24px;
  font-weight: 700;
}

.cs-success p {
  color: var(--cs-text-secondary);
  margin-bottom: 24px;
  font-size: 15px;
  line-height: 1.6;
}

.cs-success-btn {
  color: #000;
  background: #fff;
  border: 1px solid #fff;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.cs-success-btn:hover {
  background: #ffffffe6;
}

.light-mode {
  --cs-bg: #f9fafb;
  --cs-text-primary: #111827;
  --cs-text-secondary: #0009;
  --cs-text-muted: #0006;
  --cs-border: #00000014;
  --cs-border-strong: #0000001f;
  --cs-card-bg: #fff;
  --cs-input-bg: #f9fafb;
  color: #111827;
  background: #f9fafb;
}

.light-mode .cs-form-input::placeholder, .light-mode .cs-form-textarea::placeholder {
  color: #00000059;
}

.light-mode .cs-form-select option {
  color: #111827;
  background: #fff;
}

.light-mode .cs-form-select {
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='rgba(0,0,0,0.4)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.light-mode .cs-form-submit {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .cs-form-submit:hover {
  background: #1f2937;
  border-color: #1f2937;
}

.light-mode .cs-sidebar-btn:hover {
  color: #111827;
  border-color: #0000004d;
}

.light-mode .cs-success-btn {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .cs-success-btn:hover {
  background: #1f2937;
}

.light-mode #starfield {
  display: none;
}

body:has(.help-center-page) .torki-navbar {
  display: none !important;
}

body:has(.help-center-page) > * > main {
  padding-top: 0 !important;
}

.search-glow:focus-within {
  border-color: var(--border-hover);
  box-shadow: 0 0 40px #9333ea26;
}

.help-center-page ::-webkit-scrollbar {
  width: 6px;
}

.help-center-page ::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 3px;
}

.help-center-page ::-webkit-scrollbar-track {
  background: none;
}

.article-content h2 {
  color: var(--text-main);
  margin-top: 2.5rem;
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: 600;
}

.article-content h3 {
  color: var(--text-main);
  margin-top: 2rem;
  margin-bottom: .75rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.article-content p {
  color: var(--text-muted);
  margin-bottom: 1.25rem;
  font-size: 1rem;
  line-height: 1.8;
}

.article-content ul {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  margin-left: 1.5rem;
  line-height: 1.8;
  list-style: outside;
}

.article-content ol {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  margin-left: 1.5rem;
  line-height: 1.8;
  list-style: decimal;
}

.article-content li {
  margin-bottom: .35rem;
}

.article-content strong {
  color: var(--text-main);
  font-weight: 600;
}

.article-content a {
  color: #9333ea;
  text-decoration: none;
  transition: color .2s;
}

.article-content a:hover {
  color: #a855f7;
  text-decoration: underline;
}

.article-content blockquote {
  background: #a855f70a;
  border-left: 3px solid #a855f7;
  border-radius: 0 8px 8px 0;
  margin: 24px 0;
  padding: 12px 20px;
}

.article-content blockquote p {
  color: var(--text-subtle);
  margin-bottom: 0;
}

.article-content pre {
  border: 1px solid var(--border-subtle);
  background: #0006;
  border-radius: 10px;
  margin: 24px 0;
  padding: 20px;
  font-size: 14px;
  overflow-x: auto;
}

.article-content code {
  font-family: JetBrains Mono, monospace;
  font-size: .9em;
}

.article-content p code, .article-content li code {
  background: #ffffff0f;
  border-radius: 4px;
  padding: 2px 6px;
}

.article-content img {
  border-radius: 10px;
  max-width: 100%;
  height: auto;
  margin: 24px auto;
  display: block;
}

.article-content table {
  border-collapse: collapse;
  width: 100%;
  margin: 24px 0;
  font-size: 14px;
  display: block;
  overflow-x: auto;
}

.article-content thead {
  border-bottom: 2px solid var(--border-subtle);
}

.article-content th {
  text-align: left;
  color: var(--text-main);
  white-space: nowrap;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 600;
}

.article-content td {
  border-bottom: 1px solid var(--border-subtle);
  color: var(--text-muted);
  white-space: nowrap;
  padding: 10px 12px;
}

.article-content tbody tr:hover td {
  background: #ffffff08;
}

.light-mode .article-content h2, .light-mode .article-content h3 {
  color: #111827;
}

.light-mode .article-content p, .light-mode .article-content ul, .light-mode .article-content ol {
  color: #000000b3;
}

.light-mode .article-content blockquote {
  background: #a855f70f;
}

.light-mode .article-content blockquote p {
  color: #0009;
}

.light-mode .article-content pre {
  background: #f3f4f6;
  border-color: #e5e7eb;
}

.light-mode .article-content p code, .light-mode .article-content li code {
  background: #0000000f;
}

.light-mode .article-content thead {
  border-bottom-color: #e5e7eb;
}

.light-mode .article-content th {
  color: #111827;
}

.light-mode .article-content td {
  color: #000000a6;
  border-bottom-color: #f3f4f6;
}

.light-mode .article-content tbody tr:hover td {
  background: #00000005;
}

.light-mode .help-center-page ::-webkit-scrollbar-thumb {
  background: #ccc;
}

.help-faq details[open] summary ~ div {
  animation: .2s ease-out faq-open;
}

@keyframes faq-open {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.status-page {
  color: #fff;
  background: #000;
  min-height: 100vh;
  font-family: Inter, -apple-system, sans-serif;
  position: relative;
  overflow-x: hidden;
}

.status-grid-wrapper {
  justify-content: center;
  align-items: flex-start;
  gap: 0;
  max-width: 1200px;
  margin: 0 auto;
  padding: 60px 40px;
  display: flex;
  position: relative;
}

.status-nodes {
  z-index: 10;
  flex-direction: column;
  flex: 1;
  gap: 16px;
  max-width: 360px;
  display: flex;
  position: relative;
}

.status-nodes-left {
  align-items: flex-end;
  padding-right: 80px;
}

.status-nodes-right {
  align-items: flex-start;
  padding-left: 80px;
}

.status-hub {
  z-index: 15;
  width: 100px;
  height: 100px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.status-hub-ring {
  border: 1px solid;
  border-radius: 50%;
  animation: 20s linear infinite status-core-rotate;
  position: absolute;
}

.status-hub-ring-outer {
  border-color: #ffffff1a;
  inset: -15px;
}

.status-hub-ring-inner {
  border-color: #ffffff2e;
  animation-duration: 12s;
  animation-direction: reverse;
  inset: -5px;
}

@keyframes status-core-rotate {
  from {
    transform: rotate(0);
  }

  to {
    transform: rotate(360deg);
  }
}

.status-hub-icon {
  z-index: 5;
  background: radial-gradient(circle, #ffffff14, #0000);
  border: 1px solid #ffffff1f;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  display: flex;
  position: relative;
}

.status-hub-logo {
  filter: drop-shadow(0 0 12px #ffffff40);
  width: 48px;
  height: 48px;
}

.status-hub-label {
  letter-spacing: 2px;
  color: #fff9;
  opacity: .7;
  white-space: nowrap;
  margin-top: 8px;
  font-size: .6rem;
  font-weight: 700;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.status-lines-svg {
  z-index: 2;
  pointer-events: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.status-line {
  fill: none;
  opacity: 1;
}

.status-line.up {
  stroke: #22c55e26;
}

.status-line.down {
  stroke: #ef444466;
}

.status-line.degraded {
  stroke: #f59e0b4d;
}

.status-line.unknown {
  stroke: #ffffff0d;
}

.status-line-dot {
  fill: #22c55e99;
}

.status-line-dot.down {
  fill: #ef444499;
}

.status-line-dot.degraded {
  fill: #f59e0b80;
}

.status-line-dot.unknown {
  fill: #ffffff1a;
}

.status-card {
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 14px;
  width: 280px;
  padding: 14px 16px;
  transition: all .3s;
  position: relative;
}

.status-card:hover {
  background: #ffffff0d;
  border-color: #ffffff1a;
  transform: translateY(-2px);
}

.status-card.up {
  box-shadow: 0 0 20px #22c55e0d;
}

.status-card.down {
  border-color: #ef444426;
  box-shadow: 0 0 20px #ef44440f;
}

.status-card.degraded {
  border-color: #f59e0b26;
  box-shadow: 0 0 20px #f59e0b0f;
}

.status-card-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  display: flex;
}

.status-card-info {
  align-items: center;
  gap: 10px;
  display: flex;
}

.status-card-icon {
  color: #fff;
  background: #ffffff0f;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: 1.1rem;
  display: flex;
}

.status-card-name {
  color: #fff;
  font-size: .82rem;
  font-weight: 600;
  line-height: 1.2;
}

.status-card-desc {
  color: #ffffff73;
  margin-top: 1px;
  font-size: .68rem;
}

.status-card-dot {
  background: #ffffff73;
  border-radius: 50%;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  transition: all .5s;
}

.status-card-dot.up {
  background: #22c55e;
  box-shadow: 0 0 6px #22c55e4d;
}

.status-card-dot.down {
  background: #ef4444;
  animation: 2s ease-in-out infinite card-dot-pulse-red;
  box-shadow: 0 0 6px #ef44444d;
}

.status-card-dot.degraded {
  background: #f59e0b;
  box-shadow: 0 0 6px #f59e0b4d;
}

@keyframes card-dot-pulse-red {
  0%, 100% {
    box-shadow: 0 0 6px #ef44444d;
  }

  50% {
    box-shadow: 0 0 14px #ef4444b3;
  }
}

.status-card-stats {
  border-top: 1px solid #ffffff14;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 8px;
  padding-top: 8px;
  display: flex;
}

.status-card-uptime-label {
  font-size: .65rem;
  font-weight: 500;
}

.status-card-uptime-label.up {
  color: #22c55e;
}

.status-card-uptime-label.down {
  color: #ef4444;
}

.status-card-uptime-label.degraded {
  color: #f59e0b;
}

.status-card-percent {
  font-variant-numeric: tabular-nums;
  font-size: .68rem;
  font-weight: 600;
}

.status-card-percent.up {
  color: #22c55e;
}

.status-card-percent.down {
  color: #ef4444;
}

.status-card-percent.degraded {
  color: #f59e0b;
}

.status-card-percent.unknown {
  color: #ffffff4d;
}

.status-bar {
  border-radius: 4px;
  gap: 1px;
  height: 16px;
  display: flex;
  overflow: hidden;
}

.status-bar-segment {
  border-radius: 1px;
  flex: 1;
  min-width: 2px;
  transition: opacity .15s;
}

.status-bar-segment.up {
  opacity: .7;
  background: #22c55e;
}

.status-bar-segment.down {
  opacity: .9;
  background: #ef4444;
}

.status-bar-segment.degraded {
  opacity: .8;
  background: #f59e0b;
}

.status-bar-segment.unknown {
  background: #ffffff0f;
}

.status-card.coming-soon {
  opacity: .45;
  pointer-events: none;
  background: none;
  border-style: dashed;
  border-color: #ffffff0f;
  padding: 14px 16px;
}

.status-card.coming-soon .status-card-header {
  margin-bottom: 0;
}

.status-card-icon.coming-muted {
  color: #ffffff73;
  background: #ffffff08;
}

.status-card-name.coming-muted {
  color: #ffffff73;
}

.status-dot-coming {
  background: #ffffff14;
  border: 1px dashed #ffffff26;
  border-radius: 50%;
  flex-shrink: 0;
  width: 10px;
  height: 10px;
}

.status-coming-badge {
  letter-spacing: 1px;
  color: #ffffff73;
  background: #ffffff0f;
  border: 1px solid #ffffff1f;
  border-radius: 4px;
  padding: 2px 8px;
  font-size: .55rem;
  font-weight: 700;
  position: absolute;
  top: -8px;
  right: 12px;
}

.status-skeleton {
  background: #ffffff0d;
  border-radius: 8px;
  animation: 1.5s ease-in-out infinite status-skeleton-pulse;
}

@keyframes status-skeleton-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .4;
  }
}

.status-card-animate {
  opacity: 0;
  animation: .5s forwards status-card-in;
  transform: translateY(16px);
}

@keyframes status-card-in {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.status-list {
  flex-direction: column;
  gap: 12px;
  max-width: 800px;
  margin: 0 auto;
  padding: 32px 24px 80px;
  display: flex;
}

.status-list-item {
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  padding: 14px 16px;
  transition: border-color .2s;
  display: flex;
}

.status-list-item:hover {
  border-color: #ffffff26;
}

.status-list-left {
  align-items: center;
  gap: 12px;
  display: flex;
}

.status-list-icon {
  color: #fff9;
  background: #ffffff0f;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 1rem;
  display: flex;
}

.status-list-name {
  color: #fff;
  font-size: .82rem;
  font-weight: 600;
}

.status-list-desc {
  color: #ffffff73;
  margin-top: 1px;
  font-size: .68rem;
}

.status-list-right {
  align-items: center;
  gap: 14px;
  display: flex;
}

.status-list-bar {
  gap: 1px;
  width: 100px;
  height: 14px;
  display: flex;
}

.status-list-uptime {
  font-variant-numeric: tabular-nums;
  text-align: right;
  min-width: 58px;
  font-size: .68rem;
  font-weight: 600;
}

.status-list-uptime.up {
  color: #22c55e;
}

.status-list-uptime.down {
  color: #ef4444;
}

.status-list-uptime.degraded {
  color: #f59e0b;
}

.status-list-uptime.unknown {
  color: #ffffff4d;
}

.status-list-dot {
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.status-list-dot.up {
  background: #22c55e;
  box-shadow: 0 0 6px #22c55e4d;
}

.status-list-dot.down {
  background: #ef4444;
  box-shadow: 0 0 6px #ef44444d;
}

.status-list-dot.degraded {
  background: #f59e0b;
  box-shadow: 0 0 6px #f59e0b4d;
}

.status-error {
  text-align: center;
  color: #ffffff80;
  padding: 80px 24px;
}

.status-error i {
  color: #ffffff26;
  margin-bottom: 16px;
  font-size: 48px;
  display: block;
}

.status-error p {
  margin-bottom: 20px;
  font-size: 16px;
}

.status-retry-btn {
  color: #fff;
  cursor: pointer;
  background: #ffffff14;
  border: 1px solid #ffffff1f;
  border-radius: 8px;
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
}

.status-retry-btn:hover {
  background: #ffffff1f;
}

@media (max-width: 900px) {
  .status-grid-wrapper {
    flex-direction: column;
    align-items: center;
    padding: 30px 16px;
  }

  .status-nodes-left, .status-nodes-right {
    align-items: center;
    padding: 0;
  }

  .status-card {
    width: 100%;
    max-width: 340px;
  }

  .status-hub {
    margin-bottom: 30px;
    position: relative;
    top: auto;
    left: auto;
    transform: none;
  }

  .status-lines-svg, .status-list-bar {
    display: none;
  }
}

.light-mode .status-page {
  color: #111827;
  background: #f9fafb;
}

.light-mode .status-header-bar {
  background: #ffffffe6;
  border-bottom-color: #0000000f;
}

.light-mode .status-back-btn {
  color: #00000080;
}

.light-mode .status-back-btn:hover {
  color: #111827;
  background: #0000000a;
}

.light-mode .status-header-logo {
  border-color: #00000014;
}

.light-mode .status-header-title {
  color: #111827;
}

.light-mode .status-updated {
  color: #0006;
}

.light-mode .status-overall {
  background: #00000005;
  border-color: #00000014;
}

.light-mode .status-overall-label {
  color: #0009;
}

.light-mode .status-subscribe-btn {
  color: #fff;
  background: #111827;
  border-color: #111827;
}

.light-mode .status-subscribe-btn:hover {
  background: #374151;
}

.light-mode .status-card {
  background: #fff;
  border-color: #00000014;
}

.light-mode .status-card:hover {
  border-color: #00000024;
}

.light-mode .status-card-icon {
  color: #00000080;
  background: #0000000a;
}

.light-mode .status-card-name {
  color: #111827;
}

.light-mode .status-card-desc {
  color: #00000073;
}

.light-mode .status-card-uptime-label {
  color: #00000080;
}

.light-mode .status-card-uptime-pct {
  color: #111827;
}

.light-mode .status-card-dot {
  box-shadow: 0 0 6px #0000001a;
}

.light-mode .status-uptime-bar {
  background: #0000000a;
}

.light-mode .status-uptime-seg {
  background: #0000000f;
}

.light-mode .status-card.coming-soon {
  background: #00000003;
  border-color: #0000000d;
}

.light-mode .status-coming-badge {
  color: #00000059;
  background: #0000000a;
}

.light-mode .status-hub-label {
  color: #00000080;
}

.light-mode .status-hub-ring {
  border-color: #0000000f;
}

.light-mode .status-hub-ring-inner {
  border-color: #0000001a;
}

.light-mode .status-hub-logo {
  background: #fff;
  border-color: #00000014;
}

.light-mode .status-line {
  stroke: #00000014;
}

.light-mode .status-line.up {
  stroke: #22c55e66;
}

.light-mode .status-line.down {
  stroke: #ef444466;
}

.light-mode .status-line.degraded {
  stroke: #f59e0b66;
}

.light-mode .status-incidents {
  border-top-color: #0000000f;
}

.light-mode .status-incidents-title {
  color: #111827;
}

.light-mode .status-incident {
  border-color: #0000000f;
}

.light-mode .status-incident-service {
  color: #111827;
}

.light-mode .status-incident-msg {
  color: #0000008c;
}

.light-mode .status-incident-time {
  color: #00000059;
}

.light-mode .status-no-incidents {
  color: #0006;
}

.light-mode .status-skeleton {
  background: #0000000a;
}

.light-mode .status-error {
  color: #00000080;
}

.light-mode .status-error-btn {
  color: #fff;
  background: #111827;
}

.light-mode .status-modal {
  background: #fff;
  border-color: #0000001a;
}

.light-mode .status-modal-title {
  color: #111827;
}

.light-mode .status-modal-desc {
  color: #00000080;
}

.light-mode .status-modal-icon {
  color: #0006;
}

.light-mode .status-modal-input {
  color: #111827;
  background: #00000008;
  border-color: #0000001a;
}

.light-mode .status-modal-input:focus {
  border-color: #00000040;
}

.light-mode .status-modal-input::placeholder {
  color: #0000004d;
}

.light-mode .status-modal-submit {
  color: #fff;
  background: #111827;
}

.light-mode .status-modal-submit:hover {
  background: #374151;
}

.light-mode .status-modal-fine {
  color: #00000059;
}

.light-mode .status-modal-close {
  color: #0006;
}

.light-mode .status-modal-close:hover {
  color: #111827;
}

.status-header-bar {
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  z-index: 100;
  background: #000000f2;
  border-bottom: 1px solid #ffffff14;
  justify-content: space-between;
  align-items: center;
  padding: 16px 32px;
  display: flex;
  position: sticky;
  top: 0;
}

.status-header-left {
  align-items: center;
  gap: 10px;
  display: flex;
}

.status-back-btn {
  color: #fff;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff1f;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: .78rem;
  font-weight: 500;
  text-decoration: none;
  transition: all .2s;
  display: inline-flex;
}

.status-back-btn:hover {
  background: #ffffff14;
  border-color: #fff3;
}

.status-back-btn i {
  font-size: .9rem;
}

.status-header-logo {
  width: 28px;
  height: 28px;
}

.status-header-title {
  color: #fff;
  font-size: .95rem;
  font-weight: 600;
}

.status-header-center {
  align-items: center;
  gap: 12px;
  display: flex;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.status-header-right {
  align-items: center;
  gap: 12px;
  display: flex;
}

.status-view-toggles {
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 10px;
  align-items: center;
  gap: 2px;
  padding: 3px;
  display: flex;
}

.status-view-btn {
  color: #ffffff73;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 7px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 28px;
  font-size: .9rem;
  transition: all .2s;
  display: flex;
}

.status-view-btn:hover {
  color: #fff;
}

.status-view-btn.active {
  color: #fff;
  background: #ffffff1f;
}

.status-overall-pill {
  color: #fff;
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 100px;
  align-items: center;
  gap: 8px;
  padding: 6px 20px;
  font-size: .82rem;
  font-weight: 500;
  display: flex;
}

.status-overall-pill.down, .status-overall-pill.disruption {
  background: #ef44440f;
  border-color: #ef444433;
}

.status-overall-pill.degraded {
  background: #f59e0b0f;
  border-color: #f59e0b33;
}

.status-overall-dot {
  background: #ffffff73;
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  transition: all .5s;
}

.status-overall-dot.up {
  background: #22c55e;
  animation: 2s infinite status-dot-pulse;
  box-shadow: 0 0 8px #22c55e4d;
}

.status-overall-dot.down {
  background: #ef4444;
  animation: 1s infinite status-dot-pulse;
  box-shadow: 0 0 8px #ef44444d;
}

.status-overall-dot.degraded {
  background: #f59e0b;
  animation: 1.5s infinite status-dot-pulse;
  box-shadow: 0 0 8px #f59e0b4d;
}

@keyframes status-dot-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

.status-subscribe-btn {
  color: #fff;
  cursor: pointer;
  white-space: nowrap;
  background: #ffffff0f;
  border: 1px solid #ffffff26;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  font-size: .72rem;
  font-weight: 600;
  transition: all .2s;
  display: inline-flex;
}

.status-subscribe-btn:hover {
  background: #ffffff1f;
  border-color: #ffffff4d;
}

.status-subscribe-btn i {
  font-size: .9rem;
}

.status-last-updated {
  color: #ffffff73;
  white-space: nowrap;
  font-size: .72rem;
}

.status-modal-overlay {
  z-index: 1000;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  background: #000000b3;
  justify-content: center;
  align-items: center;
  animation: .2s status-fade-in;
  display: flex;
  position: fixed;
  inset: 0;
}

.status-modal {
  text-align: center;
  background: #0a0a0a;
  border: 1px solid #ffffff0f;
  border-radius: 16px;
  width: 90%;
  max-width: 400px;
  padding: 32px;
  animation: .25s status-slide-up;
  position: relative;
}

.status-modal-close {
  color: #ffffff73;
  cursor: pointer;
  background: none;
  border: none;
  padding: 4px;
  font-size: 1.5rem;
  line-height: 1;
  position: absolute;
  top: 12px;
  right: 16px;
}

.status-modal-close:hover {
  color: #e8e8ed;
}

.status-modal-icon {
  margin-bottom: 12px;
}

.status-modal-icon i {
  color: #fff;
  font-size: 2rem;
}

.status-modal-title {
  color: #e8e8ed;
  margin: 0 0 6px;
  font-size: 1.15rem;
  font-weight: 600;
}

.status-modal-desc {
  color: #ffffff73;
  margin: 0 0 20px;
  font-size: .82rem;
  line-height: 1.4;
}

.status-modal-form {
  gap: 8px;
  display: flex;
}

.status-modal-form input {
  color: #e8e8ed;
  background: #ffffff0a;
  border: 1px solid #ffffff1a;
  border-radius: 8px;
  outline: none;
  flex: 1;
  padding: 10px 14px;
  font-size: .85rem;
  transition: border-color .2s;
}

.status-modal-form input:focus {
  border-color: #ffffff59;
}

.status-modal-form input::placeholder {
  color: #ffffff40;
}

.status-modal-submit {
  color: #000;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  font-size: .85rem;
  font-weight: 600;
  transition: background .2s;
}

.status-modal-submit:hover {
  background: #e0e0e0;
}

.status-modal-submit:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.status-modal-msg {
  color: #22c55e;
  background: #22c55e14;
  border: 1px solid #22c55e33;
  border-radius: 8px;
  margin-top: 12px;
  padding: 8px 12px;
  font-size: .82rem;
}

.status-modal-fine {
  color: #ffffff40;
  margin: 16px 0 0;
  font-size: .72rem;
}

@keyframes status-fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes status-slide-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.status-incidents {
  max-width: 800px;
  margin: 40px auto;
  padding: 0 32px;
}

.status-incidents-title {
  color: #fff;
  border-bottom: 1px solid #ffffff14;
  margin-bottom: 16px;
  padding-bottom: 10px;
  font-size: .9rem;
  font-weight: 600;
}

.status-incidents-list {
  flex-direction: column;
  display: flex;
}

.status-incident-empty {
  color: #22c55e;
  text-align: center;
  opacity: .8;
  padding: 32px 0;
  font-size: .82rem;
}

.status-incident-item {
  border-bottom: 1px solid #ffffff14;
  padding: 14px 0;
}

.status-incident-header {
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  display: flex;
}

.status-incident-badge {
  text-transform: uppercase;
  letter-spacing: .5px;
  font-size: .72rem;
  font-weight: 700;
}

.status-incident-badge.ongoing {
  color: #ef4444;
}

.status-incident-badge.resolved {
  color: #22c55e;
}

.status-incident-sep {
  color: #ffffff73;
  opacity: .3;
}

.status-incident-service {
  color: #fff;
  font-size: .78rem;
  font-weight: 500;
}

.status-incident-message {
  color: #ffffff73;
  margin-top: 4px;
  font-size: .75rem;
  line-height: 1.5;
}

.status-incident-time {
  color: #ffffff73;
  opacity: .6;
  margin-top: 4px;
  font-size: .68rem;
}

.status-footer {
  text-align: center;
  border-top: 1px solid #ffffff0f;
  padding: 60px 24px 40px;
}

.status-footer-apps {
  margin-bottom: 40px;
}

.status-footer-apps-label {
  letter-spacing: 2px;
  color: #ffffff59;
  margin-bottom: 16px;
  font-size: .65rem;
  font-weight: 700;
  display: block;
}

.status-footer-apps-row {
  justify-content: center;
  gap: 12px;
  display: flex;
}

.status-footer-store-btn {
  color: #fff;
  background: #ffffff0a;
  border: 1px solid #ffffff1a;
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  text-decoration: none;
  transition: all .2s;
  display: flex;
}

.status-footer-store-btn:hover {
  background: #ffffff14;
  border-color: #fff3;
}

.status-footer-store-btn i {
  font-size: 1.6rem;
}

.status-footer-store-sub {
  color: #ffffff73;
  font-size: .6rem;
  line-height: 1;
  display: block;
}

.status-footer-store-name {
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.3;
  display: block;
}

.status-footer-brand {
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  display: flex;
}

.status-footer-logo {
  filter: drop-shadow(0 0 8px #ffffff1a);
  width: 40px;
  height: 40px;
}

.status-footer-wordmark {
  color: #fff;
  letter-spacing: -.02em;
  font-size: 1.8rem;
  font-weight: 700;
}

.status-footer-links {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 16px;
  display: flex;
}

.status-footer-copy {
  color: #ffffff4d;
  font-size: .72rem;
}

.status-footer-link {
  color: #fff6;
  font-size: .72rem;
  text-decoration: none;
  transition: color .2s;
}

.status-footer-link:hover {
  color: #fff;
}

.status-footer-link-active {
  color: #fff9;
}

@media (max-width: 900px) {
  .status-header-bar {
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px;
  }

  .status-header-center {
    position: static;
    transform: none;
  }

  .status-subscribe-btn span {
    display: none;
  }

  .status-footer-apps-row {
    flex-direction: column;
    align-items: center;
  }
}

.light-mode .status-footer {
  background: #f9fafb;
  border-top-color: #0000000f;
}

.light-mode .status-footer-brand {
  color: #111827;
}

.light-mode .status-footer-copy, .light-mode .status-footer-link {
  color: #0006;
}

.light-mode .status-footer-link:hover {
  color: #111827;
}

.light-mode .status-footer-link-active {
  color: #0009;
}

.light-mode .status-footer-apps-label {
  color: #0006;
}

.light-mode .status-footer-app-btn {
  color: #111827;
  background: #fff;
  border-color: #0000001a;
}

.light-mode .status-footer-app-btn:hover {
  border-color: #0003;
}

.light-mode .status-footer-app-sub {
  color: #0006;
}

body:has(.legal-page) .torki-navbar {
  display: none !important;
}

body:has(.legal-page) > * > main {
  padding-top: 0 !important;
}

.legal-page ::-webkit-scrollbar {
  width: 6px;
}

.legal-page ::-webkit-scrollbar-thumb {
  background: #333;
  border-radius: 3px;
}

.legal-page ::-webkit-scrollbar-track {
  background: none;
}

.legal-content h2 {
  color: var(--text-main);
  border-bottom: 1px solid var(--border-light);
  margin-top: 4rem;
  margin-bottom: 1.5rem;
  padding-bottom: .5rem;
  scroll-margin-top: 120px;
  font-size: 1.5rem;
  font-weight: 600;
}

.legal-content h3 {
  color: var(--text-main);
  opacity: .9;
  margin-top: 2rem;
  margin-bottom: .75rem;
  font-size: 1.1rem;
  font-weight: 500;
}

.legal-content p {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  font-size: .95rem;
  line-height: 1.8;
}

.legal-content ul {
  color: var(--text-muted);
  margin-bottom: 1.5rem;
  margin-left: 1.5rem;
  line-height: 1.8;
  list-style: outside;
}

.legal-content strong {
  color: var(--text-main);
  font-weight: 600;
}

.legal-content a {
  color: #818cf8;
  text-decoration: none;
  transition: color .2s;
}

.legal-content a:hover {
  color: #a5b4fc;
  text-decoration: underline;
}

.legal-table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 2rem;
  font-size: .9rem;
}

.legal-table th, .legal-table td {
  border: 1px solid var(--border-light);
  text-align: left;
  color: var(--text-muted);
  padding: 12px;
}

.legal-table th {
  background-color: var(--bg-hover);
  color: var(--text-main);
  font-weight: 600;
}

.legal-table tr:hover td {
  background-color: var(--bg-hover);
}

.legal-nav-link {
  color: var(--text-subtle);
  border-left: 2px solid #0000;
  padding: 8px 12px;
  font-size: .875rem;
  text-decoration: none;
  transition: all .3s;
  display: block;
}

.legal-nav-link:hover {
  color: var(--text-main);
}

.legal-nav-link.active {
  background: linear-gradient(90deg, #9333ea1a 0%, #0000 100%);
  border-left-color: #9333ea;
  padding-left: 1rem;
  color: var(--text-main) !important;
}

.light-mode .legal-page ::-webkit-scrollbar-thumb {
  background: #ccc;
}

:root:not(.dark):not([data-theme="dark"]) .legal-content a {
  color: #6366f1;
}

:root:not(.dark):not([data-theme="dark"]) .legal-content a:hover {
  color: #4f46e5;
}

:root {
  --sidebar-bg: #fff;
  --sidebar-border: #e5e7eb;
  --sidebar-text: #111827;
  --sidebar-text-muted: #6b7280;
  --sidebar-hover: #f3f4f6;
  --sidebar-active: #e5e7eb;
  --sidebar-btn-icon: #6b7280;
}

.dark, [data-theme="dark"] {
  --sidebar-bg: #000;
  --sidebar-border: #ffffff14;
  --sidebar-text: #ececec;
  --sidebar-text-muted: #9ca3af;
  --sidebar-hover: #ffffff14;
  --sidebar-active: #ffffff1f;
  --sidebar-btn-icon: #9ca3af;
}

.sidebar-btn {
  width: 100%;
  color: var(--sidebar-text);
  cursor: pointer;
  white-space: nowrap;
  text-align: left;
  background: none;
  border: none;
  border-radius: 10px;
  align-items: center;
  margin-bottom: 2px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
  overflow: hidden;
}

.sidebar-btn:hover {
  background-color: var(--sidebar-hover);
}

.sidebar-btn.active {
  background-color: var(--sidebar-active);
}

.sidebar-icon, .sidebar-btn i {
  color: var(--sidebar-btn-icon);
  flex-shrink: 0;
  margin-right: 14px;
  font-size: 22px;
  transition: color .2s;
}

.sidebar-btn:hover i, .sidebar-btn:hover .sidebar-icon {
  color: var(--sidebar-text);
}

.label-text {
  color: var(--sidebar-text);
  font-size: 14px;
}

.shortcut-text {
  color: var(--sidebar-text-muted);
}

.sidebar-agents-btn {
  border: 1px solid var(--sidebar-border);
  width: calc(100% - 16px);
  color: var(--sidebar-text-muted);
  cursor: pointer;
  background: none;
  border-radius: 10px;
  align-items: center;
  gap: 10px;
  margin: 4px 8px 8px;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.sidebar-agents-btn:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text);
}

.sidebar-agents-btn i {
  font-size: 18px;
}

.sidebar-footer-row {
  align-items: center;
  gap: 4px;
  display: flex;
}

.sidebar-download-btn, .sidebar-dots-btn {
  width: 32px;
  height: 32px;
  color: var(--sidebar-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  transition: all .2s;
  display: flex;
}

.sidebar-download-btn:hover, .sidebar-dots-btn:hover {
  background: var(--sidebar-hover);
  color: var(--sidebar-text);
}

.popover-menu {
  z-index: 9999;
  background-color: var(--sidebar-bg, #1a1a1a);
  border: 1px solid var(--sidebar-border, #ffffff1a);
  opacity: 0;
  border-radius: 14px;
  flex-direction: column;
  min-width: 180px;
  padding: 6px;
  transition: opacity .1s ease-out, transform .1s ease-out;
  display: none;
  position: fixed;
  transform: scale(.95);
  box-shadow: 0 10px 40px #0009;
}

.popover-menu.visible {
  opacity: 1;
  display: flex;
  transform: scale(1);
}

:root:not(.dark):not([data-theme="dark"]) .popover-menu, :root[data-theme="light"] .popover-menu {
  box-shadow: 0 10px 30px -5px #00000026;
}

.menu-item {
  color: var(--sidebar-text, #ececec);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  font-size: 14px;
  transition: all .2s;
  display: flex;
}

.menu-item:hover {
  background-color: var(--sidebar-hover, #ffffff14);
}

.menu-item i {
  color: var(--sidebar-btn-icon, #9ca3af);
  font-size: 18px;
}

.menu-item:hover i {
  color: var(--sidebar-text, #ececec);
}

.menu-item.danger, .menu-item.danger i {
  color: #ff5252;
}

.menu-item.danger:hover {
  background-color: #ff52521a;
}

.menu-item-left {
  flex: 1;
  align-items: center;
  gap: 12px;
  display: flex;
}

.menu-user-block {
  border-bottom: 1px solid var(--sidebar-border);
  margin-bottom: 6px;
  padding: 8px 12px;
}

.menu-user-name {
  color: var(--sidebar-text);
  font-size: 14px;
  font-weight: 600;
}

.menu-user-email {
  color: var(--sidebar-text-muted);
  font-size: 12px;
}

.menu-header {
  color: var(--sidebar-text-muted);
  text-transform: uppercase;
  letter-spacing: .05em;
  padding: 8px 12px 4px;
  font-size: 11px;
  font-weight: 600;
}

.search-modal-overlay {
  z-index: 10000;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  background: #000000b3;
  justify-content: center;
  align-items: flex-start;
  padding-top: 15vh;
  display: none;
  position: fixed;
  inset: 0;
}

.search-modal-overlay.visible {
  display: flex;
}

.search-modal-container {
  background: var(--bg-card, #151515);
  border: 1px solid var(--border-subtle, #27272a);
  border-radius: 16px;
  width: 540px;
  max-width: 90vw;
  overflow: hidden;
  box-shadow: 0 20px 60px #00000080;
}

.search-modal-header {
  border-bottom: 1px solid var(--border-subtle, #27272a);
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  display: flex;
}

.search-modal-input {
  color: var(--text-main, #fff);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  padding: 8px 0;
  font-size: 16px;
}

.search-modal-input::placeholder {
  color: var(--text-subtle, #71717a);
}

.search-modal-close {
  width: 32px;
  height: 32px;
  color: var(--text-subtle, #71717a);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  transition: all .15s;
  display: flex;
}

.search-modal-close:hover {
  background: var(--bg-hover, #141414);
  color: var(--text-main, #fff);
}

.search-modal-body {
  max-height: 400px;
  padding: 8px;
  overflow-y: auto;
}

.search-empty {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 40px 20px;
  display: flex;
}

.search-result-item {
  cursor: pointer;
  color: var(--text-main, #fff);
  border-radius: 10px;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  transition: background .15s;
  display: flex;
}

.search-result-item:hover {
  background: var(--bg-hover, #141414);
}

.search-result-icon {
  color: var(--text-subtle, #71717a);
  flex-shrink: 0;
  font-size: 18px;
}

.search-result-content {
  flex: 1;
  min-width: 0;
}

.search-result-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 14px;
  font-weight: 500;
  overflow: hidden;
}

.search-result-date {
  color: var(--text-subtle, #71717a);
  flex-shrink: 0;
  font-size: 12px;
}

.session-item {
  transition: all .15s;
}

.session-item:hover {
  background: var(--sidebar-hover);
}

.chat-options-btn {
  cursor: pointer;
  background: none;
  border: none;
}

.agent-card-mini {
  background: var(--sidebar-hover);
  border: 1px solid var(--sidebar-border);
  border-radius: 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 12px 8px;
  transition: all .2s;
  display: flex;
}

.agent-card-mini:hover {
  background: var(--sidebar-active);
  transform: translateY(-2px);
}

.agent-card-mini img {
  object-fit: cover;
  border: 2px solid #ffffff1a;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  margin-bottom: 6px;
}

.answer-content-wrapper {
  width: 100%;
  max-width: 100%;
  display: block;
}

.answer-content-wrapper .message-content {
  box-shadow: none;
  color: var(--text-main, #f4f4f5);
  background: none;
  border: none;
  padding: 0;
}

.chat-message {
  max-width: 100%;
}

.user-message-bubble {
  background-color: var(--bg-hover);
  color: var(--text-main);
}

.message-body-markdown {
  letter-spacing: .01em;
  font-size: 1rem;
  line-height: 1.75;
}

.message-body-markdown p {
  margin-bottom: 1.25em;
}

.message-body-markdown p:last-child {
  margin-bottom: 0;
}

.message-body-markdown ul, .message-body-markdown ol {
  margin-bottom: 1.25em;
  padding-left: 1.5em;
}

.message-body-markdown ul {
  list-style-type: disc;
}

.message-body-markdown ol {
  list-style-type: decimal;
}

.message-body-markdown li {
  margin-bottom: .5em;
}

.message-body-markdown h1, .message-body-markdown h2, .message-body-markdown h3 {
  color: var(--text-main, #fff);
  margin-top: 1.5em;
  margin-bottom: .75em;
  font-weight: 600;
  line-height: 1.3;
}

.message-body-markdown h1 {
  font-size: 1.5em;
}

.message-body-markdown h2 {
  font-size: 1.25em;
}

.message-body-markdown h3 {
  font-size: 1.1em;
}

.message-body-markdown blockquote {
  border-left: 3px solid var(--torki-purple);
  color: var(--text-muted);
  margin: 1em 0;
  padding-left: 1em;
}

.message-body-markdown a {
  color: var(--torki-accent, #a855f7);
  text-decoration: underline;
}

.message-body-markdown a:hover {
  color: var(--torki-purple-hover, #7e22ce);
}

.message-body-markdown code:not([class*="language-"]) {
  background: var(--bg-soft, #18181b);
  font-size: .875em;
  font-family: var(--font-mono);
  color: var(--text-main);
  border-radius: 4px;
  padding: 2px 6px;
}

.message-body-markdown pre {
  width: 100%;
  max-width: 100%;
}

.message-body-markdown table {
  border-collapse: collapse;
  width: 100%;
  margin: 12px 0;
}

.message-body-markdown th, .message-body-markdown td {
  border: 1px solid var(--border-subtle);
  text-align: left;
  padding: 8px 12px;
}

.message-body-markdown th {
  background: var(--bg-soft);
  font-weight: 600;
}

.ai-controls-row {
  transition: opacity .2s;
}

.quick-action-btn {
  border: 1px solid var(--border-subtle);
  background-color: var(--bg-card);
  color: var(--text-main);
  cursor: pointer;
  white-space: nowrap;
  border-radius: 9999px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
  box-shadow: 0 1px 2px #0000004d;
}

.quick-action-btn i {
  opacity: .9;
  font-size: 18px;
}

.quick-action-btn:hover {
  background-color: var(--bg-hover);
  border-color: var(--border-hover);
  color: var(--text-main);
  transform: translateY(-1px);
}

.quick-action-btn:active {
  transform: scale(.97);
}

.quick-action-btn.active-btn {
  border-color: var(--border-hover, #52525b);
  color: var(--text-main, #fff);
  background-color: var(--bg-hover, #ffffff0d);
}

.quick-action-btn.hidden-btn {
  opacity: 0;
  pointer-events: none;
  border: none;
  width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  transform: scale(.8);
}

.action-suggestions {
  flex-direction: column;
  gap: 0;
  width: 100%;
  max-width: 740px;
  margin-top: 8px;
  display: flex;
}

.suggestion-item {
  color: var(--text-muted, #a1a1aa);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 8px;
  width: 100%;
  padding: 12px 16px;
  font-size: 14px;
  transition: all .15s;
}

.suggestion-item:hover {
  background-color: var(--bg-hover, #ffffff0d);
  color: var(--text-main, #fff);
}

@keyframes qaFadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.scroll-to-bottom-btn {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  cursor: pointer;
  z-index: 45;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  transition: opacity .3s cubic-bezier(.4, 0, .2, 1), visibility .3s cubic-bezier(.4, 0, .2, 1), transform .3s cubic-bezier(.4, 0, .2, 1), background .15s, border-color .15s;
  display: flex;
  position: fixed;
  bottom: 200px;
  left: 50%;
  transform: translateX(-50%)translateY(12px);
  box-shadow: 0 4px 12px #00000026;
}

.scroll-to-bottom-btn svg {
  width: 20px;
  height: 20px;
  color: var(--text-main);
}

.scroll-to-bottom-btn.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%)translateY(0);
}

.scroll-to-bottom-btn:hover {
  background: var(--bg-hover);
  border-color: var(--border-hover);
}

@media (max-width: 768px) {
  .scroll-to-bottom-btn {
    width: 40px;
    height: 40px;
    bottom: 180px;
  }

  .scroll-to-bottom-btn svg {
    width: 18px;
    height: 18px;
  }
}

:root {
  --agents-bg: #000;
  --agents-card-bg: #ffffff05;
  --agents-card-bg-hover: #ffffff0d;
  --agents-card-border: #ffffff0f;
  --agents-card-border-hover: #ffffff1f;
  --agents-text-primary: #fff;
  --agents-text-secondary: #a1a1aa;
  --agents-text-muted: #71717a;
  --agents-input-bg: #ffffff0a;
  --agents-input-border: #ffffff14;
  --agents-input-border-focus: #fff3;
  --agents-dropdown-bg: #1a1a1a;
  --agents-dropdown-border: #ffffff1a;
  --agents-btn-bg: #ffffff14;
  --agents-btn-bg-hover: #ffffff1f;
  --agents-btn-border: #ffffff1f;
  --agents-shadow: #0006;
  --ab-bg: #000;
  --ab-bg-secondary: #ffffff05;
  --ab-bg-tertiary: #ffffff0a;
  --ab-bg-hover: #ffffff0f;
  --ab-border: #ffffff14;
  --ab-border-hover: #ffffff26;
  --ab-text-primary: #fff;
  --ab-text-secondary: #ffffffb3;
  --ab-text-muted: #fff6;
  --ab-text-hint: #ffffff40;
  --ab-input-bg: #ffffff0a;
  --ab-input-border: #ffffff1a;
  --ab-accent: #8b5cf6;
  --ab-accent-hover: #7c3aed;
  --ab-accent-bg: #8b5cf626;
  --ab-shadow: #00000080;
  --ab-overlay: #000000b3;
}

:root:not(.dark):not([data-theme="dark"]), :root[data-theme="light"] {
  --agents-bg: var(--bg-body, #fff);
  --agents-card-bg: var(--bg-card, #fff);
  --agents-card-bg-hover: var(--bg-hover, #f3f4f6);
  --agents-card-border: var(--border-subtle, #e5e7eb);
  --agents-card-border-hover: var(--border-hover, #d1d5db);
  --agents-text-primary: var(--text-main, #111827);
  --agents-text-secondary: var(--text-muted, #6b7280);
  --agents-text-muted: var(--text-subtle, #4b5563);
  --agents-input-bg: var(--bg-input, #fff);
  --agents-input-border: var(--border-subtle, #e5e7eb);
  --agents-input-border-focus: var(--border-hover, #d1d5db);
  --agents-dropdown-bg: var(--bg-card, #fff);
  --agents-dropdown-border: var(--border-subtle, #e5e7eb);
  --agents-btn-bg: var(--bg-hover, #f3f4f6);
  --agents-btn-bg-hover: #e5e7eb;
  --agents-btn-border: var(--border-subtle, #e5e7eb);
  --agents-shadow: #00000014;
  --ab-bg: var(--bg-body, #fff);
  --ab-bg-secondary: var(--bg-card, #fff);
  --ab-bg-tertiary: var(--bg-soft, #f4f4f5);
  --ab-bg-hover: var(--bg-hover, #f3f4f6);
  --ab-border: var(--border-subtle, #e5e7eb);
  --ab-border-hover: var(--border-hover, #d1d5db);
  --ab-text-primary: var(--text-main, #111827);
  --ab-text-secondary: var(--text-muted, #6b7280);
  --ab-text-muted: var(--text-subtle, #9ca3af);
  --ab-text-hint: #d1d5db;
  --ab-input-bg: var(--bg-input, #fff);
  --ab-input-border: var(--border-subtle, #e5e7eb);
  --ab-shadow: #00000014;
  --ab-overlay: #0000004d;
}

.agents-page-container {
  background: var(--agents-bg);
  z-index: 20;
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: none;
  position: relative;
  overflow: hidden;
}

.agents-page-container.active {
  display: flex;
}

.agents-page-header {
  border-bottom: 1px solid var(--agents-card-border);
  background: var(--agents-bg);
  flex-direction: column;
  gap: 16px;
  padding: 24px 32px;
  display: flex;
}

.agents-page-title-row {
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.agents-page-title {
  color: var(--agents-text-primary);
  letter-spacing: -.02em;
  font-size: 24px;
  font-weight: 600;
}

.agents-page-subtitle {
  color: var(--agents-text-muted);
  margin-top: 4px;
  font-size: 14px;
}

.agents-build-btn {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  transition: all .15s;
  display: flex;
}

.agents-build-btn:hover {
  background: #f0f0f0;
  transform: translateY(-1px);
}

.agents-toolbar {
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  display: flex;
}

.agents-search-box {
  background: var(--agents-input-bg);
  border: 1px solid var(--agents-input-border);
  border-radius: 8px;
  flex: 1;
  align-items: center;
  gap: 8px;
  min-width: 200px;
  max-width: 320px;
  padding: 8px 14px;
  transition: all .2s;
  display: flex;
}

.agents-search-box:focus-within {
  border-color: var(--agents-input-border-focus);
  background: var(--agents-card-bg-hover);
}

.agents-search-box svg {
  color: var(--agents-text-muted);
  flex-shrink: 0;
}

.agents-search-input {
  color: var(--agents-text-primary);
  background: none;
  border: none;
  outline: none;
  flex: 1;
  font-size: 14px;
}

.agents-search-input::placeholder {
  color: var(--agents-text-muted);
}

.agents-filter-dropdown, .agents-sort-dropdown {
  position: relative;
}

.agents-filter-btn, .agents-sort-btn {
  background: var(--agents-input-bg);
  border: 1px solid var(--agents-input-border);
  color: var(--agents-text-secondary);
  cursor: pointer;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  font-size: 13px;
  transition: all .2s;
  display: flex;
}

.agents-filter-btn:hover, .agents-sort-btn:hover {
  border-color: var(--agents-input-border-focus);
  background: var(--agents-card-bg-hover);
}

.agents-filter-menu, .agents-sort-menu {
  background: var(--agents-dropdown-bg);
  border: 1px solid var(--agents-dropdown-border);
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  min-width: 160px;
  box-shadow: 0 8px 24px var(--agents-shadow);
  border-radius: 8px;
  padding: 6px;
  transition: all .2s;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  transform: translateY(-8px);
}

.agents-filter-dropdown.open .agents-filter-menu, .agents-sort-dropdown.open .agents-sort-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.agents-filter-option, .agents-sort-option {
  width: 100%;
  color: var(--agents-text-secondary);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 6px;
  align-items: center;
  padding: 8px 12px;
  font-size: 13px;
  transition: all .15s;
  display: flex;
}

.agents-filter-option:hover, .agents-sort-option:hover {
  background: var(--agents-card-bg-hover);
  color: var(--agents-text-primary);
}

.agents-filter-option.active, .agents-sort-option.active {
  color: var(--agents-text-primary);
  background: var(--agents-btn-bg);
}

.agents-view-toggle {
  background: var(--agents-input-bg);
  border: 1px solid var(--agents-input-border);
  border-radius: 8px;
  margin-left: auto;
  padding: 2px;
  display: flex;
}

.agents-view-btn {
  width: 32px;
  height: 32px;
  color: var(--agents-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  transition: all .15s;
  display: flex;
}

.agents-view-btn:hover {
  color: var(--agents-text-secondary);
}

.agents-view-btn.active {
  background: var(--agents-btn-bg);
  color: var(--agents-text-primary);
}

.agents-page-content {
  background: var(--agents-bg);
  flex: 1;
  padding: 24px 32px;
  overflow-y: auto;
}

.agents-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  display: grid;
}

.agents-list {
  flex-direction: column;
  gap: 8px;
  display: flex;
}

.agent-card {
  background: var(--agents-card-bg);
  border: 1px solid var(--agents-card-border);
  cursor: pointer;
  border-radius: 12px;
  flex-direction: column;
  padding: 16px;
  transition: all .2s;
  display: flex;
  position: relative;
}

.agent-card:hover {
  background: var(--agents-card-bg-hover);
  border-color: var(--agents-card-border-hover);
}

.agent-card-header {
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 12px;
  display: flex;
}

.agent-card-avatar {
  background: var(--agents-btn-bg);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  font-size: 22px;
  display: flex;
  overflow: hidden;
}

.agent-card-info {
  flex-direction: column;
  flex: 1;
  gap: 6px;
  min-width: 0;
  display: flex;
}

.agent-card-name {
  color: var(--agents-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
}

.agent-card-mode {
  background: var(--agents-btn-bg);
  color: var(--agents-text-secondary);
  text-transform: uppercase;
  letter-spacing: .05em;
  border-radius: 4px;
  align-items: center;
  width: fit-content;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 600;
  display: inline-flex;
}

.agent-card-description {
  color: var(--agents-text-muted);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 12px;
  font-size: 13px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.agent-card-footer {
  border-top: 1px solid var(--agents-card-border);
  justify-content: space-between;
  align-items: center;
  padding-top: 12px;
  display: flex;
}

.agent-card-status {
  align-items: center;
  gap: 6px;
  font-size: 12px;
  display: flex;
}

.agent-card-status-dot {
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.agent-card-status-dot.published {
  background: #22c55e;
}

.agent-card-status-dot.draft {
  background: #f59e0b;
}

.agent-card-status-text {
  color: var(--agents-text-muted);
}

.agent-card-actions {
  opacity: 0;
  z-index: 2;
  gap: 4px;
  transition: opacity .2s;
  display: flex;
  position: absolute;
  top: 12px;
  right: 12px;
}

.agent-card:hover .agent-card-actions {
  opacity: 1;
}

.agent-card-action-btn {
  background: var(--agents-dropdown-bg);
  border: 1px solid var(--agents-card-border);
  width: 28px;
  height: 28px;
  color: var(--agents-text-secondary);
  cursor: pointer;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  transition: all .15s;
  display: flex;
}

.agent-card-action-btn:hover {
  background: var(--agents-btn-bg-hover);
  color: var(--agents-text-primary);
}

.agent-card-action-btn.danger:hover {
  color: #ef4444;
  background: #ef444426;
  border-color: #ef44444d;
}

.agent-card-action-btn svg {
  width: 14px;
  height: 14px;
}

.agent-row {
  background: var(--agents-card-bg);
  border: 1px solid var(--agents-card-border);
  cursor: pointer;
  border-radius: 10px;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  transition: all .2s;
  display: flex;
}

.agent-row:hover {
  background: var(--agents-card-bg-hover);
  border-color: var(--agents-card-border-hover);
}

.agent-row-avatar {
  background: var(--agents-btn-bg);
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 20px;
  display: flex;
  overflow: hidden;
}

.agent-row-info {
  flex: 1;
  min-width: 0;
}

.agent-row-name {
  color: var(--agents-text-primary);
  margin-bottom: 2px;
  font-size: 15px;
  font-weight: 500;
}

.agent-row-description {
  color: var(--agents-text-muted);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 13px;
  overflow: hidden;
}

.agent-row-mode {
  background: var(--agents-btn-bg);
  color: var(--agents-text-secondary);
  text-transform: uppercase;
  letter-spacing: .03em;
  border-radius: 6px;
  align-items: center;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.agent-row-status {
  align-items: center;
  gap: 6px;
  min-width: 80px;
  font-size: 12px;
  display: flex;
}

.agent-row-actions {
  opacity: 0;
  gap: 4px;
  margin-left: auto;
  transition: opacity .2s;
  display: flex;
}

.agent-row:hover .agent-row-actions {
  opacity: 1;
}

.agents-empty-state {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 80px 40px;
  display: flex;
}

.agents-empty-icon {
  width: 80px;
  height: 80px;
  color: var(--agents-text-muted);
  margin-bottom: 24px;
}

.agents-empty-title {
  color: var(--agents-text-primary);
  margin-bottom: 8px;
  font-size: 20px;
  font-weight: 600;
}

.agents-empty-description {
  color: var(--agents-text-muted);
  max-width: 360px;
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 1.5;
}

.agents-empty-btn {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  transition: all .15s;
  display: flex;
}

.agents-empty-btn:hover {
  background: #f0f0f0;
  transform: translateY(-1px);
}

.agents-loading {
  justify-content: center;
  align-items: center;
  padding: 80px 40px;
  display: flex;
}

.agents-loading-spinner {
  border: 3px solid var(--agents-card-border);
  border-top-color: var(--agents-text-primary);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  animation: .8s linear infinite agents-spin;
}

@keyframes agents-spin {
  to {
    transform: rotate(360deg);
  }
}

.agent-builder-overlay {
  z-index: 999;
  opacity: 0;
  pointer-events: none;
  background: none;
  width: 100%;
  height: 100%;
  transition: opacity .3s;
  position: fixed;
  top: 0;
  left: 0;
}

.agent-builder-overlay.open {
  opacity: 1;
  pointer-events: none;
}

.agent-preview-wrapper {
  z-index: 1000;
  background: #000;
  justify-content: center;
  align-items: center;
  display: flex;
  position: absolute;
  inset: 0 440px 0 0;
}

.agent-builder-panel {
  background: var(--ab-bg);
  border-left: 1px solid var(--ab-border);
  z-index: 1001;
  width: 440px;
  min-width: 440px;
  max-width: 580px;
  height: 100vh;
  box-shadow: -8px 0 32px var(--ab-shadow);
  flex-direction: column;
  transition: right .3s;
  display: flex;
  position: fixed;
  top: 0;
  right: -480px;
}

.agent-builder-panel.open {
  right: 0;
}

.ab-header {
  border-bottom: 1px solid var(--ab-border);
  background: var(--ab-bg);
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  display: flex;
}

.ab-title {
  color: var(--ab-text-primary);
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 600;
  display: flex;
}

.ab-title-icon {
  color: #fff;
  background: linear-gradient(135deg, #8b5cf6, #6d28d9);
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  font-size: 16px;
  display: flex;
}

.ab-close {
  background: var(--ab-bg-tertiary);
  border: 1px solid var(--ab-border);
  width: 32px;
  height: 32px;
  color: var(--ab-text-muted);
  cursor: pointer;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  transition: all .2s;
  display: flex;
}

.ab-close:hover {
  background: var(--ab-bg-hover);
  color: var(--ab-text-primary);
  border-color: var(--ab-border-hover);
}

.ab-tabs {
  border-bottom: 1px solid var(--ab-border);
  background: var(--ab-bg);
  scrollbar-width: none;
  flex-shrink: 0;
  gap: 0;
  padding: 0 16px;
  display: flex;
  overflow-x: auto;
}

.ab-tabs::-webkit-scrollbar {
  display: none;
}

.ab-tab-btn {
  color: var(--ab-text-muted);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  align-items: center;
  gap: 6px;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.ab-tab-btn:hover {
  color: var(--ab-text-secondary);
}

.ab-tab-btn.active {
  color: var(--ab-accent);
  border-bottom-color: var(--ab-accent);
}

.ab-tab-btn i {
  opacity: .7;
  font-size: 15px;
}

.ab-tab-btn.active i {
  opacity: 1;
}

.ab-content {
  background: var(--ab-bg);
  flex: 1;
  padding: 20px;
  overflow-y: auto;
}

.ab-content::-webkit-scrollbar {
  width: 4px;
}

.ab-content::-webkit-scrollbar-track {
  background: none;
}

.ab-content::-webkit-scrollbar-thumb {
  background: var(--ab-border);
  border-radius: 2px;
}

.ab-tab-pane {
  animation: .2s abFadeIn;
}

@keyframes abFadeIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.ab-form-group {
  margin-bottom: 20px;
}

.ab-label {
  color: var(--ab-text-secondary);
  text-transform: uppercase;
  letter-spacing: .03em;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  font-size: 12px;
  font-weight: 600;
  display: flex;
}

.ab-label i {
  color: #818cf8;
  font-size: 14px;
}

.ab-input, .ab-textarea, .ab-select {
  background: var(--ab-input-bg);
  border: 1px solid var(--ab-input-border);
  width: 100%;
  color: var(--ab-text-primary);
  box-sizing: border-box;
  border-radius: 10px;
  outline: none;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.ab-select option {
  color: #000;
  background: #fff;
}

.ab-input:focus, .ab-textarea:focus, .ab-select:focus {
  border-color: var(--ab-accent);
  box-shadow: 0 0 0 3px var(--ab-accent-bg);
}

.ab-input::placeholder, .ab-textarea::placeholder {
  color: var(--ab-text-hint);
}

.ab-textarea {
  resize: vertical;
  min-height: 80px;
  line-height: 1.5;
}

.ab-select {
  appearance: none;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-position: right 14px center;
  background-repeat: no-repeat;
  padding-right: 36px;
}

.ab-divider {
  background: var(--ab-border);
  height: 1px;
  margin: 24px 0;
}

.ab-section-title {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--ab-text-muted);
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 600;
}

.ab-avatar-tabs {
  background: var(--ab-bg-tertiary);
  border: 1px solid var(--ab-border);
  border-radius: 10px;
  gap: 4px;
  margin-bottom: 12px;
  padding: 3px;
  display: flex;
}

.ab-avatar-tab {
  color: var(--ab-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  flex: 1;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
}

.ab-avatar-tab:hover {
  color: var(--ab-text-secondary);
}

.ab-avatar-tab.active {
  color: #000;
  background: #fff;
}

.ab-avatar-grid {
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  display: grid;
}

.ab-avatar-item {
  aspect-ratio: 1;
  cursor: pointer;
  border: 2px solid #0000;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  width: 100%;
  transition: all .2s;
  display: flex;
  position: relative;
}

.ab-avatar-item:hover {
  transform: scale(1.05);
}

.ab-avatar-item.selected {
  border-color: var(--ab-accent);
  box-shadow: 0 0 12px var(--ab-accent-bg);
}

.ab-avatar-item i {
  color: #fff;
  font-size: 20px;
}

.ab-check {
  background: var(--ab-accent);
  color: #fff;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  font-size: 10px;
  font-weight: 700;
  display: none;
  position: absolute;
  bottom: -2px;
  right: -2px;
}

.ab-avatar-item.selected .ab-check {
  display: flex;
}

.ab-upload-zone {
  border: 2px dashed var(--ab-border);
  text-align: center;
  cursor: pointer;
  background: var(--ab-bg-secondary);
  border-radius: 12px;
  padding: 24px 20px;
  transition: all .2s;
}

.ab-upload-zone:hover {
  border-color: var(--ab-accent);
  background: var(--ab-accent-bg);
}

.ab-upload-zone i {
  color: var(--ab-text-muted);
  margin-bottom: 8px;
  font-size: 28px;
  display: block;
}

.ab-upload-text {
  color: var(--ab-text-secondary);
  font-size: 13px;
}

.ab-upload-hint {
  color: var(--ab-text-hint);
  margin-top: 4px;
  font-size: 11px;
}

.ab-layout-cards {
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  display: grid;
}

.ab-layout-card {
  border: 1px solid var(--ab-border);
  background: var(--ab-bg-secondary);
  cursor: pointer;
  text-align: center;
  border-radius: 12px;
  padding: 16px 10px;
  transition: all .2s;
}

.ab-layout-card:hover {
  border-color: var(--ab-border-hover);
  background: var(--ab-bg-tertiary);
}

.ab-layout-card.selected {
  background: #fff;
  border-color: #fff;
}

.ab-layout-card.selected .ab-layout-icon, .ab-layout-card.selected .ab-layout-label {
  color: #000;
}

.ab-layout-icon {
  color: var(--ab-text-muted);
  margin-bottom: 8px;
  font-size: 26px;
  display: block;
}

.ab-layout-label {
  color: var(--ab-text-muted);
  font-size: 11px;
  font-weight: 500;
}

.ab-temp-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  display: flex;
}

.ab-temp-value {
  color: var(--ab-accent);
  background: var(--ab-accent-bg);
  border-radius: 6px;
  padding: 2px 10px;
  font-size: 13px;
  font-weight: 600;
}

.ab-temp-slider {
  -webkit-appearance: none;
  background: linear-gradient(to right, #3b82f680, #8b5cf680, #ef444480);
  border-radius: 3px;
  outline: none;
  width: 100%;
  height: 6px;
}

.ab-temp-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: var(--ab-bg);
  cursor: pointer;
  border: 3px solid var(--ab-accent);
  width: 18px;
  height: 18px;
  box-shadow: 0 2px 8px var(--ab-shadow);
  border-radius: 50%;
}

.ab-temp-slider::-moz-range-thumb {
  background: var(--ab-bg);
  cursor: pointer;
  border: 3px solid var(--ab-accent);
  width: 18px;
  height: 18px;
  box-shadow: 0 2px 8px var(--ab-shadow);
  border-radius: 50%;
}

.ab-temp-labels {
  color: var(--ab-text-hint);
  justify-content: space-between;
  margin-top: 6px;
  font-size: 10px;
  display: flex;
}

.ab-starters-grid {
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  display: grid;
}

.ab-starter-input {
  background: var(--ab-input-bg);
  border: 1px solid var(--ab-input-border);
  color: var(--ab-text-primary);
  box-sizing: border-box;
  border-radius: 8px;
  outline: none;
  padding: 10px 12px;
  font-family: inherit;
  font-size: 12px;
  transition: all .2s;
}

.ab-starter-input:focus {
  border-color: var(--ab-accent);
}

.ab-starter-input::placeholder {
  color: var(--ab-text-hint);
}

.ab-tool-item {
  background: var(--ab-bg-secondary);
  border: 1px solid var(--ab-border);
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
  padding: 12px 14px;
  transition: all .2s;
  display: flex;
}

.ab-tool-item:hover {
  background: var(--ab-bg-tertiary);
  border-color: var(--ab-border-hover);
}

.ab-tool-left {
  align-items: center;
  gap: 12px;
  display: flex;
}

.ab-tool-icon {
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  font-size: 18px;
  display: flex;
}

.ab-tool-name {
  color: var(--ab-text-primary);
  font-size: 14px;
  font-weight: 500;
}

.ab-tool-desc {
  color: var(--ab-text-muted);
  margin-top: 2px;
  font-size: 11px;
}

.ab-toggle {
  cursor: pointer;
  width: 44px;
  height: 24px;
  position: relative;
}

.ab-toggle input {
  display: none;
}

.ab-toggle-track {
  background: var(--ab-border);
  border-radius: 12px;
  transition: all .3s;
  position: absolute;
  inset: 0;
}

.ab-toggle-track:before {
  content: "";
  background: var(--ab-text-muted);
  border-radius: 50%;
  width: 18px;
  height: 18px;
  transition: all .3s;
  position: absolute;
  top: 3px;
  left: 3px;
}

.ab-toggle input:checked + .ab-toggle-track {
  background: var(--ab-accent);
}

.ab-toggle input:checked + .ab-toggle-track:before {
  background: #fff;
  transform: translateX(20px);
}

.ab-coming-soon {
  background: var(--ab-bg-tertiary);
  color: var(--ab-text-hint);
  border-radius: 10px;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 500;
}

.ab-personality-card {
  border: 1px solid var(--ab-border);
  cursor: pointer;
  text-align: left;
  background: none;
  border-radius: 10px;
  padding: 10px 12px;
  transition: all .15s;
}

.ab-personality-card:hover {
  border-color: var(--ab-border-hover);
  background: var(--ab-bg-tertiary);
}

.ab-personality-card.selected {
  border-color: var(--ab-accent);
  background: var(--ab-accent-bg);
}

.ab-rule-item {
  border-bottom: 1px solid var(--ab-border);
  cursor: pointer;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  display: flex;
}

.ab-rule-item:last-child {
  border-bottom: none;
}

.ab-rule-checkbox {
  border: 1px solid var(--ab-input-border);
  background: var(--ab-input-bg);
  cursor: pointer;
  border-radius: 5px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 18px;
  height: 18px;
  transition: all .2s;
  display: flex;
}

.ab-rule-checkbox.checked {
  background: var(--ab-accent);
  border-color: var(--ab-accent);
}

.ab-rule-checkbox i {
  color: #fff;
  font-size: 11px;
  display: none;
}

.ab-rule-checkbox.checked i {
  display: block;
}

.ab-rule-label {
  color: var(--ab-text-secondary);
  cursor: pointer;
  font-size: 13px;
}

.ab-prompt-preview {
  background: var(--ab-bg-secondary);
  border: 1px solid var(--ab-border);
  color: var(--ab-text-muted);
  white-space: pre-wrap;
  word-wrap: break-word;
  border-radius: 10px;
  max-height: 160px;
  padding: 14px;
  font-family: SF Mono, Fira Code, JetBrains Mono, monospace;
  font-size: 12px;
  line-height: 1.6;
  overflow-y: auto;
}

.ab-theme-grid-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  display: grid;
}

.ab-theme-card-new {
  border: 1px solid var(--ab-border);
  cursor: pointer;
  background: var(--ab-bg-secondary);
  border-radius: 12px;
  transition: all .2s;
  position: relative;
  overflow: hidden;
}

.ab-theme-card-new:hover {
  border-color: var(--ab-border-hover);
}

.ab-theme-card-new.selected {
  border-color: var(--ab-accent);
  box-shadow: 0 0 16px var(--ab-accent-bg);
}

.ab-theme-preview-mini {
  width: 100%;
  height: 60px;
  position: relative;
  overflow: hidden;
}

.ab-theme-mini-header {
  align-items: center;
  gap: 3px;
  height: 14px;
  padding: 0 8px;
  display: flex;
}

.ab-theme-mini-dot {
  border-radius: 50%;
  width: 4px;
  height: 4px;
}

.ab-theme-mini-msgs {
  padding: 4px 8px;
}

.ab-theme-mini-msg {
  border-radius: 3px;
  height: 6px;
  margin-bottom: 4px;
}

.ab-theme-mini-msg-user {
  width: 55%;
  margin-left: auto;
}

.ab-theme-mini-msg-agent {
  width: 70%;
}

.ab-footer {
  border-top: 1px solid var(--ab-border);
  background: var(--ab-bg);
  flex-shrink: 0;
  padding: 16px 20px;
}

.ab-create-btn {
  color: #fff;
  cursor: pointer;
  background: linear-gradient(135deg, #7c3aed, #8b5cf6);
  border: none;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 14px 20px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  transition: all .2s;
  display: flex;
}

.ab-create-btn:hover {
  background: linear-gradient(135deg, #6d28d9, #7c3aed);
  transform: translateY(-1px);
}

.ab-create-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
  transform: none;
}

.deploy-placeholder {
  text-align: center;
  color: var(--ab-text-muted, #fff6);
  padding: 40px 20px;
}

.deploy-placeholder i {
  margin-bottom: 12px;
  font-size: 40px;
  display: block;
}

.deploy-status-row {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.deploy-badge {
  border-radius: 20px;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
}

.deploy-badge.draft {
  color: #ef4444;
  background: #ef44441f;
}

.deploy-badge.published {
  color: #22c55e;
  background: #22c55e1f;
}

.deploy-badge-dot {
  background: currentColor;
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.deploy-toggle-btn {
  border: 1px solid var(--ab-border, #ffffff14);
  color: var(--ab-text-primary, #f0f0f0);
  cursor: pointer;
  background: #ffffff0a;
  border-radius: 8px;
  padding: 8px 18px;
  font-family: inherit;
  font-size: 13px;
}

.deploy-toggle-btn:hover {
  background: #8b5cf61a;
  border-color: #8b5cf6;
}

.deploy-hint {
  color: var(--ab-text-muted, #ffffff59);
  margin-top: 6px;
  font-size: 12px;
}

.deploy-code-row {
  align-items: center;
  gap: 6px;
  display: flex;
}

.deploy-input {
  border: 1px solid var(--ab-border, #ffffff14);
  color: var(--ab-text-primary, #f0f0f0);
  background: #ffffff0a;
  border-radius: 8px;
  outline: none;
  flex: 1;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 13px;
}

.deploy-input.mono {
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
}

.deploy-copy-btn {
  border: 1px solid var(--ab-border, #ffffff14);
  width: 36px;
  height: 36px;
  color: var(--ab-text-secondary, #fff9);
  cursor: pointer;
  background: #ffffff0a;
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  text-decoration: none;
  display: flex;
}

.deploy-copy-btn:hover {
  color: #8b5cf6;
  background: #8b5cf61a;
}

.deploy-share-row {
  gap: 8px;
  display: flex;
}

.deploy-share-btn {
  border: 1px solid var(--ab-border, #ffffff14);
  width: 40px;
  height: 40px;
  color: var(--ab-text-secondary, #fff9);
  cursor: pointer;
  background: #ffffff0a;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  text-decoration: none;
  display: flex;
}

.deploy-share-btn:hover {
  color: #8b5cf6;
  background: #8b5cf61a;
}

.deploy-metrics {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  display: grid;
}

.deploy-metric {
  border: 1px solid var(--ab-border, #ffffff14);
  text-align: center;
  background: #ffffff08;
  border-radius: 10px;
  padding: 16px;
}

.deploy-metric-value {
  color: var(--ab-text-primary, #f0f0f0);
  font-size: 22px;
  font-weight: 700;
  display: block;
}

.deploy-metric-label {
  color: var(--ab-text-muted, #ffffff59);
  margin-top: 4px;
  font-size: 11px;
  display: block;
}

.deploy-code-block {
  border: 1px solid var(--ab-border, #ffffff14);
  background: #0000004d;
  border-radius: 10px;
  padding: 14px;
  position: relative;
}

.deploy-code-block pre {
  color: var(--ab-text-secondary, #fff9);
  white-space: pre-wrap;
  word-break: break-all;
  margin: 0;
  font-family: JetBrains Mono, monospace;
  font-size: 12px;
  line-height: 1.6;
}

.deploy-code-copy {
  border: 1px solid var(--ab-border, #ffffff14);
  color: var(--ab-text-muted, #fff6);
  cursor: pointer;
  background: #ffffff0f;
  border-radius: 6px;
  padding: 4px 10px;
  font-family: inherit;
  font-size: 11px;
  position: absolute;
  top: 8px;
  right: 8px;
}

.deploy-code-copy:hover {
  color: #c4b5fd;
  background: #8b5cf626;
}

.agent-preview-container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 16px;
  display: flex;
}

.ap-toolbar {
  background: var(--bg-hover);
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  gap: 4px;
  padding: 3px;
  display: flex;
}

.ap-device-btn {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 5px;
  padding: 6px 12px;
  font-family: inherit;
  font-size: 12px;
  transition: all .2s;
  display: flex;
}

.ap-device-btn:hover {
  color: var(--text-muted);
}

.ap-device-btn.active {
  background: var(--bg-card);
  color: var(--text-main);
}

.ap-device-btn i {
  font-size: 14px;
}

.ap-state-toggle {
  background: #ffffff0a;
  border: 1px solid #ffffff14;
  border-radius: 8px;
  gap: 2px;
  margin-bottom: 4px;
  padding: 2px;
  display: flex;
}

.ap-state-btn {
  color: #fff6;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 5px 16px;
  font-family: inherit;
  font-size: 12px;
  transition: all .2s;
}

.ap-state-btn:hover {
  color: #fff9;
}

.ap-state-btn.active {
  color: #fff;
  background: #ffffff1a;
}

.ap-phone-frame {
  border: 2px solid #ffffff1f;
  border-radius: 32px;
  flex-direction: column;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 0 1px #ffffff0a, 0 20px 60px #00000080, 0 0 40px #8b5cf60f;
}

.ap-phone-frame.ap-mobile {
  width: 320px;
  min-height: 600px;
}

.ap-phone-frame.ap-desktop {
  border-radius: 16px;
  width: 500px;
  min-height: 440px;
}

.ap-phone-frame.ap-widget {
  border-radius: 22px;
  width: 340px;
  min-height: 500px;
}

.ap-dynamic-island {
  z-index: 10;
  background: #000;
  border-radius: 14px;
  width: 90px;
  height: 24px;
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 0 1px #ffffff0f;
}

.ap-preview-header {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  display: flex;
}

.ap-preview-avatar {
  border-radius: 10px;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  overflow: hidden;
}

.ap-preview-info {
  flex: 1;
}

.ap-preview-name {
  font-size: 14px;
  font-weight: 600;
}

.ap-online-dot {
  background: #22c55e;
  border-radius: 50%;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  animation: 2s ease-in-out infinite apPulse;
}

@keyframes apPulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

.ap-header-action {
  opacity: .5;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  font-size: 16px;
  display: flex;
}

.ap-preview-body {
  flex-direction: column;
  flex: 1;
  padding: 16px;
  display: flex;
  overflow-y: auto;
}

.ap-preview-welcome {
  text-align: center;
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 20px 10px;
  display: flex;
}

.ap-welcome-avatar-wrap {
  margin-bottom: 4px;
  position: relative;
}

.ap-welcome-avatar-glow {
  opacity: .2;
  filter: blur(16px);
  border-radius: 20px;
  position: absolute;
  inset: -8px;
}

.ap-welcome-avatar {
  border-radius: 16px;
  width: 60px;
  height: 60px;
  position: relative;
  overflow: hidden;
}

.ap-welcome-name {
  font-size: 17px;
  font-weight: 600;
}

.ap-welcome-message {
  opacity: .8;
  max-width: 240px;
  font-size: 13px;
  line-height: 1.5;
}

.ap-welcome-starters {
  flex-direction: column;
  gap: 6px;
  width: 100%;
  margin-top: 14px;
  display: flex;
}

.ap-starter-pill {
  text-align: left;
  border: 1px solid;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  font-size: 12px;
  transition: all .15s;
  display: flex;
}

.ap-starter-pill:hover {
  opacity: .8;
}

.ap-preview-messages {
  flex-direction: column;
  flex: 1;
  gap: 12px;
  padding: 8px 0;
  display: flex;
}

.ap-msg-row {
  gap: 8px;
  display: flex;
}

.ap-msg-row-user {
  justify-content: flex-end;
}

.ap-msg-row-agent {
  align-items: flex-end;
}

.ap-msg-agent-avatar {
  border-radius: 8px;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  overflow: hidden;
}

.ap-message {
  max-width: 80%;
  padding: 10px 14px;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
}

.ap-message-user {
  margin-left: auto;
}

.ap-message-agent {
  margin-right: auto;
}

.ap-msg-time {
  text-align: right;
  opacity: .6;
  margin-top: 4px;
  font-size: 10px;
  display: block;
}

.ap-typing-indicator {
  align-items: center;
  gap: 4px;
  padding: 12px 16px;
  display: flex;
}

.ap-typing-dot {
  opacity: .5;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  animation: 1.4s ease-in-out infinite apTyping;
}

.ap-typing-dot:nth-child(2) {
  animation-delay: .2s;
}

.ap-typing-dot:nth-child(3) {
  animation-delay: .4s;
}

@keyframes apTyping {
  0%, 60%, 100% {
    opacity: .4;
    transform: translateY(0);
  }

  30% {
    opacity: 1;
    transform: translateY(-4px);
  }
}

.ap-preview-input {
  border-top: 1px solid;
  padding: 12px 16px;
}

.ap-input-mock {
  border: 1px solid;
  border-radius: 22px;
  align-items: center;
  gap: 4px;
  padding: 6px;
  display: flex;
}

.ap-input-attach {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  font-size: 16px;
  display: flex;
}

.ap-input-placeholder {
  flex: 1;
  padding-left: 4px;
  font-size: 13px;
}

.ap-input-send {
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  font-size: 14px;
  display: flex;
}

.ap-label {
  color: #ffffff4d;
  text-transform: uppercase;
  letter-spacing: .1em;
  margin-top: 4px;
  font-size: 11px;
}

.torki-modal-overlay {
  z-index: 2000;
  opacity: 0;
  background: #0009;
  justify-content: center;
  align-items: center;
  transition: opacity .2s;
  display: flex;
  position: fixed;
  inset: 0;
}

.torki-modal-overlay.open {
  opacity: 1;
}

.torki-modal {
  background: var(--agents-dropdown-bg, #1a1a1a);
  border: 1px solid var(--agents-dropdown-border, #ffffff1a);
  border-radius: 16px;
  width: 400px;
  max-width: 90vw;
  padding: 24px;
  box-shadow: 0 20px 60px #00000080;
}

.torki-modal-header {
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  display: flex;
}

.torki-modal-icon {
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 20px;
  display: flex;
}

.torki-modal-icon.danger {
  color: #ef4444;
  background: #ef444426;
}

.torki-modal-title {
  color: var(--agents-text-primary, #fff);
  font-size: 16px;
  font-weight: 600;
}

.torki-modal-body {
  margin-bottom: 20px;
}

.torki-modal-message {
  color: var(--agents-text-muted, #71717a);
  font-size: 14px;
  line-height: 1.5;
}

.torki-modal-footer {
  justify-content: flex-end;
  gap: 10px;
  display: flex;
}

.torki-modal-btn {
  cursor: pointer;
  border-radius: 8px;
  padding: 8px 18px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  transition: all .15s;
}

.torki-modal-btn-secondary {
  border: 1px solid var(--agents-card-border);
  color: var(--agents-text-secondary);
  background: none;
}

.torki-modal-btn-secondary:hover {
  background: var(--agents-card-bg-hover);
}

.torki-modal-btn-danger {
  color: #fff;
  background: #ef4444;
  border: none;
}

.torki-modal-btn-danger:hover {
  background: #dc2626;
}

@media (max-width: 768px) {
  .agents-page-header {
    padding: 16px 20px;
  }

  .agents-page-content {
    padding: 16px 20px 60px;
  }

  .agent-card .agent-card-actions {
    opacity: 1;
  }

  .agents-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .agents-search-box {
    max-width: none;
  }

  .agents-view-toggle {
    align-self: flex-end;
    margin-left: 0;
  }

  .agents-grid {
    grid-template-columns: 1fr;
  }

  .agent-preview-wrapper {
    display: none;
  }

  .agent-builder-panel {
    width: 100%;
    min-width: 100%;
  }
}

:root {
  --projects-bg: #000;
  --projects-card-bg: #ffffff05;
  --projects-card-bg-hover: #ffffff0d;
  --projects-card-border: #ffffff0f;
  --projects-card-border-hover: #ffffff1f;
  --projects-text-primary: #fff;
  --projects-text-secondary: #a1a1aa;
  --projects-text-muted: #71717a;
  --projects-input-bg: #ffffff0a;
  --projects-input-border: #ffffff14;
  --projects-input-border-focus: #fff3;
  --projects-dropdown-bg: #1a1a1a;
  --projects-dropdown-border: #ffffff1a;
  --projects-btn-bg: #ffffff14;
  --projects-btn-bg-hover: #ffffff1f;
  --projects-shadow: #0006;
  --projects-accent: #8b5cf6;
}

:root:not(.dark):not([data-theme="dark"]), :root[data-theme="light"] {
  --projects-bg: var(--bg-body, #fff);
  --projects-card-bg: var(--bg-card, #fff);
  --projects-card-bg-hover: var(--bg-hover, #f3f4f6);
  --projects-card-border: var(--border-subtle, #e5e7eb);
  --projects-card-border-hover: var(--border-hover, #d1d5db);
  --projects-text-primary: var(--text-main, #111827);
  --projects-text-secondary: var(--text-muted, #6b7280);
  --projects-text-muted: var(--text-subtle, #4b5563);
  --projects-input-bg: var(--bg-input, #fff);
  --projects-input-border: var(--border-subtle, #e5e7eb);
  --projects-input-border-focus: var(--border-hover, #d1d5db);
  --projects-dropdown-bg: var(--bg-card, #fff);
  --projects-dropdown-border: var(--border-subtle, #e5e7eb);
  --projects-btn-bg: var(--bg-hover, #f3f4f6);
  --projects-btn-bg-hover: #e5e7eb;
  --projects-shadow: #00000014;
}

.projects-page {
  background: var(--projects-bg);
  width: 100%;
  max-width: 900px;
  height: 100%;
  margin: 0 auto;
  padding: 32px 32px 80px;
  overflow: hidden auto;
}

.projects-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 24px;
  display: flex;
}

.projects-header-left {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.projects-title {
  color: var(--projects-text-primary);
  letter-spacing: -.02em;
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.2;
}

.projects-count {
  color: var(--projects-text-muted);
  font-size: 14px;
}

.btn-new-project {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 8px;
  flex-shrink: 0;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  transition: all .15s;
  display: flex;
}

.btn-new-project:hover {
  background: #f0f0f0;
  transform: translateY(-1px);
}

.btn-new-project i {
  font-size: 16px;
}

.projects-toolbar {
  flex-direction: column;
  gap: 14px;
  margin-bottom: 24px;
  display: flex;
}

.projects-toolbar-row {
  align-items: center;
  gap: 12px;
  display: flex;
}

.projects-search-wrapper {
  flex: 1;
  position: relative;
}

.projects-search-icon {
  color: var(--projects-text-muted);
  pointer-events: none;
  font-size: 16px;
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
}

.projects-search-input {
  background: var(--projects-input-bg);
  border: 1px solid var(--projects-input-border);
  width: 100%;
  color: var(--projects-text-primary);
  box-sizing: border-box;
  border-radius: 8px;
  outline: none;
  padding: 10px 40px 10px 42px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.projects-search-input::placeholder {
  color: var(--projects-text-muted);
}

.projects-search-input:focus {
  border-color: var(--projects-input-border-focus);
}

.projects-search-clear {
  color: var(--projects-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  padding: 4px;
  display: none;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

.projects-search-clear:hover {
  color: var(--projects-text-primary);
}

.projects-sort-wrapper {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
  position: relative;
}

.projects-sort-label {
  color: var(--projects-text-muted);
  white-space: nowrap;
  font-size: 13px;
}

.projects-sort-select {
  background: var(--projects-input-bg);
  border: 1px solid var(--projects-input-border);
  color: var(--projects-text-primary);
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 10px 14px;
  font-size: 13px;
  transition: all .15s;
  display: flex;
}

.projects-sort-select:hover {
  border-color: var(--projects-card-border-hover);
}

.projects-sort-select i {
  font-size: 12px;
  transition: transform .2s;
}

.projects-sort-select.open i {
  transform: rotate(180deg);
}

.projects-sort-dropdown {
  background: var(--projects-dropdown-bg);
  border: 1px solid var(--projects-dropdown-border);
  z-index: 100;
  width: 180px;
  box-shadow: 0 8px 32px var(--projects-shadow);
  border-radius: 10px;
  padding: 6px;
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
}

.projects-sort-dropdown.show {
  display: block;
}

.sort-option {
  color: var(--projects-text-secondary);
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  font-size: 13px;
  transition: all .12s;
  display: flex;
}

.sort-option:hover {
  background: var(--projects-btn-bg-hover);
  color: var(--projects-text-primary);
}

.sort-option.active {
  color: var(--projects-accent);
  background: #8b5cf61a;
}

.sort-option i {
  font-size: 16px;
}

.projects-category-filter {
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  display: flex;
}

.category-chip {
  border: 1px solid var(--projects-card-border);
  color: var(--projects-text-secondary);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border-radius: 20px;
  align-items: center;
  gap: 5px;
  padding: 6px 14px;
  font-family: inherit;
  font-size: 13px;
  transition: all .2s;
  display: inline-flex;
}

.category-chip:hover {
  border-color: var(--projects-card-border-hover);
  color: var(--projects-text-primary);
}

.category-chip.active {
  color: #000;
  background: #fff;
  border-color: #fff;
}

.category-chip i {
  font-size: 14px;
}

.projects-grid {
  flex-direction: column;
  gap: 10px;
  display: flex;
}

.project-card {
  background: var(--projects-card-bg);
  border: 1px solid var(--projects-card-border);
  cursor: pointer;
  border-radius: 12px;
  flex-direction: column;
  gap: 8px;
  padding: 18px 20px;
  transition: all .2s;
  display: flex;
  position: relative;
  overflow: visible;
}

.project-card:hover {
  border-color: var(--projects-card-border-hover);
  background: var(--projects-card-bg-hover);
}

.project-card:before {
  content: "";
  background: var(--card-color, #8b5cf6);
  opacity: .7;
  border-radius: 12px 0 0 12px;
  width: 4px;
  transition: opacity .2s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
}

.project-card:hover:before {
  opacity: 1;
}

.project-card-header {
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  display: flex;
}

.project-card-title-row {
  flex: 1;
  align-items: center;
  gap: 12px;
  min-width: 0;
  display: flex;
}

.project-card-icon {
  color: #fff;
  border-radius: 10px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 38px;
  height: 38px;
  font-size: 18px;
  display: flex;
}

.project-card-name {
  color: var(--projects-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
}

.project-card-badge {
  background: var(--projects-btn-bg);
  color: var(--projects-text-muted);
  text-transform: capitalize;
  white-space: nowrap;
  border-radius: 12px;
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 500;
  display: inline-flex;
}

.project-card-badge i {
  font-size: 12px;
}

.project-card-actions {
  z-index: 10;
  flex-shrink: 0;
  position: relative;
}

.project-card-menu-btn {
  background: var(--projects-btn-bg);
  border: 1px solid var(--projects-card-border);
  color: var(--projects-text-secondary);
  cursor: pointer;
  border-radius: 6px;
  align-items: center;
  padding: 6px 10px;
  font-size: 18px;
  transition: all .15s;
  display: flex;
}

.project-card-menu-btn:hover {
  background: var(--projects-btn-bg-hover);
  border-color: var(--projects-card-border-hover);
  color: var(--projects-text-primary);
}

.project-card-dropdown {
  background: var(--projects-dropdown-bg);
  border: 1px solid var(--projects-dropdown-border);
  z-index: 9999;
  border-radius: 10px;
  width: 160px;
  padding: 5px;
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  box-shadow: 0 8px 32px #0000004d;
}

.project-card-dropdown.show {
  display: block;
}

.dropdown-item {
  color: var(--projects-text-secondary);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 6px;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 8px 12px;
  font-family: inherit;
  font-size: 13px;
  transition: all .12s;
  display: flex;
}

.dropdown-item:hover {
  background: var(--projects-btn-bg-hover);
  color: var(--projects-text-primary);
}

.dropdown-item.danger {
  color: #f87171;
}

.dropdown-item.danger:hover {
  color: #f87171;
  background: #f871711a;
}

.dropdown-item i {
  font-size: 16px;
}

.project-card-description {
  color: var(--projects-text-secondary);
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  padding-left: 50px;
  font-size: 13px;
  line-height: 1.5;
  display: -webkit-box;
  overflow: hidden;
}

.project-card-meta {
  align-items: center;
  gap: 14px;
  padding-left: 50px;
  display: flex;
}

.project-meta-item {
  color: var(--projects-text-muted);
  align-items: center;
  gap: 5px;
  font-size: 12px;
  display: flex;
}

.project-meta-item i {
  font-size: 14px;
}

.project-meta-separator {
  background: var(--projects-text-muted);
  opacity: .5;
  border-radius: 50%;
  width: 3px;
  height: 3px;
}

.projects-empty {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 80px 24px;
  display: flex;
}

.projects-empty-icon {
  background: var(--projects-card-bg);
  border: 1px dashed var(--projects-card-border);
  border-radius: 16px;
  justify-content: center;
  align-items: center;
  width: 72px;
  height: 72px;
  margin-bottom: 18px;
  display: flex;
}

.projects-empty-icon i {
  color: var(--projects-text-muted);
  font-size: 28px;
}

.projects-empty-title {
  color: var(--projects-text-primary);
  margin: 0 0 8px;
  font-size: 18px;
  font-weight: 600;
}

.projects-empty-desc {
  color: var(--projects-text-muted);
  max-width: 380px;
  margin: 0 0 24px;
  font-size: 14px;
  line-height: 1.6;
}

.projects-loading {
  justify-content: center;
  align-items: center;
  padding: 80px 40px;
  display: flex;
}

:root {
  --ws-bg: #000;
  --ws-card-bg: #ffffff05;
  --ws-card-bg-hover: #ffffff0d;
  --ws-card-border: #ffffff0f;
  --ws-card-border-hover: #ffffff1f;
  --ws-text-primary: #fff;
  --ws-text-secondary: #a1a1aa;
  --ws-text-muted: #71717a;
  --ws-input-bg: #ffffff0a;
  --ws-input-border: #ffffff14;
  --ws-input-border-focus: #fff3;
  --ws-btn-bg: #ffffff14;
  --ws-btn-bg-hover: #ffffff1f;
  --ws-accent: #8b5cf6;
}

:root:not(.dark):not([data-theme="dark"]), :root[data-theme="light"] {
  --ws-bg: var(--bg-body, #fff);
  --ws-card-bg: var(--bg-card, #fff);
  --ws-card-bg-hover: var(--bg-hover, #f3f4f6);
  --ws-card-border: var(--border-subtle, #e5e7eb);
  --ws-card-border-hover: var(--border-hover, #d1d5db);
  --ws-text-primary: var(--text-main, #111827);
  --ws-text-secondary: var(--text-muted, #6b7280);
  --ws-text-muted: var(--text-subtle, #4b5563);
  --ws-input-bg: var(--bg-input, #fff);
  --ws-input-border: var(--border-subtle, #e5e7eb);
  --ws-input-border-focus: var(--border-hover, #d1d5db);
  --ws-btn-bg: var(--bg-hover, #f3f4f6);
  --ws-btn-bg-hover: #e5e7eb;
}

.workspace {
  z-index: 1;
  width: 100%;
  max-width: 820px;
  height: 100%;
  margin: 0 auto;
  padding: 32px 24px 60px;
  animation: .3s ease-out wsIn;
  position: relative;
  overflow: hidden auto;
}

@keyframes wsIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.workspace-header {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 8px;
  display: flex;
}

.workspace-header-left {
  flex: 1;
  align-items: center;
  gap: 14px;
  min-width: 0;
  display: flex;
}

.workspace-back {
  width: 34px;
  height: 34px;
  color: var(--ws-text-muted);
  cursor: pointer;
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  transition: all .15s;
  display: flex;
}

.workspace-back:hover {
  background: var(--ws-btn-bg-hover);
  color: var(--ws-text-primary);
}

.workspace-back i {
  font-size: 1.15rem;
}

.workspace-icon {
  color: #fff;
  border-radius: 11px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  font-size: 1.25rem;
  display: flex;
}

.workspace-title-group {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.workspace-title {
  color: var(--ws-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin: 0;
  font-size: 1.4rem;
  font-weight: 600;
  overflow: hidden;
}

.workspace-category-badge {
  background: var(--ws-btn-bg);
  color: var(--ws-text-muted);
  text-transform: capitalize;
  white-space: nowrap;
  border-radius: 12px;
  flex-shrink: 0;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  font-size: .73rem;
  font-weight: 500;
  display: inline-flex;
}

.workspace-header-right {
  flex-shrink: 0;
  align-items: center;
  gap: 8px;
  display: flex;
}

.workspace-btn-primary {
  color: #000;
  cursor: pointer;
  white-space: nowrap;
  background: #fff;
  border: none;
  border-radius: 9px;
  align-items: center;
  gap: 7px;
  padding: 9px 18px;
  font-family: inherit;
  font-size: .85rem;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.workspace-btn-primary:hover {
  background: #f0f0f0;
  transform: translateY(-1px);
}

.workspace-btn-secondary {
  border: 1px solid var(--ws-card-border);
  color: var(--ws-text-secondary);
  cursor: pointer;
  white-space: nowrap;
  background: none;
  border-radius: 9px;
  align-items: center;
  gap: 7px;
  padding: 9px 16px;
  font-family: inherit;
  font-size: .85rem;
  transition: all .15s;
  display: inline-flex;
}

.workspace-btn-secondary:hover {
  border-color: var(--ws-card-border-hover);
  color: var(--ws-text-primary);
}

.workspace-description {
  margin-bottom: 8px;
  padding-left: 92px;
}

.workspace-description p {
  color: var(--ws-text-muted);
  margin: 0;
  font-size: .88rem;
  line-height: 1.5;
}

.workspace-tabs {
  border-bottom: 1px solid var(--ws-card-border);
  gap: 2px;
  margin-top: 16px;
  margin-bottom: 24px;
  display: flex;
}

.workspace-tab {
  color: var(--ws-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 2px solid #0000;
  align-items: center;
  gap: 6px;
  padding: 12px 18px;
  font-family: inherit;
  font-size: .88rem;
  font-weight: 500;
  transition: all .15s;
  display: inline-flex;
  position: relative;
  bottom: -1px;
}

.workspace-tab:hover {
  color: var(--ws-text-primary);
}

.workspace-tab.active {
  color: var(--ws-accent);
  border-bottom-color: var(--ws-accent);
}

.workspace-tab i {
  font-size: 1rem;
}

.tab-count {
  background: var(--ws-btn-bg);
  color: var(--ws-text-muted);
  border-radius: 10px;
  padding: 1px 7px;
  font-size: .72rem;
  font-weight: 600;
}

.workspace-tab.active .tab-count {
  color: var(--ws-accent);
  background: #8b5cf61f;
}

.workspace-tab-content {
  animation: .2s ease-out tabIn;
}

@keyframes tabIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.workspace-search-row {
  margin-bottom: 16px;
}

.workspace-search-wrapper {
  position: relative;
}

.workspace-search-wrapper i {
  color: var(--ws-text-muted);
  pointer-events: none;
  font-size: .95rem;
  position: absolute;
  top: 50%;
  left: 13px;
  transform: translateY(-50%);
}

.workspace-search-input {
  background: var(--ws-input-bg);
  border: 1px solid var(--ws-input-border);
  width: 100%;
  color: var(--ws-text-primary);
  box-sizing: border-box;
  border-radius: 9px;
  outline: none;
  padding: 9px 14px 9px 38px;
  font-family: inherit;
  font-size: .88rem;
  transition: all .2s;
}

.workspace-search-input::placeholder {
  color: var(--ws-text-muted);
}

.workspace-search-input:focus {
  border-color: var(--ws-accent);
  box-shadow: 0 0 0 3px #8b5cf60f;
}

.workspace-chat-list {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.chat-item {
  background: var(--ws-card-bg);
  border: 1px solid var(--ws-card-border);
  cursor: pointer;
  border-radius: 11px;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  transition: all .15s;
  display: flex;
}

.chat-item:hover {
  border-color: var(--ws-card-border-hover);
  background: var(--ws-card-bg-hover);
}

.chat-item-icon {
  width: 36px;
  height: 36px;
  color: var(--ws-accent);
  background: #8b5cf614;
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  display: flex;
}

.chat-item-content {
  flex: 1;
  min-width: 0;
}

.chat-item-title {
  color: var(--ws-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 2px;
  font-size: .9rem;
  font-weight: 500;
  overflow: hidden;
}

.chat-item-meta {
  color: var(--ws-text-muted);
  font-size: .76rem;
}

.chat-item-arrow {
  color: var(--ws-text-muted);
  opacity: 0;
  flex-shrink: 0;
  font-size: 1rem;
  transition: opacity .15s;
}

.chat-item:hover .chat-item-arrow {
  opacity: 1;
}

.chat-item-delete {
  color: var(--ws-text-muted);
  cursor: pointer;
  opacity: 0;
  background: none;
  border: none;
  border-radius: 6px;
  flex-shrink: 0;
  padding: 4px 6px;
  transition: all .15s;
  display: flex;
}

.chat-item:hover .chat-item-delete {
  opacity: 1;
}

.chat-item-delete:hover {
  color: #f87171;
  background: #f871711a;
}

.workspace-file-list {
  flex-direction: column;
  gap: 4px;
  display: flex;
}

.file-item {
  background: var(--ws-card-bg);
  border: 1px solid var(--ws-card-border);
  border-radius: 11px;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  transition: all .15s;
  display: flex;
}

.file-item:hover {
  border-color: var(--ws-card-border-hover);
}

.file-item-icon {
  width: 36px;
  height: 36px;
  color: var(--ws-accent);
  background: #8b5cf614;
  border-radius: 9px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  display: flex;
}

.file-item-info {
  flex: 1;
  min-width: 0;
}

.file-item-name {
  color: var(--ws-text-primary);
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: .88rem;
  font-weight: 500;
  overflow: hidden;
}

.file-item-meta {
  color: var(--ws-text-muted);
  align-items: center;
  gap: 8px;
  font-size: .75rem;
  display: flex;
}

.file-status {
  border-radius: 10px;
  flex-shrink: 0;
  padding: 2px 8px;
  font-size: .7rem;
}

.file-status.extracted {
  color: #10b981;
  background: #10b9811a;
}

.file-status.pending {
  color: #f59e0b;
  background: #f59e0b1a;
}

.file-status.failed {
  color: #f87171;
  background: #f871711a;
}

.file-status.processing {
  color: #818cf8;
  background: #6366f11a;
}

.file-item-action {
  color: var(--ws-text-muted);
  cursor: pointer;
  opacity: 0;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  padding: 4px 6px;
  font-size: 14px;
  transition: all .15s;
  display: flex;
}

.file-item:hover .file-item-action {
  opacity: 1;
}

.file-item-action:hover {
  color: var(--ws-accent);
  background: #8b5cf61a;
}

.file-item-drag {
  opacity: 0;
  transition: opacity .15s;
}

.file-item:hover .file-item-drag {
  opacity: .5;
}

.file-item-remove {
  color: var(--ws-text-muted);
  cursor: pointer;
  opacity: 0;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 4px 6px;
  transition: all .15s;
  display: flex;
}

.file-item:hover .file-item-remove {
  opacity: 1;
}

.file-item-remove:hover {
  color: #f87171;
  background: #f871711a;
}

.workspace-dropzone {
  border: 2px dashed var(--ws-card-border);
  text-align: center;
  cursor: pointer;
  border-radius: 12px;
  margin-bottom: 16px;
  padding: 24px;
  transition: all .2s;
}

.workspace-dropzone:hover, .workspace-dropzone.dragover {
  border-color: var(--ws-accent);
  background: #8b5cf608;
}

.workspace-dropzone i {
  color: var(--ws-text-muted);
  margin-bottom: 8px;
  font-size: 1.8rem;
  display: block;
}

.ws-section-title {
  color: var(--ws-text-primary);
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 600;
}

.ws-section-desc {
  color: var(--ws-text-muted);
  margin-bottom: 16px;
  font-size: 13px;
  line-height: 1.5;
}

.ws-label {
  color: var(--ws-text-secondary);
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 600;
  display: block;
}

.ws-field {
  margin-bottom: 16px;
}

.ws-input {
  background: var(--ws-input-bg);
  border: 1px solid var(--ws-input-border);
  width: 100%;
  color: var(--ws-text-primary);
  box-sizing: border-box;
  border-radius: 8px;
  outline: none;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
  transition: all .2s;
}

.ws-input:focus {
  border-color: var(--ws-accent);
}

.ws-textarea {
  background: var(--ws-input-bg);
  border: 1px solid var(--ws-input-border);
  width: 100%;
  color: var(--ws-text-primary);
  box-sizing: border-box;
  resize: vertical;
  border-radius: 8px;
  outline: none;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.5;
  transition: all .2s;
}

.ws-textarea:focus {
  border-color: var(--ws-accent);
}

.ws-counter-row {
  justify-content: space-between;
  align-items: center;
  margin-top: 6px;
  display: flex;
}

.ws-counter {
  color: var(--ws-text-muted);
  font-size: 11px;
}

.ws-saved-badge {
  color: #22c55e;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  display: flex;
}

.ws-divider {
  background: var(--ws-card-border);
  height: 1px;
  margin: 24px 0;
}

.ws-toggle-section {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  display: flex;
}

.ws-toggle-title {
  color: var(--ws-text-primary);
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 600;
}

.ws-toggle-desc {
  color: var(--ws-text-muted);
  font-size: 12px;
}

.ws-empty {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 60px 24px;
  display: flex;
}

.ws-empty-icon {
  background: var(--ws-card-bg);
  border: 1px dashed var(--ws-card-border);
  border-radius: 14px;
  justify-content: center;
  align-items: center;
  width: 56px;
  height: 56px;
  margin-bottom: 14px;
  display: flex;
}

.ws-empty-icon i {
  color: var(--ws-text-muted);
  font-size: 22px;
}

.ws-empty-title {
  color: var(--ws-text-primary);
  margin-bottom: 6px;
  font-size: 16px;
  font-weight: 600;
}

.ws-empty-desc {
  color: var(--ws-text-muted);
  max-width: 320px;
  margin-bottom: 16px;
  font-size: 13px;
  line-height: 1.5;
}

.ws-loading {
  justify-content: center;
  align-items: center;
  padding: 60px 0;
  display: flex;
}

.ws-files-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
  display: flex;
}

.ws-files-actions {
  gap: 8px;
  display: flex;
}

.ws-capacity {
  margin-bottom: 16px;
}

.ws-capacity-info {
  color: var(--ws-text-muted);
  justify-content: space-between;
  margin-bottom: 4px;
  font-size: 11px;
  display: flex;
}

.ws-capacity-bar {
  background: var(--ws-card-border);
  border-radius: 2px;
  height: 4px;
  overflow: hidden;
}

.ws-capacity-fill {
  border-radius: 2px;
  height: 100%;
  transition: width .3s;
}

.ws-activity-list {
  flex-direction: column;
  gap: 0;
  display: flex;
}

.ws-activity-item {
  border-bottom: 1px solid var(--ws-card-border);
  gap: 12px;
  padding: 14px 0;
  display: flex;
}

.ws-activity-item:last-child {
  border-bottom: none;
}

.ws-activity-icon {
  background: var(--ws-btn-bg);
  width: 32px;
  height: 32px;
  color: var(--ws-text-muted);
  border-radius: 8px;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  display: flex;
}

.ws-activity-content {
  flex: 1;
}

.ws-activity-text {
  color: var(--ws-text-primary);
  font-size: 13px;
}

.ws-activity-time {
  color: var(--ws-text-muted);
  margin-top: 2px;
  font-size: 11px;
}

.ws-memory-cards {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 12px;
  display: grid;
}

.ws-memory-card {
  border: 1px solid var(--ws-card-border);
  cursor: pointer;
  text-align: center;
  border-radius: 12px;
  padding: 16px;
  transition: all .2s;
}

.ws-memory-card:hover {
  border-color: var(--ws-card-border-hover);
}

.ws-memory-card.active {
  border-color: var(--ws-accent);
  background: #8b5cf60f;
}

.ws-memory-card i {
  color: var(--ws-text-muted);
  margin-bottom: 8px;
  font-size: 24px;
  display: block;
}

.ws-memory-card.active i {
  color: var(--ws-accent);
}

.ws-memory-title {
  color: var(--ws-text-primary);
  margin-bottom: 4px;
  font-size: 13px;
  font-weight: 600;
}

.ws-memory-desc {
  color: var(--ws-text-muted);
  font-size: 11px;
}

.ws-danger-zone {
  margin-top: 8px;
}

.ws-danger-title {
  color: #f87171;
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 600;
}

.ws-danger-row {
  border-bottom: 1px solid var(--ws-card-border);
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 14px 0;
  display: flex;
}

.ws-danger-row:last-child {
  border-bottom: none;
}

.ws-danger-label {
  color: var(--ws-text-primary);
  font-size: 14px;
  font-weight: 500;
}

.ws-danger-desc {
  color: var(--ws-text-muted);
  margin-top: 2px;
  font-size: 12px;
}

.ws-btn-danger {
  color: #ef4444;
  cursor: pointer;
  background: #ef44441a;
  border: 1px solid #ef44444d;
  border-radius: 8px;
  padding: 8px 16px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  transition: all .15s;
}

.ws-btn-danger:hover {
  background: #ef444433;
}

.ws-save-btn {
  margin-top: 8px;
}

.pcm-overlay {
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  z-index: 1000;
  background: #0009;
  justify-content: center;
  align-items: center;
  display: flex;
  position: fixed;
  inset: 0;
}

.pcm-modal {
  background: var(--projects-dropdown-bg, #1a1a1a);
  border: 1px solid var(--projects-dropdown-border, #ffffff1a);
  border-radius: 16px;
  flex-direction: column;
  width: 520px;
  max-width: 90vw;
  max-height: 85vh;
  display: flex;
  box-shadow: 0 20px 60px #00000080;
}

.pcm-header {
  justify-content: space-between;
  align-items: center;
  padding: 20px 24px 0;
  display: flex;
}

.pcm-title {
  color: var(--ws-text-primary);
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}

.pcm-close {
  cursor: pointer;
  color: var(--ws-text-muted);
  background: none;
  border: none;
  font-size: 18px;
}

.pcm-subtitle {
  color: var(--ws-text-muted);
  margin: 8px 0 20px;
  font-size: 14px;
}

.pcm-body {
  flex: 1;
  padding: 16px 24px;
  overflow-y: auto;
}

.pcm-section-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--ws-text-muted);
  margin-bottom: 10px;
  font-size: 11px;
  font-weight: 700;
}

.pcm-template-list {
  flex-direction: column;
  gap: 6px;
  display: flex;
}

.pcm-template-card {
  border: 1px solid var(--ws-card-border);
  cursor: pointer;
  text-align: left;
  width: 100%;
  color: var(--ws-text-primary);
  font-family: inherit;
  font-size: inherit;
  background: none;
  border-radius: 10px;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  transition: all .15s;
  display: flex;
}

.pcm-template-card:hover {
  background: var(--ws-btn-bg);
}

.pcm-scratch-icon {
  background: var(--ws-btn-bg);
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 20px;
  display: flex;
}

.pcm-template-emoji {
  font-size: 24px;
}

.pcm-template-name {
  font-size: 14px;
  font-weight: 600;
}

.pcm-template-desc {
  color: var(--ws-text-muted);
  margin-top: 2px;
  font-size: 12px;
}

.pcm-progress {
  border-bottom: 1px solid var(--ws-card-border);
  align-items: center;
  padding: 16px 24px;
  display: flex;
}

.pcm-step {
  align-items: center;
  gap: 8px;
  display: flex;
}

.pcm-step-dot {
  background: var(--ws-btn-bg);
  width: 24px;
  height: 24px;
  color: var(--ws-text-muted);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  font-size: 11px;
  font-weight: 600;
  transition: all .2s;
  display: flex;
}

.pcm-step.active .pcm-step-dot {
  background: var(--ws-accent);
  color: #fff;
}

.pcm-step.completed .pcm-step-dot {
  color: #fff;
  background: #22c55e;
}

.pcm-step-label {
  color: var(--ws-text-muted);
  font-size: 12px;
  font-weight: 500;
}

.pcm-step.active .pcm-step-label {
  color: var(--ws-text-primary);
}

.pcm-step-line {
  background: var(--ws-card-border);
  width: 40px;
  height: 1px;
  margin: 0 8px;
}

.pcm-field {
  margin-bottom: 16px;
}

.pcm-label {
  color: var(--ws-text-secondary);
  margin-bottom: 6px;
  font-size: 13px;
  font-weight: 600;
  display: block;
}

.pcm-input {
  background: var(--ws-input-bg);
  border: 1px solid var(--ws-input-border);
  width: 100%;
  color: var(--ws-text-primary);
  box-sizing: border-box;
  border-radius: 8px;
  outline: none;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
}

.pcm-input:focus {
  border-color: var(--ws-accent);
}

.pcm-textarea {
  background: var(--ws-input-bg);
  border: 1px solid var(--ws-input-border);
  width: 100%;
  color: var(--ws-text-primary);
  box-sizing: border-box;
  resize: vertical;
  border-radius: 8px;
  outline: none;
  padding: 10px 14px;
  font-family: inherit;
  font-size: 14px;
}

.pcm-textarea:focus {
  border-color: var(--ws-accent);
}

.pcm-textarea-lg {
  min-height: 120px;
}

.pcm-counter {
  text-align: right;
  color: var(--ws-text-muted);
  margin-top: 4px;
  font-size: 11px;
}

.pcm-hint {
  color: var(--ws-text-muted);
  margin-bottom: 12px;
  font-size: 12px;
  line-height: 1.5;
}

.pcm-category-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  display: grid;
}

.pcm-category-card {
  border: 1px solid var(--ws-card-border);
  color: var(--ws-text-muted);
  cursor: pointer;
  background: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 8px 6px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 500;
  transition: all .15s;
  display: flex;
}

.pcm-category-card:hover {
  border-color: var(--ws-card-border-hover);
  color: var(--ws-text-primary);
}

.pcm-category-card.selected {
  border-color: var(--ws-accent);
  color: var(--ws-accent);
  background: #8b5cf61a;
}

.pcm-category-card i {
  font-size: 14px;
}

.pcm-color-row {
  gap: 8px;
  display: flex;
}

.pcm-color-swatch {
  cursor: pointer;
  border: 2px solid #0000;
  border-radius: 6px;
  width: 28px;
  height: 28px;
  transition: border-color .15s;
}

.pcm-color-swatch.active {
  border-color: var(--ws-text-primary);
}

.pcm-icon-row {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.pcm-icon-choice {
  background: var(--ws-btn-bg);
  border: 1px solid var(--ws-card-border);
  width: 36px;
  height: 36px;
  color: var(--ws-text-muted);
  cursor: pointer;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  transition: all .15s;
  display: flex;
}

.pcm-icon-choice:hover {
  border-color: var(--ws-card-border-hover);
  color: var(--ws-text-primary);
}

.pcm-icon-choice.active {
  border-color: var(--ws-accent);
  color: var(--ws-accent);
  background: #8b5cf61a;
}

.pcm-toggle-row {
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-top: 16px;
  display: flex;
}

.pcm-toggle-label {
  color: var(--ws-text-primary);
  font-size: 14px;
  font-weight: 600;
}

.pcm-toggle-desc {
  color: var(--ws-text-muted);
  margin-top: 2px;
  font-size: 12px;
}

.pcm-dropzone {
  border: 2px dashed var(--ws-card-border);
  text-align: center;
  cursor: pointer;
  border-radius: 12px;
  padding: 28px;
  transition: all .2s;
}

.pcm-dropzone:hover, .pcm-dropzone.dragover {
  border-color: var(--ws-accent);
  background: #8b5cf608;
}

.pcm-dropzone i {
  color: var(--ws-text-muted);
  margin-bottom: 8px;
  font-size: 28px;
  display: block;
}

.pcm-dropzone-hint {
  color: var(--ws-text-muted);
  margin-top: 4px;
  font-size: 11px;
}

.pcm-pending-files {
  flex-direction: column;
  gap: 4px;
  margin-top: 12px;
  display: flex;
}

.pcm-pending-file {
  background: var(--ws-card-bg);
  border: 1px solid var(--ws-card-border);
  color: var(--ws-text-primary);
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  display: flex;
}

.pcm-pending-file i {
  color: var(--ws-text-muted);
}

.pcm-pending-file span {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  overflow: hidden;
}

.pcm-pending-file button {
  color: var(--ws-text-muted);
  cursor: pointer;
  background: none;
  border: none;
  padding: 2px;
  font-size: 14px;
}

.pcm-pending-file button:hover {
  color: #f87171;
}

.pcm-footer {
  border-top: 1px solid var(--ws-card-border);
  align-items: center;
  gap: 10px;
  padding: 16px 24px;
  display: flex;
}

.pcm-btn-primary {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  transition: all .15s;
  display: inline-flex;
}

.pcm-btn-primary:hover {
  background: #f0f0f0;
}

.pcm-btn-primary:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.pcm-btn-create {
  color: #fff;
  background: linear-gradient(135deg, #7c3aed, #8b5cf6);
}

.pcm-btn-create:hover {
  background: linear-gradient(135deg, #6d28d9, #7c3aed);
}

.pcm-btn-secondary {
  border: 1px solid var(--ws-card-border);
  color: var(--ws-text-muted);
  cursor: pointer;
  background: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  font-family: inherit;
  font-size: 14px;
  transition: all .15s;
  display: inline-flex;
}

.pcm-btn-secondary:hover {
  border-color: var(--ws-card-border-hover);
  color: var(--ws-text-primary);
}

.private-ghost-icon {
  cursor: pointer;
  border-radius: 6px;
  padding: 4px;
  transition: opacity .2s;
}

.private-ghost-icon .ghost-icon {
  color: var(--text-subtle, #ffffff59);
  transition: color .25s;
  display: block;
}

.private-ghost-icon:hover .ghost-icon {
  color: var(--text-muted, #ffffff8c);
}

.private-ghost-icon .ghost-pupil {
  transition: cx 80ms ease-out, cy 80ms ease-out;
}

.private-ghost-icon.active .ghost-icon {
  color: #22c55e;
}

.private-mode .torki-input-wrapper {
  background-color: #0a0a0a !important;
  border-color: #1a1a1a !important;
}

.private-mode .welcome-gradient-text {
  background: linear-gradient(to right, #22c55e, #14b8a6) !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-background-clip: text !important;
}

.private-watermark-overlay {
  pointer-events: none;
  z-index: 1;
  justify-content: center;
  align-items: center;
  animation: .4s privateFadeIn;
  display: flex;
  position: fixed;
  inset: 0;
}

.private-watermark-inner {
  opacity: .05;
  flex-direction: column;
  align-items: center;
  display: flex;
}

.private-eye-svg {
  color: #22c55e;
  width: 256px;
  height: 256px;
}

.private-watermark-text {
  color: #22c55e;
  text-transform: uppercase;
  letter-spacing: 1em;
  margin-top: 16px;
  padding-left: 1em;
  font-size: 2.5rem;
  font-weight: 700;
}

@keyframes privateFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@media (max-width: 640px) {
  .private-eye-svg {
    width: 160px;
    height: 160px;
  }

  .private-watermark-text {
    letter-spacing: .5em;
    padding-left: .5em;
    font-size: 1.5rem;
  }
}

.sdw-shell {
  background: var(--bg-body);
  height: 100vh;
  color: var(--text-main);
  font-family: var(--font-sans);
  gap: 8px;
  padding: 8px;
  display: flex;
  overflow: hidden;
}

.sdw-left-wrap {
  flex-shrink: 0;
  width: 240px;
  transition: width .25s cubic-bezier(.4, 0, .2, 1), opacity .15s;
  overflow: hidden;
}

.sdw-left-wrap.sdw-collapsed {
  opacity: 0;
  pointer-events: none;
  width: 0;
}

.sdw-right-wrap {
  opacity: 0;
  flex-shrink: 0;
  width: 0;
  transition: width .25s cubic-bezier(.4, 0, .2, 1), opacity .15s;
  overflow: hidden;
}

.sdw-right-wrap.sdw-right-open {
  opacity: 1;
  width: 270px;
}

.sdw-left {
  background: var(--bg-body);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  flex-direction: column;
  width: 240px;
  height: 100%;
  display: flex;
  overflow: hidden;
}

.sdw-back-link {
  color: var(--text-subtle);
  border-bottom: 1px solid var(--border-subtle);
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  font-size: 13px;
  text-decoration: none;
  transition: color .12s;
  display: flex;
}

.sdw-back-link:hover {
  color: var(--text-main);
}

.sdw-back-link i {
  font-size: 14px;
}

.sdw-left-head {
  justify-content: space-between;
  align-items: center;
  padding: 16px 14px 12px;
  display: flex;
}

.sdw-left-logo {
  cursor: pointer;
  background: none;
  border: none;
  align-items: center;
  gap: 8px;
  padding: 0;
  display: flex;
}

.sdw-logo-img {
  object-fit: contain;
  width: 28px;
  height: 28px;
}

.sdw-logo-label {
  font-family: var(--font-display);
  color: var(--text-main);
  font-size: 15px;
  font-weight: 600;
}

.sdw-collapse-btn {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 4px;
  font-size: 17px;
  transition: all .12s;
}

.sdw-collapse-btn:hover {
  color: var(--text-main);
  background: #ffffff0f;
}

.sdw-left-desc {
  color: var(--text-subtle);
  padding: 0 16px 14px;
  font-size: 12px;
  line-height: 1.6;
}

.sdw-left-section {
  padding: 2px 10px;
}

.sdw-setting {
  border-radius: 6px;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  transition: background .1s;
  display: flex;
}

.sdw-setting:hover {
  background: #ffffff0a;
}

.sdw-setting-icon {
  color: var(--text-subtle);
  text-align: center;
  flex-shrink: 0;
  width: 18px;
  font-size: 14px;
}

.sdw-setting-label {
  color: var(--text-muted);
  flex: 1;
  font-size: 13px;
}

.sdw-setting-check {
  color: #22c55e;
  font-size: 13px;
}

.sdw-setting-value {
  color: var(--text-subtle);
  align-items: center;
  gap: 3px;
  font-size: 12px;
  display: flex;
}

.sdw-setting-value i {
  color: #22c55e;
  font-size: 11px;
}

.sdw-toggle {
  background: var(--bg-hover);
  cursor: pointer;
  border: none;
  border-radius: 9px;
  flex-shrink: 0;
  width: 34px;
  height: 18px;
  transition: background .2s;
  position: relative;
}

.sdw-toggle-on {
  background: #7c3aed;
}

.sdw-toggle-thumb {
  background: #fff;
  border-radius: 50%;
  width: 14px;
  height: 14px;
  transition: transform .2s;
  position: absolute;
  top: 2px;
  left: 2px;
}

.sdw-toggle-on .sdw-toggle-thumb {
  transform: translateX(16px);
}

.sdw-setting-status {
  flex-shrink: 0;
  font-size: 14px;
}

.sdw-code-btn {
  cursor: pointer;
  color: var(--text-subtle);
  background: none;
  border: none;
  align-items: center;
  gap: 4px;
  padding: 2px 0;
  font-size: 12px;
  transition: color .12s;
  display: flex;
}

.sdw-code-btn:hover {
  color: var(--text-main);
}

.sdw-code-btn i {
  font-size: 10px;
}

.sdw-code-dropdown {
  z-index: 50;
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  border-radius: 10px;
  min-width: 180px;
  margin-top: 4px;
  padding: 4px;
  position: absolute;
  top: 100%;
  right: 0;
  box-shadow: 0 8px 24px #00000080;
}

.sdw-code-opt {
  width: 100%;
  color: var(--text-muted);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  border-radius: 6px;
  justify-content: space-between;
  align-items: center;
  padding: 7px 10px;
  font-size: 13px;
  transition: all .1s;
  display: flex;
}

.sdw-code-opt:hover {
  background: var(--bg-hover);
  color: var(--text-main);
}

.sdw-code-opt.active {
  color: var(--text-main);
}

.sdw-code-opt i {
  color: #22c55e;
  font-size: 13px;
}

.sdw-connect-link {
  color: var(--torki-accent);
  padding: 2px 0;
  font-size: 12px;
  text-decoration: none;
  transition: color .12s;
  display: block;
}

.sdw-connect-link:hover {
  color: var(--text-main);
  text-decoration: underline;
}

.sdw-recents-head {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--text-subtle);
  justify-content: space-between;
  align-items: center;
  padding: 10px 8px 4px;
  font-size: 11px;
  font-weight: 600;
  display: flex;
}

.sdw-new-btn {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  padding: 2px;
  font-size: 14px;
  transition: all .1s;
}

.sdw-new-btn:hover {
  color: var(--text-main);
  background: #ffffff0f;
}

.sdw-task-list {
  flex: 1;
  overflow-y: auto;
}

.sdw-task-item {
  width: 100%;
  color: var(--text-muted);
  text-align: left;
  cursor: pointer;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 6px 10px;
  font-size: 13px;
  transition: all .1s;
  display: block;
  overflow: hidden;
}

.sdw-task-item:hover {
  color: var(--text-main);
  background: #ffffff0d;
}

.sdw-task-empty {
  color: var(--text-subtle);
  text-align: center;
  padding: 16px 10px;
  font-size: 12px;
}

.sdw-left-connected {
  border-top: 1px solid #ffffff0f;
  margin-top: auto;
  padding: 10px 16px;
}

.sdw-connected-label {
  text-transform: uppercase;
  letter-spacing: .5px;
  color: var(--text-subtle);
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 600;
  display: block;
}

.sdw-connected-row {
  color: var(--text-subtle);
  align-items: center;
  gap: 6px;
  padding: 2px 0;
  font-size: 12px;
  display: flex;
}

.sdw-connected-dot {
  background: #22c55e;
  border-radius: 50%;
  width: 5px;
  height: 5px;
}

.sdw-chat {
  background: var(--bg-body);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  flex-direction: column;
  flex: 1;
  min-width: 0;
  display: flex;
  position: relative;
  overflow: hidden;
}

.sdw-chat:before {
  content: "";
  z-index: 0;
  pointer-events: none;
  opacity: .08;
  background-image: radial-gradient(circle, #fff9 1px, #0000 1px);
  background-size: 24px 24px;
  position: absolute;
  inset: 0;
}

.sdw-chat-topbar {
  z-index: 1;
  flex-shrink: 0;
  align-items: center;
  padding: 10px 14px;
  display: flex;
  position: relative;
}

.sdw-topbar-btn {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff14;
  border-radius: 6px;
  padding: 5px 7px;
  font-size: 16px;
  transition: all .12s;
}

.sdw-topbar-btn:hover {
  color: var(--text-main);
  background: #ffffff0a;
  border-color: #ffffff26;
}

.sdw-topbar-active {
  color: #a78bfa;
  border-color: #7c3aed4d;
}

.sdw-chat-scroll {
  z-index: 1;
  flex: 1;
  position: relative;
  overflow-y: auto;
}

.sdw-welcome {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 40px 24px 140px;
  display: flex;
}

.sdw-welcome-logo {
  object-fit: contain;
  width: 44px;
  height: 44px;
  margin-bottom: 20px;
}

.sdw-welcome-title {
  font-family: var(--font-display);
  color: var(--text-main);
  margin: 0 0 10px;
  font-size: 26px;
  font-weight: 600;
}

.sdw-welcome-sub {
  color: var(--text-subtle);
  max-width: 440px;
  margin: 0 0 28px;
  font-size: 14px;
  line-height: 1.7;
}

.sdw-welcome-input {
  width: 100%;
  max-width: 640px;
  margin-bottom: 16px;
}

.sdw-chips {
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  display: flex;
}

.sdw-chip {
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff1a;
  border-radius: 9999px;
  padding: 7px 16px;
  font-size: 13px;
  transition: all .2s;
}

.sdw-chip:hover {
  color: var(--text-main);
  background: #7c3aed0f;
  border-color: #7c3aed66;
}

.sdw-thread {
  max-width: 760px;
  margin: 0 auto;
  padding: 20px 24px 200px;
}

.sdw-row-user {
  justify-content: flex-end;
  margin-bottom: 24px;
  animation: .2s sdwIn;
  display: flex;
}

.sdw-bubble {
  background: var(--text-main);
  max-width: 60%;
  color: var(--bg-body);
  white-space: pre-wrap;
  border-radius: 20px 20px 6px;
  padding: 10px 18px;
  font-size: 14.5px;
  line-height: 1.6;
}

.sdw-row-ai {
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 24px;
  animation: .25s sdwIn;
  display: flex;
}

.sdw-ai-av {
  object-fit: contain;
  border-radius: 50%;
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  margin-top: 2px;
}

.sdw-av-spacer {
  flex-shrink: 0;
  width: 28px;
}

.sdw-ai-body {
  min-width: 0;
  color: var(--text-main);
  flex: 1;
  font-size: 14.5px;
  line-height: 1.75;
}

.sdw-link {
  color: #a78bfa;
  text-underline-offset: 2px;
  text-decoration: underline;
}

.sdw-link:hover {
  color: #c4b5fd;
}

.sdw-msg-actions {
  opacity: 0;
  gap: 4px;
  margin-top: 6px;
  transition: opacity .15s;
  display: flex;
}

.sdw-row-ai:hover .sdw-msg-actions {
  opacity: 1;
}

.sdw-msg-actions button {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 4px;
  padding: 3px;
  font-size: 14px;
}

.sdw-msg-actions button:hover {
  color: var(--text-main);
  background: #ffffff0f;
}

.sdw-dots {
  gap: 5px;
  padding: 10px 0;
  display: flex;
}

.sdw-dots span {
  background: #7c3aed;
  border-radius: 50%;
  width: 7px;
  height: 7px;
  animation: 1.2s ease-in-out infinite sdwDot;
}

.sdw-dots span:nth-child(2) {
  animation-delay: .15s;
}

.sdw-dots span:nth-child(3) {
  animation-delay: .3s;
}

.sdw-narration {
  color: #7c3aed;
  padding: 6px 0;
  font-size: 13px;
  animation: 2s ease-in-out infinite sdwPulse;
}

.sdw-done-bar {
  color: var(--text-subtle);
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: flex;
}

.sdw-done-bar > i {
  color: #22c55e;
  font-size: 16px;
}

.sdw-done-link {
  color: #a78bfa;
  align-items: center;
  gap: 3px;
  font-size: 12px;
  text-decoration: none;
  display: flex;
}

.sdw-done-link:hover {
  color: #c4b5fd;
  text-decoration: underline;
}

.sdw-done-btn {
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff1a;
  border-radius: 6px;
  align-items: center;
  gap: 3px;
  padding: 3px 8px;
  font-size: 12px;
  transition: all .12s;
  display: flex;
}

.sdw-done-btn:hover {
  color: var(--text-main);
  border-color: #fff3;
}

.sdw-input-area {
  z-index: 1;
  flex-shrink: 0;
  padding: 0 20px 14px;
  position: relative;
}

.sdw-input-box {
  max-width: 760px;
  margin: 0 auto;
}

.sdw-fine {
  text-align: center;
  color: var(--text-subtle);
  margin: 6px 0 0;
  font-size: 11px;
}

.sdw-right {
  background: var(--bg-body);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  flex-direction: column;
  width: 270px;
  height: 100%;
  padding: 6px 0;
  display: flex;
  overflow: hidden auto;
}

.sdw-section {
  border-bottom: 1px solid #ffffff0d;
}

.sdw-section-head {
  color: var(--text-main);
  cursor: pointer;
  text-align: left;
  background: none;
  border: none;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 500;
  transition: background .1s;
  display: flex;
}

.sdw-section-head:hover {
  background: #ffffff08;
}

.sdw-section-head i {
  color: var(--text-subtle);
  font-size: 14px;
}

.sdw-section-arrow {
  color: var(--text-subtle);
  margin-left: auto;
  font-size: 11px;
}

.sdw-section-body {
  padding: 2px 14px 12px;
}

.sdw-progress-empty {
  color: var(--text-subtle);
  align-items: center;
  gap: 8px;
  font-size: 13px;
  display: flex;
}

.sdw-progress-ready {
  color: #22c55e;
  font-size: 16px;
}

.sdw-progress-done {
  color: #22c55e;
  margin-top: 6px;
  font-size: 12px;
}

.sdw-steps {
  flex-direction: column;
  gap: 5px;
  display: flex;
}

.sdw-step {
  align-items: flex-start;
  gap: 8px;
  display: flex;
}

.sdw-step-icon {
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  margin-top: 1px;
  display: flex;
}

.sdw-step-completed .sdw-step-icon i {
  color: #22c55e;
  font-size: 15px;
}

.sdw-step-failed .sdw-step-icon i {
  color: #ef4444;
  font-size: 15px;
}

.sdw-step-pulse {
  border: 2px solid #7c3aed;
  border-radius: 50%;
  width: 12px;
  height: 12px;
  animation: 1.5s ease-in-out infinite sdwPulse;
}

.sdw-step-circle {
  border: 2px solid var(--border-subtle);
  border-radius: 50%;
  width: 12px;
  height: 12px;
}

.sdw-step-text {
  color: var(--text-subtle);
  font-size: 13px;
  line-height: 1.4;
}

.sdw-step-completed .sdw-step-text {
  color: var(--text-muted);
}

.sdw-step-running .sdw-step-text {
  color: #c4b5fd;
}

.sdw-browser {
  border: 1px solid #ffffff14;
  border-radius: 8px;
  overflow: hidden;
}

.sdw-browser-bar {
  background: #ffffff08;
  align-items: center;
  gap: 5px;
  padding: 5px 10px;
  display: flex;
}

.sdw-browser-dot {
  border-radius: 50%;
  width: 7px;
  height: 7px;
}

.sdw-browser-url {
  color: var(--text-subtle);
  font-size: 11px;
  font-family: var(--font-mono);
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  margin-left: 4px;
  overflow: hidden;
}

.sdw-browser-status {
  color: var(--text-subtle);
  padding: 6px 10px;
  font-size: 12px;
}

.sdw-context-empty {
  color: var(--text-subtle);
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

.sdw-context-tools {
  flex-wrap: wrap;
  gap: 5px;
  display: flex;
}

.sdw-tool-tag {
  color: var(--text-subtle);
  background: #ffffff0a;
  border-radius: 5px;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  font-size: 12px;
  display: inline-flex;
}

.sdw-tool-tag i {
  font-size: 12px;
}

.sdw-file-row {
  color: var(--text-subtle);
  align-items: center;
  gap: 6px;
  padding: 3px 0;
  font-size: 13px;
  display: flex;
}

.sdw-file-row i {
  color: var(--text-subtle);
}

.shadow-confirm {
  border: 1px solid var(--border-subtle);
  background: var(--bg-card);
  border-radius: 12px;
  max-width: 440px;
  padding: 14px 16px;
}

.shadow-confirm-done {
  opacity: .5;
}

.shadow-confirm-title {
  color: var(--text-main);
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.5;
}

.shadow-confirm-buttons {
  gap: 8px;
  display: flex;
}

.shadow-confirm-approve, .shadow-confirm-edit, .shadow-confirm-skip {
  cursor: pointer;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 4px;
  padding: 6px 14px;
  font-size: 13px;
  transition: all .15s;
  display: flex;
}

.shadow-confirm-approve {
  color: #fff;
  background: #22c55e;
}

.shadow-confirm-approve:hover {
  filter: brightness(.9);
}

.shadow-confirm-edit {
  background: var(--bg-soft);
  color: var(--text-main);
  border: 1px solid #ffffff1a;
}

.shadow-confirm-skip {
  color: var(--text-subtle);
  background: none;
}

.shadow-confirm-loading, .shadow-confirm-success, .shadow-confirm-skipped, .shadow-confirm-error {
  align-items: center;
  gap: 6px;
  padding: 6px 0;
  font-size: 13px;
  display: flex;
}

.shadow-confirm-success {
  color: #22c55e;
}

.shadow-confirm-skipped {
  color: var(--text-subtle);
}

.shadow-confirm-error {
  color: #ef4444;
}

.shadow-confirm-details {
  flex-direction: column;
  gap: 2px;
  margin-bottom: 10px;
  display: flex;
}

.shadow-confirm-detail {
  color: var(--text-subtle);
  font-size: 12px;
}

@keyframes sdwIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes sdwPulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .35;
  }
}

@keyframes sdwDot {
  0%, 100% {
    opacity: .3;
    transform: scale(.8);
  }

  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

@media (max-width: 1024px) {
  .sdw-right-wrap {
    display: none;
  }
}

@media (max-width: 768px) {
  .sdw-left-wrap {
    opacity: 0;
    pointer-events: none;
    width: 0;
  }

  .sdw-thread {
    padding: 16px 16px 180px;
  }

  .sdw-bubble {
    max-width: 85%;
  }
}

:root {
  --ob-bg: #000;
  --ob-card: #0a0a0a;
  --ob-border: #27272a;
  --ob-text: #fff;
  --ob-muted: #a1a1aa;
  --ob-subtle: #71717a;
  --ob-purple: #9333ea;
  --ob-purple-glow: #9333ea40;
}

.ob-step-dots {
  z-index: 100;
  gap: 8px;
  display: flex;
  position: fixed;
  top: 32px;
  left: 50%;
  transform: translateX(-50%);
}

.ob-dot {
  background: #3f3f46;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  transition: all .4s;
}

.ob-dot.active {
  background: var(--ob-purple);
  box-shadow: 0 0 8px var(--ob-purple-glow);
  border-radius: 4px;
  width: 24px;
}

.ob-dot.completed {
  background: var(--ob-muted);
}

.ob-skip-btn {
  color: var(--ob-subtle);
  cursor: pointer;
  z-index: 100;
  background: none;
  border: none;
  border-radius: 8px;
  padding: 6px 12px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  transition: color .2s, background .2s;
  position: fixed;
  top: 28px;
  right: 28px;
}

.ob-skip-btn:hover {
  color: var(--ob-text);
  background: #ffffff0d;
}

.ob-step {
  opacity: 0;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  transition: opacity .5s, transform .5s;
  display: flex;
  position: absolute;
  inset: 0;
  transform: translateX(40px);
}

.ob-step.active {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
}

.ob-step.exiting {
  opacity: 0;
  pointer-events: none;
  transform: translateX(-40px);
}

.ob-step-content {
  text-align: center;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 560px;
  padding: 24px;
  display: flex;
}

.ob-continue-btn, .ob-start-btn {
  cursor: pointer;
  border: none;
  border-radius: 12px;
  margin-top: 40px;
  padding: 14px 48px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  transition: transform .15s, box-shadow .15s, opacity .15s;
}

.ob-continue-btn {
  background: var(--ob-text);
  color: var(--ob-bg);
}

.ob-continue-btn:hover {
  transform: scale(1.03);
}

.ob-continue-btn:active {
  transform: scale(.97);
}

.ob-continue-btn:disabled {
  opacity: .3;
  cursor: not-allowed;
  transform: none;
}

.ob-start-btn {
  color: #fff;
  box-shadow: 0 4px 24px var(--ob-purple-glow);
  background: linear-gradient(135deg, #8b5cf6, #a855f7, #c026d3);
  padding: 16px 56px;
  font-size: 16px;
}

.ob-start-btn:hover {
  box-shadow: 0 6px 32px var(--ob-purple-glow);
  transform: scale(1.03);
}

.ob-start-btn:active {
  transform: scale(.97);
}

.ob-pulse {
  animation: 2.5s ease-in-out infinite obGentlePulse;
}

@keyframes obGentlePulse {
  0%, 100% {
    box-shadow: 0 0 #ffffff4d;
  }

  50% {
    box-shadow: 0 0 0 14px #fff0;
  }
}

.ob-welcome-gradient {
  pointer-events: none;
  background: radial-gradient(at 50% 30%, #9333ea14 0%, #0000 60%);
  animation: 8s ease-in-out infinite alternate obGradientFloat;
  position: fixed;
  inset: 0;
}

@keyframes obGradientFloat {
  0% {
    transform: translate(0)scale(1);
  }

  100% {
    transform: translate(0, -20px)scale(1.05);
  }
}

.ob-welcome-logo {
  border-radius: 20px;
  width: 80px;
  height: 80px;
  animation: .8s cubic-bezier(.34, 1.56, .64, 1) .3s both obLogoEntrance;
}

@keyframes obLogoEntrance {
  from {
    opacity: 0;
    transform: scale(.6);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.ob-welcome-title {
  letter-spacing: -.02em;
  color: var(--ob-text);
  margin-top: 28px;
  font-size: 36px;
  font-weight: 700;
  animation: .6s ease-out .9s both obFadeUpIn;
}

.ob-welcome-tagline {
  color: var(--ob-muted);
  margin-top: 10px;
  font-size: 18px;
  font-weight: 400;
  animation: .6s ease-out 1.3s both obFadeUpIn;
}

.ob-welcome-step .ob-continue-btn {
  animation: .6s ease-out 2s both obFadeUpIn;
}

@keyframes obFadeUpIn {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.ob-mascot-large {
  border-radius: 24px;
  width: 100px;
  height: 100px;
  animation: .6s cubic-bezier(.34, 1.56, .64, 1) .2s both obScaleBounce;
}

@keyframes obScaleBounce {
  0% {
    opacity: 0;
    transform: scale(0);
  }

  60% {
    transform: scale(1.1);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.ob-speech-bubble {
  background: var(--ob-card);
  border: 1px solid var(--ob-border);
  color: var(--ob-muted);
  text-align: left;
  border-radius: 16px;
  max-width: 440px;
  min-height: 80px;
  margin-top: 24px;
  padding: 20px 28px;
  font-size: 16px;
  line-height: 1.6;
  position: relative;
}

.ob-cursor-blink {
  background: var(--ob-purple);
  vertical-align: text-bottom;
  width: 2px;
  height: 1em;
  margin-left: 2px;
  animation: .8s step-end infinite obBlink;
  display: inline-block;
}

@keyframes obBlink {
  50% {
    opacity: 0;
  }
}

.ob-capability-pills {
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 28px;
  display: flex;
}

.ob-pill {
  background: var(--ob-card);
  border: 1px solid var(--ob-border);
  color: var(--ob-muted);
  opacity: 0;
  border-radius: 24px;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 500;
  animation: .5s ease-out forwards obFadeUpIn;
}

.ob-interests-step h2 {
  letter-spacing: -.02em;
  color: var(--ob-text);
  font-size: 28px;
  font-weight: 700;
}

.ob-step-subtitle {
  color: var(--ob-muted);
  margin-top: 8px;
  margin-bottom: 32px;
  font-size: 15px;
}

.ob-interests-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 480px;
  display: grid;
}

.ob-interest-card {
  background: var(--ob-card);
  border: 1px solid var(--ob-border);
  cursor: pointer;
  color: var(--ob-muted);
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  padding: 14px 16px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.ob-interest-card:hover {
  background: #111;
  border-color: #52525b;
}

.ob-interest-card.selected {
  border-color: var(--ob-purple);
  color: var(--ob-text);
  box-shadow: 0 0 0 1px var(--ob-purple), 0 0 16px var(--ob-purple-glow);
  background: #9333ea14;
}

.ob-tour-cards-container {
  width: 100%;
  max-width: 400px;
  min-height: 300px;
  position: relative;
}

.ob-tour-card {
  text-align: center;
  opacity: 0;
  pointer-events: none;
  flex-direction: column;
  align-items: center;
  transition: opacity .5s, transform .5s;
  display: flex;
  position: absolute;
  inset: 0;
  transform: scale(.95);
}

.ob-tour-card.active {
  opacity: 1;
  pointer-events: auto;
  transform: scale(1);
}

.ob-tour-card h3 {
  letter-spacing: -.01em;
  color: var(--ob-text);
  margin-top: 24px;
  font-size: 22px;
  font-weight: 700;
}

.ob-tour-card p {
  color: var(--ob-muted);
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.5;
}

.ob-tour-visual {
  background: var(--ob-card);
  border: 1px solid var(--ob-border);
  border-radius: 16px;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 160px;
  display: flex;
  overflow: hidden;
}

.ob-tour-dots {
  gap: 8px;
  margin-top: 24px;
  display: flex;
}

.ob-tour-dot {
  cursor: pointer;
  background: #3f3f46;
  border: none;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  padding: 0;
  transition: all .3s;
}

.ob-tour-dot.active {
  background: var(--ob-purple);
}

.ob-mode-switcher-mock {
  gap: 6px;
  display: flex;
}

.ob-mode-pill {
  color: var(--ob-subtle);
  border: 1px solid var(--ob-border);
  background: #18181b;
  border-radius: 20px;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
}

.ob-mode-pill.active {
  background: var(--ob-text);
  color: var(--ob-bg);
  border-color: #0000;
}

.ob-mode-pill.highlight {
  border-color: var(--ob-purple);
  color: var(--ob-purple);
  animation: 2s infinite obGentlePulse;
}

.ob-canvas-mock {
  background: #111;
  border-radius: 8px;
  width: 80%;
  overflow: hidden;
}

.ob-canvas-mock-header {
  color: var(--ob-subtle);
  background: #1a1a1a;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  font-size: 11px;
  display: flex;
}

.ob-dot-r, .ob-dot-y, .ob-dot-g {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  display: inline-block;
}

.ob-dot-r {
  background: #ef4444;
}

.ob-dot-y {
  background: #eab308;
}

.ob-dot-g {
  background: #22c55e;
}

.ob-canvas-mock-title {
  margin-left: 8px;
}

.ob-canvas-mock-code {
  color: var(--ob-muted);
  padding: 16px;
  font-family: JetBrains Mono, monospace;
  font-size: 13px;
}

.ob-tag {
  color: #569cd6;
}

.ob-attr {
  color: #9cdcfe;
}

.ob-str {
  color: #ce9178;
}

.ob-voice-mock {
  justify-content: center;
  align-items: center;
  display: flex;
}

.ob-voice-circle-mock {
  background: radial-gradient(circle, #9333ea4d, #0000 70%);
  border: 2px solid #9333ea66;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  animation: 2s ease-in-out infinite obVoicePulse;
}

@keyframes obVoicePulse {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 #9333ea4d;
  }

  50% {
    transform: scale(1.08);
    box-shadow: 0 0 0 20px #9333ea00;
  }
}

.ob-voice-circle-mock.speaking {
  border-color: #9333eab3;
  animation: .8s ease-in-out infinite obVoiceSpeaking;
}

@keyframes obVoiceSpeaking {
  0%, 100% {
    transform: scale(1);
    box-shadow: 0 0 #9333ea80;
  }

  50% {
    transform: scale(1.12);
    box-shadow: 0 0 24px 12px #9333ea33;
  }
}

.ob-listen-btn {
  color: #c084fc;
  cursor: pointer;
  background: #9333ea1f;
  border: 1px solid #9333ea4d;
  border-radius: 24px;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 10px 20px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  transition: all .2s;
  display: inline-flex;
}

.ob-listen-btn:hover {
  background: #9333ea38;
  border-color: #9333ea80;
  transform: scale(1.03);
}

.ob-listen-btn:active {
  transform: scale(.97);
}

.ob-listen-btn.playing {
  color: #fff;
  pointer-events: none;
  background: #9333ea4d;
}

.ob-research-mock {
  text-align: center;
}

.ob-research-bar-mock {
  color: var(--ob-purple);
  margin-bottom: 12px;
  font-size: 13px;
  font-weight: 500;
}

.ob-research-sources-mock {
  justify-content: center;
  gap: 8px;
  display: flex;
}

.ob-research-sources-mock span {
  border: 1px solid var(--ob-border);
  background: #18181b;
  border-radius: 6px;
  width: 48px;
  height: 32px;
  display: inline-block;
}

.ob-mascot-celebrate {
  border-radius: 22px;
  width: 90px;
  height: 90px;
  animation: .6s cubic-bezier(.34, 1.56, .64, 1) .2s both obScaleBounce;
}

.ob-ready-step h2 {
  letter-spacing: -.02em;
  color: var(--ob-text);
  margin-top: 20px;
  font-size: 28px;
  font-weight: 700;
}

.ob-suggestions {
  flex-direction: column;
  gap: 8px;
  width: 100%;
  max-width: 420px;
  margin-top: 24px;
  display: flex;
}

.ob-suggestion-card {
  background: var(--ob-card);
  border: 1px solid var(--ob-border);
  cursor: pointer;
  text-align: left;
  color: var(--ob-muted);
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  padding: 14px 18px;
  font-family: inherit;
  font-size: 14px;
  transition: all .15s;
  display: flex;
}

.ob-suggestion-card:hover {
  border-color: var(--ob-purple);
  color: var(--ob-text);
  background: #9333ea0f;
}

.ob-suggestion-arrow {
  color: var(--ob-subtle);
  font-size: 16px;
}

.ob-suggestion-card:hover .ob-suggestion-arrow {
  color: var(--ob-purple);
}

@media (min-width: 640px) {
  .ob-interests-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .ob-welcome-title {
    font-size: 42px;
  }
}

@media (max-width: 380px) {
  .ob-step-content {
    padding: 16px;
  }

  .ob-welcome-title {
    font-size: 28px;
  }

  .ob-interests-step h2, .ob-ready-step h2 {
    font-size: 22px;
  }

  .ob-interest-card {
    padding: 10px 12px;
    font-size: 13px;
  }

  .ob-continue-btn, .ob-start-btn {
    padding: 12px 36px;
  }

  .ob-speech-bubble {
    padding: 14px 18px;
    font-size: 14px;
  }

  .ob-tour-visual {
    height: 120px;
  }
}

.orch-msg {
  border-left: 3px solid var(--torki-accent);
  background: var(--bg-card);
  border-radius: 0 12px 12px 0;
  margin: 10px 0;
  padding: 14px 16px;
}

.orch-msg-header {
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  display: flex;
}

.orch-msg-avatar {
  border: 2px solid #ffffff1a;
  border-radius: 50%;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  overflow: hidden;
}

.orch-msg-avatar img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.orch-msg-name {
  font-size: 14px;
  font-weight: 600;
}

.orch-msg-role {
  color: var(--text-muted);
  margin-left: 6px;
  font-size: 12px;
}

.orch-msg-step {
  color: var(--text-subtle);
  background: var(--bg-hover);
  border-radius: 10px;
  margin-left: auto;
  padding: 2px 8px;
  font-size: 11px;
}

.orch-msg-body {
  font-size: 14px;
  line-height: 1.6;
}

.orch-msg-working {
  color: var(--text-muted);
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  font-style: italic;
  display: flex;
}

.orch-msg-error {
  color: #ef4444;
  font-style: italic;
}

.orch-pulse {
  border-radius: 50%;
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  animation: 1.2s infinite orchPulse;
}

@keyframes orchPulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .4;
    transform: scale(.8);
  }
}

.orch-progress {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
  margin: 10px 0;
  padding: 14px 16px;
}

.orch-progress-header {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  display: flex;
}

.orch-progress-label {
  color: var(--text-main);
  font-size: 13px;
  font-weight: 600;
}

.orch-progress-counter {
  color: var(--text-muted);
  font-size: 12px;
}

.orch-progress-bar {
  border-radius: 3px;
  gap: 3px;
  height: 6px;
  margin-bottom: 12px;
  display: flex;
  overflow: hidden;
}

.orch-progress-segment {
  border-radius: 3px;
  transition: all .3s;
}

.orch-segment-active {
  animation: 1.5s infinite orchSegPulse;
}

@keyframes orchSegPulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

.orch-progress-pills {
  flex-wrap: wrap;
  gap: 6px;
  display: flex;
}

.orch-pill {
  background: var(--bg-hover);
  color: var(--text-muted);
  border-radius: 20px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px 4px 4px;
  font-size: 12px;
  display: flex;
  position: relative;
}

.orch-pill-active {
  background: var(--agent-color);
}

@supports (color: color-mix(in lab, red, red)) {
  .orch-pill-active {
    background: color-mix(in srgb, var(--agent-color) 15%, transparent);
  }
}

.orch-pill-active {
  color: var(--text-main);
}

.orch-pill-done {
  color: var(--text-main);
}

.orch-pill-avatar {
  object-fit: cover;
  border-radius: 50%;
  width: 22px;
  height: 22px;
}

.orch-pill-name {
  font-weight: 500;
}

.orch-pill-pulse {
  border-radius: 50%;
  width: 6px;
  height: 6px;
  animation: 1.2s infinite orchPulse;
}

.orch-approval {
  background: var(--bg-card);
  border: 1px solid #a855f740;
  border-radius: 12px;
  margin: 10px 0;
  padding: 16px;
}

.orch-approval-header {
  color: var(--text-main);
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.orch-approval-count {
  color: var(--text-muted);
  margin-left: auto;
  font-size: 12px;
  font-weight: 400;
}

.orch-approval-steps {
  flex-direction: column;
  gap: 8px;
  margin-bottom: 14px;
  display: flex;
}

.orch-approval-step {
  background: var(--bg-hover);
  border-radius: 8px;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 10px;
  display: flex;
}

.orch-approval-num {
  background: var(--torki-accent);
  color: #fff;
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.orch-approval-avatar {
  object-fit: cover;
  border-radius: 50%;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.orch-approval-detail {
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.orch-approval-agent {
  font-size: 13px;
  font-weight: 600;
}

.orch-approval-action {
  color: var(--text-main);
  font-size: 13px;
  line-height: 1.4;
}

.orch-approval-deliverable {
  color: var(--text-muted);
  align-items: center;
  gap: 4px;
  font-size: 12px;
  display: flex;
}

.orch-approval-actions {
  justify-content: flex-end;
  gap: 8px;
  display: flex;
}

.orch-btn-approve {
  background: var(--torki-accent);
  color: #fff;
  cursor: pointer;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 6px;
  padding: 8px 18px;
  font-size: 13px;
  font-weight: 600;
  transition: all .15s;
  display: flex;
}

.orch-btn-approve:hover {
  filter: brightness(1.15);
  transform: translateY(-1px);
}

.orch-review {
  background: var(--bg-card);
  border: 1px solid #eab30840;
  border-radius: 12px;
  margin: 10px 0;
  padding: 14px 16px;
}

.orch-review-header {
  color: var(--text-main);
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
}

.orch-review-score {
  margin-left: auto;
  font-size: 16px;
  font-weight: 700;
}

.orch-result {
  background: var(--bg-card);
  border: 1px solid #22c55e40;
  border-radius: 12px;
  margin: 10px 0;
  padding: 16px;
}

.orch-result-header {
  color: var(--text-main);
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: 15px;
  font-weight: 600;
  display: flex;
}

.orch-result-id {
  color: var(--text-subtle);
  margin-left: auto;
  font-family: monospace;
  font-size: 11px;
  font-weight: 400;
}

.orch-result-agents {
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
  display: flex;
}

.orch-result-agent {
  border: 1px solid #ffffff14;
  border-radius: 20px;
  align-items: center;
  gap: 6px;
  padding: 4px 10px 4px 4px;
  font-size: 12px;
  font-weight: 500;
  display: flex;
}

.orch-result-agent img {
  object-fit: cover;
  border-radius: 50%;
  width: 20px;
  height: 20px;
}

.orch-result-content {
  border-top: 1px solid var(--border-subtle);
  max-height: 500px;
  padding-top: 12px;
  overflow-y: auto;
}

.light-mode .orch-msg {
  background: var(--bg-card);
}

.light-mode .orch-msg-avatar {
  border-color: #0000001a;
}

.light-mode .orch-approval {
  border-color: #a855f733;
}

.light-mode .orch-review {
  border-color: #eab30833;
}

.light-mode .orch-result {
  border-color: #22c55e33;
}

.light-mode .orch-result-agent {
  border-color: #00000014;
}

.voice-screen {
  will-change: transform, opacity;
  animation: .4s ease-out voiceScreenIn;
}

.voice-top-btn {
  color: #e4e4e7;
  cursor: pointer;
  background: #ffffff14;
  border: none;
  border-radius: 10px;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 14px;
  transition: background .15s;
  display: flex;
}

.voice-top-btn:hover {
  background: #ffffff24;
}

.voice-arrow {
  color: #a1a1aa;
  cursor: pointer;
  z-index: 10;
  background: #ffffff0f;
  border: 1px solid #ffffff1a;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  transition: background .15s;
  display: flex;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.voice-arrow:hover {
  color: #e4e4e7;
  background: #ffffff1f;
}

.voice-start-btn {
  color: #fff;
  cursor: pointer;
  z-index: 5;
  border: 1.5px solid;
  border-radius: 16px;
  align-items: center;
  gap: 10px;
  padding: 14px 48px;
  font-size: 16px;
  font-weight: 600;
  transition: all .2s;
  display: flex;
}

.voice-start-btn:hover {
  filter: brightness(1.2);
  transform: scale(1.03);
}

.voice-bottom-btn {
  cursor: pointer;
  background: #ffffff0f;
  border: 1px solid #ffffff1a;
  border-radius: 14px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 12px 24px;
  font-size: 12px;
  transition: all .15s;
  display: flex;
}

.voice-bottom-btn:hover {
  background: #ffffff1a;
}

.voice-end-btn {
  color: #f87171 !important;
  background: #ef44441a !important;
  border-color: #ef444440 !important;
}

.voice-end-btn:hover {
  background: #ef44442e !important;
}

.voice-ring-animate {
  animation: 2s ease-in-out infinite voicePulse;
}

.voice-ring-delay-1 {
  animation-delay: .3s;
}

.voice-ring-delay-2 {
  animation-delay: .6s;
}

.vo-overlay {
  z-index: 1000001;
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
  background: #000000f7;
  justify-content: center;
  align-items: center;
  transition: opacity .5s ease-out;
  display: flex;
  position: fixed;
  inset: 0;
}

.vo-overlay.vo-fade-out {
  opacity: 0;
  pointer-events: none;
}

.vo-skip {
  z-index: 10;
  color: #fff6;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  padding: 8px 14px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  transition: color .2s, background .2s;
  display: flex;
  position: fixed;
  top: 24px;
  right: 24px;
}

.vo-skip:hover {
  color: #fff;
  background: #ffffff0d;
}

.vo-phase {
  opacity: 0;
  visibility: hidden;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: opacity .4s, visibility .4s, transform .4s;
  display: flex;
  position: absolute;
  inset: 0;
  transform: translateY(20px);
}

.vo-phase.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.vo-logo-container {
  opacity: 0;
  margin-bottom: 40px;
  transition: opacity .8s ease-out, transform .8s ease-out;
  transform: scale(.8);
}

.vo-logo-container.animate-in {
  opacity: 1;
  transform: scale(1);
}

.vo-logo-container.fade-away {
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transform: scale(.9);
}

.vo-intro-avatar {
  opacity: 0;
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 160px;
  transition: opacity .5s ease-out .2s, transform .5s ease-out .2s;
  display: flex;
  position: relative;
  transform: scale(.85);
}

.vo-intro-avatar.animate-in {
  opacity: 1;
  transform: scale(1);
}

.vo-avatar-glow {
  opacity: .2;
  filter: blur(25px);
  background: radial-gradient(circle, #ff6b3566 0%, #0000 70%);
  animation: 3s ease-in-out infinite voGlowPulse;
  position: absolute;
  inset: -30px;
}

@keyframes voGlowPulse {
  0%, 100% {
    opacity: .15;
    transform: scale(1);
  }

  50% {
    opacity: .3;
    transform: scale(1.05);
  }
}

.vo-intro-title {
  color: #fff;
  opacity: 0;
  margin: 24px 0 0;
  font-size: 28px;
  font-weight: 700;
  transition: opacity .5s ease-out, transform .5s ease-out;
  transform: translateY(20px);
}

.vo-intro-title.animate-in {
  opacity: 1;
  transform: translateY(0);
}

.vo-intro-subtitle {
  color: #ffffff80;
  opacity: 0;
  margin: 8px 0 0;
  font-size: 16px;
  transition: opacity .5s ease-out, transform .5s ease-out;
  transform: translateY(20px);
}

.vo-intro-subtitle.animate-in {
  opacity: 1;
  transform: translateY(0);
}

.vo-audio-indicator {
  opacity: 0;
  align-items: flex-end;
  gap: 4px;
  height: 32px;
  margin-top: 24px;
  transition: opacity .3s;
  display: flex;
}

.vo-audio-indicator.playing {
  opacity: 1;
}

.vo-audio-bar {
  background: linear-gradient(to top, #ffffff80, #ffffffe6);
  border-radius: 2px;
  width: 4px;
  animation: .6s ease-in-out infinite voAudioBar;
}

.vo-audio-bar:first-child {
  height: 8px;
  animation-delay: 0s;
}

.vo-audio-bar:nth-child(2) {
  height: 16px;
  animation-delay: .1s;
}

.vo-audio-bar:nth-child(3) {
  height: 24px;
  animation-delay: .2s;
}

.vo-audio-bar:nth-child(4) {
  height: 16px;
  animation-delay: .3s;
}

.vo-audio-bar:nth-child(5) {
  height: 8px;
  animation-delay: .4s;
}

@keyframes voAudioBar {
  0%, 100% {
    transform: scaleY(1);
  }

  50% {
    transform: scaleY(1.3);
  }
}

.vo-permission-card {
  text-align: center;
  background: #ffffff08;
  border: 1px solid #ffffff14;
  border-radius: 24px;
  padding: 48px 40px;
  animation: .5s ease-out .2s both voSlideUp;
}

@keyframes voSlideUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.vo-mic-icon-wrap {
  background: #ffffff0f;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 72px;
  height: 72px;
  margin: 0 auto;
  display: flex;
  position: relative;
}

.vo-mic-pulse {
  border: 2px solid #fff9;
  border-radius: 50%;
  animation: 2s ease-out infinite voMicPulse;
  position: absolute;
  inset: 0;
}

@keyframes voMicPulse {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}

.vo-allow-btn {
  color: #000;
  cursor: pointer;
  background: #fff;
  border: none;
  border-radius: 12px;
  padding: 12px 32px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 600;
  transition: transform .15s;
}

.vo-allow-btn:hover {
  transform: scale(1.03);
}

.vo-allow-btn:active {
  transform: scale(.97);
}

.vo-defer-btn {
  color: #fff9;
  cursor: pointer;
  background: none;
  border: 1px solid #ffffff26;
  border-radius: 12px;
  padding: 12px 32px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 500;
  transition: all .15s;
}

.vo-defer-btn:hover {
  color: #fff;
  border-color: #ffffff4d;
}

.vo-char-card {
  text-align: center;
  background: #ffffff08;
  border: 1px solid #ffffff14;
  border-radius: 24px;
  min-width: 320px;
  padding: 48px 40px;
  transition: opacity .3s, transform .3s;
  position: relative;
  overflow: hidden;
}

.vo-char-card.transitioning {
  opacity: 0;
  transform: scale(.95);
}

.vo-card-glow {
  background: radial-gradient(circle at 50% 30%, var(--glow-color) 0%, transparent 70%);
  position: absolute;
  inset: 0;
}

@supports (color: color-mix(in lab, red, red)) {
  .vo-card-glow {
    background: radial-gradient(circle at 50% 30%, color-mix(in srgb, var(--glow-color) 12%, transparent) 0%, transparent 70%);
  }
}

.vo-card-glow {
  z-index: 0;
  pointer-events: none;
}

.vo-card-avatar-wrap {
  z-index: 1;
  width: 100px;
  height: 100px;
  margin: 0 auto 16px;
  position: relative;
}

.vo-card-avatar {
  object-fit: contain;
  z-index: 1;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  position: relative;
}

.vo-speaking-ring {
  border: 2px solid #fff3;
  border-radius: 50%;
  transition: border-color .3s;
  position: absolute;
  inset: -6px;
}

.vo-speaking-ring.active {
  animation: .6s ease-in-out infinite voSpeakingPulse;
}

@keyframes voSpeakingPulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .5;
    transform: scale(1.08);
  }
}

.vo-card-name {
  color: #fff;
  z-index: 1;
  font-size: 22px;
  font-weight: 700;
  position: relative;
}

.vo-card-desc {
  color: #ffffff80;
  z-index: 1;
  margin-top: 4px;
  font-size: 14px;
  position: relative;
}

.vo-card-specialty {
  color: #ffffff59;
  z-index: 1;
  margin-top: 12px;
  font-size: 13px;
  font-style: italic;
  position: relative;
}

.vo-card-speaker {
  color: #fff6;
  z-index: 1;
  margin-top: 12px;
  position: relative;
}

.vo-nav-arrow {
  color: #ffffff80;
  cursor: pointer;
  background: #ffffff0d;
  border: 1px solid #ffffff14;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  font-family: inherit;
  transition: all .2s;
  display: flex;
}

.vo-nav-arrow:hover {
  color: #fff;
  background: #ffffff1a;
  transform: scale(1.05);
}

.vo-start-btn {
  background: var(--btn-primary-bg, #fff);
  color: var(--btn-primary-text, #000);
  cursor: pointer;
  border: none;
  border-radius: 12px;
  margin-top: 32px;
  padding: 14px 48px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  transition: transform .15s;
}

.vo-start-btn:hover {
  transform: scale(1.03);
}

.vo-start-btn:active {
  transform: scale(.97);
}

@media (max-width: 480px) {
  .vo-char-card {
    min-width: auto;
    margin: 0 16px;
    padding: 32px 24px;
  }

  .vo-permission-card {
    margin: 0 16px;
    padding: 32px 24px;
  }

  .vo-intro-title {
    font-size: 24px;
  }

  .vo-intro-avatar {
    width: 120px;
    height: 120px;
  }

  .vo-intro-avatar img {
    width: 120px !important;
    height: 120px !important;
  }
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("/fonts/inter/inter-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Inter;
  font-style: normal;
  font-weight: 300 900;
  font-display: swap;
  src: url("/fonts/inter/inter-latin.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/jetbrains-mono/jetbrains-mono-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: JetBrains Mono;
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url("/fonts/jetbrains-mono/jetbrains-mono-latin.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/fonts/space-grotesk/space-grotesk-latin-ext.woff2") format("woff2");
  unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: Space Grotesk;
  font-style: normal;
  font-weight: 500 700;
  font-display: swap;
  src: url("/fonts/space-grotesk/space-grotesk-latin.woff2") format("woff2");
  unicode-range: U+??, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --bg-page: #f9fafb;
  --bg-body: #fff;
  --bg-card: #fff;
  --bg-hover: #f3f4f6;
  --bg-input: #fff;
  --bg-soft: #f4f4f5;
  --text-main: #111827;
  --text-muted: #1f2937;
  --text-subtle: #4b5563;
  --border-subtle: #e5e7eb;
  --border-hover: #d1d5db;
  --border-light: #0000001a;
  --torki-purple: #9333ea;
  --torki-purple-hover: #7e22ce;
  --torki-purple-glow: #9333ea26;
  --torki-accent: #a855f7;
  --color-success: #22c55e;
  --color-error: #ef4444;
  --color-warning: #fbbf24;
  --color-info: #3b82f6;
  --sidebar-width: 280px;
  --chat-max-width: 768px;
  --input-border-radius: 26px;
  --card-border-radius: 14px;
}

.dark, [data-theme="dark"] {
  --bg-page: #000;
  --bg-body: #000;
  --bg-card: #000;
  --bg-hover: #27272a;
  --bg-input: #000;
  --bg-soft: #18181b;
  --text-main: #f4f4f5;
  --text-muted: #a1a1aa;
  --text-subtle: #71717a;
  --border-subtle: #27272a;
  --border-hover: #52525b;
  --border-light: #ffffff1a;
  --torki-purple-glow: #9333ea26;
  --btn-primary-bg: #fff;
  --btn-primary-text: #000;
}

html {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light dark;
}

@media (prefers-color-scheme: dark) {
  html {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
  }
}

html:not(.dark):not([data-theme="dark"]) {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
}

.dark, [data-theme="dark"] {
  --lightningcss-light: ;
  --lightningcss-dark: initial;
  color-scheme: dark;
}

body {
  background-color: var(--bg-page);
  color: var(--text-main);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

::-webkit-scrollbar {
  display: none;
}

* {
  scrollbar-width: none;
}

.custom-scrollbar {
  scrollbar-width: none;
  scrollbar-color: var(--border-subtle) transparent;
}

.theme-bg-body {
  background-color: var(--bg-body);
}

.theme-bg-card {
  background-color: var(--bg-card);
}

.theme-bg-hover {
  background-color: var(--bg-hover);
}

.theme-bg-input {
  background-color: var(--bg-input);
}

.theme-text-main {
  color: var(--text-main);
}

.theme-text-muted {
  color: var(--text-muted);
}

.theme-text-subtle {
  color: var(--text-subtle);
}

.theme-border {
  border-color: var(--border-subtle);
}

.glass-card {
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid var(--border-subtle);
  background: #0009;
}

.torki-input-wrapper {
  border-radius: var(--input-border-radius);
  background: var(--bg-card);
  z-index: 50;
  border: 2px solid #0000;
  transition: all .3s ease-in-out;
  box-shadow: 0 0 15px #a855f726;
}

.torki-input-wrapper:hover, .torki-input-wrapper:focus-within {
  transform: translateY(-1px);
  box-shadow: 0 0 30px #a855f74d, inset 0 0 10px #a855f71a;
}

.mode-btn {
  border: 1px solid var(--border-subtle);
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border-radius: 9999px;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.mode-btn:hover {
  background: var(--bg-hover);
  border-color: var(--border-hover);
  color: var(--text-main);
}

.mode-dropdown {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  z-index: 100;
  border-radius: 16px;
  width: 260px;
  padding: 8px;
  position: absolute;
  bottom: calc(100% + 8px);
  right: 0;
  box-shadow: 0 4px 24px #00000080;
}

.mode-header {
  letter-spacing: .1em;
  color: var(--text-subtle);
  padding: 8px 12px 6px;
  font-size: 10px;
  font-weight: 600;
}

.mode-item {
  width: 100%;
  color: var(--text-main);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 10px;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  transition: background .15s;
  display: flex;
}

.mode-item:hover {
  background: var(--bg-hover);
}

.mode-item.active {
  background: #9333ea1a;
}

.mode-item-content {
  align-items: center;
  gap: 10px;
  display: flex;
}

.mode-icon {
  opacity: .7;
  font-size: 16px;
}

.mode-title {
  font-size: 14px;
  font-weight: 500;
}

.mode-desc {
  color: var(--text-subtle);
  margin-left: 4px;
  font-size: 12px;
}

.thinking-process {
  background: none;
  border: none;
  border-radius: 0;
  max-width: 100%;
  margin-bottom: 8px;
}

.thinking-header {
  cursor: pointer;
  color: var(--text-muted);
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 14px;
  font-weight: 500;
  display: flex;
}

.thinking-header:hover {
  color: var(--text-main);
}

.thinking-body {
  color: var(--text-subtle);
  border-left: 2px solid var(--border-subtle);
  background: none;
  margin-left: 14px;
  padding: 12px 16px;
  font-size: .9rem;
  line-height: 1.6;
}

.thinking-body p {
  margin-bottom: 1em;
}

.thinking-body p:last-child {
  margin-bottom: 0;
}

.thinking-process.collapsed .thinking-body {
  display: none !important;
}

.welcome-container {
  text-align: center;
}

.welcome-title-row {
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-bottom: 10px;
  display: flex;
}

.welcome-icon {
  border-radius: 50%;
  width: 42px;
  height: 42px;
}

.welcome-gradient-text {
  background: linear-gradient(135deg, #fff 0%, #a1a1aa 100%);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  font-size: clamp(24px, 4vw, 36px);
  font-weight: 700;
}

.welcome-subtext {
  color: var(--text-subtle);
  font-size: 16px;
}

.shadow-toggle-btn {
  border: 1px solid var(--border-subtle);
  color: var(--text-subtle);
  cursor: pointer;
  background: none;
  border-radius: 9999px;
  align-items: center;
  gap: 4px;
  padding: 5px 10px;
  font-size: 12px;
  font-weight: 500;
  transition: all .2s;
  display: flex;
}

.shadow-toggle-btn:hover {
  border-color: var(--border-hover);
  color: var(--text-muted);
}

.shadow-toggle-btn.active {
  border-color: var(--torki-purple);
  color: var(--torki-purple);
  background: #9333ea14;
}

.input-plus-popup {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  z-index: 100;
  border-radius: 14px;
  min-width: 220px;
  padding: 6px;
  box-shadow: 0 4px 24px #00000080;
}

.popup-item {
  width: 100%;
  color: var(--text-main);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  font-size: 14px;
  transition: background .15s;
  display: flex;
}

.popup-item:hover {
  background: var(--bg-hover);
}

.popup-item i {
  color: var(--text-subtle);
  font-size: 18px;
}

.popup-divider {
  background: var(--border-subtle);
  height: 1px;
  margin: 4px 8px;
}

.code-block-wrapper {
  border-radius: 12px;
  margin: 12px 0;
  overflow: hidden;
}

.code-block-header {
  background: #1e1e1e;
  justify-content: space-between;
  align-items: center;
  padding: 10px 16px;
  display: flex;
}

.code-block-language {
  color: #a1a1aa;
  font-size: 13px;
  font-weight: 600;
}

.code-copy-btn {
  color: #a1a1aa;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 6px;
  padding: 4px 8px;
  transition: all .15s;
}

.code-copy-btn:hover {
  color: #fff;
  background: #ffffff1a;
}

.markdown-content table {
  border-collapse: collapse;
  width: 100%;
  margin: 12px 0;
}

.markdown-content th, .markdown-content td {
  border: 1px solid var(--border-subtle);
  text-align: left;
  padding: 8px 12px;
}

.markdown-content th {
  background: var(--bg-soft);
  font-weight: 600;
}

@keyframes thinking-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

.thinking-pulse {
  animation: 1.5s ease-in-out infinite thinking-pulse;
}

@keyframes fade-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in {
  animation: .3s ease-out fade-in;
}

::selection {
  background: var(--torki-purple-glow);
  color: var(--text-main);
}

.torki-atmosphere {
  position: relative;
}

.torki-atmosphere:before {
  content: "";
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(at 50% 0, #9333ea0a 0%, #0000 70%);
  position: absolute;
  inset: 0;
}

.private-ghost-icon {
  color: var(--text-subtle);
  cursor: pointer;
  transition: color .2s;
}

.private-ghost-icon:hover {
  color: var(--text-muted);
}

.stop-active {
  animation: 1.5s ease-in-out infinite stop-pulse;
}

@keyframes stop-pulse {
  0%, 100% {
    box-shadow: 0 0 #ffffff4d;
  }

  50% {
    box-shadow: 0 0 0 6px #fff0;
  }
}

@keyframes slideInRight {
  from {
    transform: translateX(100%);
  }

  to {
    transform: translateX(0);
  }
}

body.private-mode-active #torki-sidebar, body.private-mode-active #torki-sidebar-wrapper, body.private-mode-active .mobile-sidebar-toggle {
  display: none !important;
}

@media (min-width: 768px) {
  body.sources-open main {
    transition: margin-right .3s cubic-bezier(.4, 0, .2, 1);
    margin-right: 400px !important;
  }

  body.sources-open.sidebar-expanded main {
    margin-right: 400px !important;
  }

  body.canvas-open main {
    transition: margin-right .3s cubic-bezier(.4, 0, .2, 1);
    margin-right: var(--canvas-width, 55vw) !important;
  }

  body.canvas-open.sidebar-expanded #canvas-panel {
    width: calc(var(--canvas-width, 55vw) - 200px) !important;
  }

  body.canvas-open.sidebar-expanded main {
    margin-right: calc(var(--canvas-width, 55vw) - 200px) !important;
  }
}

@keyframes voicePulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .7;
    transform: scale(1.04);
  }
}

@keyframes avatarBreathe {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.02);
  }
}

@keyframes avatarListening {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.03);
  }
}

@keyframes avatarSpeaking {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.035);
  }
}

@keyframes voiceScreenIn {
  from {
    opacity: 0;
    transform: scale(1.03);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

.voice-screen {
  animation: .4s ease-out voiceScreenIn;
}

.torki-logo-animated {
  width: 100%;
  height: 100%;
  position: relative;
}

.torki-logo-animated img {
  object-fit: contain;
  border-radius: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.torki-logo-animated .logo-static {
  z-index: 1;
  transition: opacity .3s;
}

.torki-logo-animated .logo-bg {
  z-index: 1;
  opacity: 0;
}

.torki-logo-animated .logo-front {
  z-index: 2;
  opacity: 0;
  transition: opacity .3s;
}

.torki-logo-animated.is-animating .logo-static {
  opacity: 0;
}

.torki-logo-animated.is-animating .logo-front {
  opacity: 1;
}

.torki-logo-animated.is-animating .logo-bg {
  animation: 2.5s ease-in-out infinite torkiLogoBreath;
}

@keyframes torkiLogoBreath {
  0% {
    opacity: .15;
  }

  50% {
    opacity: .9;
  }

  100% {
    opacity: .15;
  }
}

@keyframes pulse-glow {
  0% {
    box-shadow: 0 0 #a855f766;
  }

  70% {
    box-shadow: 0 0 0 10px #a855f700;
  }

  100% {
    box-shadow: 0 0 #a855f700;
  }
}

@keyframes agentSlideIn {
  from {
    opacity: 0;
    transform: translateX(-10px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.avatar-glow {
  border-radius: 50%;
  animation: 2s infinite pulse-glow;
}

@keyframes tt-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.vision-input-capsule {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 20px;
  transition: border-color .3s, box-shadow .3s;
  overflow: visible;
  box-shadow: 0 8px 32px #0006;
}

.light-mode .vision-input-capsule, [data-theme="light"] .vision-input-capsule {
  box-shadow: 0 4px 20px #00000014;
}

.vision-input-capsule:hover, .vision-input-capsule:focus-within {
  border-color: #8b5cf666;
  box-shadow: 0 0 24px #8b5cf626, 0 8px 32px #0006;
}

.vision-control-btn {
  width: 32px;
  height: 32px;
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 8px;
  justify-content: center;
  align-items: center;
  transition: all .2s;
  display: flex;
}

.vision-control-btn:hover {
  color: var(--text-main);
  background: var(--bg-hover);
}

.vision-control-btn.trigger-active, .trigger-active {
  color: #c084fc !important;
  background: #c084fc1a !important;
}

.vision-popover {
  background: var(--bg-card);
  border: 1px solid var(--border-subtle);
  animation: .2s cubic-bezier(.16, 1, .3, 1) visionPopoverIn;
}

@keyframes visionPopoverIn {
  from {
    opacity: 0;
    transform: scale(.95)translateY(8px);
  }

  to {
    opacity: 1;
    transform: scale(1)translateY(0);
  }
}

.vision-img2img-preview {
  animation: .3s ease-out fade-in;
}

.vision-img2img-preview img {
  border: 1px solid var(--border-subtle);
  border-radius: 12px;
}

.vision-strength-btn {
  border: 1px solid var(--border-subtle);
  color: var(--text-muted);
  cursor: pointer;
  background: none;
  border-radius: 9999px;
  padding: 6px 14px;
  font-size: 11px;
  font-weight: 500;
  transition: all .15s;
}

.vision-strength-btn:hover {
  border-color: var(--border-hover);
  color: var(--text-main);
}

.vision-strength-btn.active {
  background: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  border-color: var(--btn-primary-bg);
  font-weight: 600;
}

.stars {
  pointer-events: none;
  z-index: 1;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.star {
  opacity: 0;
  background: #fff;
  border-radius: 50%;
  width: 2px;
  height: 2px;
  animation: 4s infinite twinkle;
  position: absolute;
}

@keyframes twinkle {
  0% {
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes voiceGlowPulse {
  0%, 100% {
    opacity: .3;
  }

  50% {
    opacity: .85;
  }
}

.voice-glow-overlay {
  animation: 2s ease-in-out infinite voiceGlowPulse;
}

.voice-listening-dot {
  border-radius: 50%;
  width: 8px;
  height: 8px;
  animation: 1.5s ease-in-out infinite voiceDotPulse;
  display: inline-block;
}

@keyframes voiceDotPulse {
  0%, 100% {
    opacity: .3;
    transform: scale(.8);
  }

  50% {
    opacity: 1;
    transform: scale(1.2);
  }
}

.conv-builder-resizer {
  cursor: col-resize;
  border-left: 1px solid var(--border-subtle, #27272a);
  background: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 5px;
  transition: background .15s;
  display: flex;
}

.conv-builder-resizer:hover, .conv-builder-resizer:active {
  background: #9333ea26;
}

.conv-builder-resizer-grip {
  background: var(--border-subtle, #27272a);
  border-radius: 2px;
  width: 2px;
  height: 28px;
  transition: background .15s;
}

.conv-builder-resizer:hover .conv-builder-resizer-grip {
  background: var(--torki-purple, #9333ea);
}

@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-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@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-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@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: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@keyframes ping {
  75%, 100% {
    opacity: 0;
    transform: scale(2);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}

@keyframes bounce {
  0%, 100% {
    animation-timing-function: cubic-bezier(.8, 0, 1, 1);
    transform: translateY(-25%);
  }

  50% {
    animation-timing-function: cubic-bezier(0, 0, .2, 1);
    transform: none;
  }
}

/*# sourceMappingURL=frontend_src_app_globals_0sxv6w3.css.map*/