/*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: block))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --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-ease: initial;
    }
  }
}

@layer theme {
  :root, :host {
    --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
      "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
      "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-black: #000;
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --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);
  }
}

@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, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }

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

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

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

  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    -webkit-text-decoration: inherit;
    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:where(:not(iframe)) {
    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;
  }

  code {
    background-color: var(--color-base-200);
    border-radius: .25rem;
    padding: .1rem .35rem;
    font-family: ui-monospace, SFMono-Regular, Fira Code, monospace;
    font-size: .9em;
  }

  :where(:root), :root:has(input.theme-controller[value="light"]:checked), [data-theme="light"] {
    color-scheme: light;
    --color-base-100: oklch(100% 0 0);
    --color-base-200: oklch(98% 0 0);
    --color-base-300: oklch(95% 0 0);
    --color-base-content: oklch(21% .006 285.885);
    --color-primary: oklch(45% .24 277.023);
    --color-primary-content: oklch(93% .034 272.788);
    --color-secondary: oklch(65% .241 354.308);
    --color-secondary-content: oklch(94% .028 342.258);
    --color-accent: oklch(77% .152 181.912);
    --color-accent-content: oklch(38% .063 188.416);
    --color-neutral: oklch(14% .005 285.823);
    --color-neutral-content: oklch(92% .004 286.32);
    --color-info: oklch(74% .16 232.661);
    --color-info-content: oklch(29% .066 243.157);
    --color-success: oklch(76% .177 163.223);
    --color-success-content: oklch(37% .077 168.94);
    --color-warning: oklch(82% .189 84.429);
    --color-warning-content: oklch(41% .112 45.904);
    --color-error: oklch(71% .194 13.428);
    --color-error-content: oklch(27% .105 12.094);
    --radius-selector: .5rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }

  @media (prefers-color-scheme: dark) {
    :root:not([data-theme]) {
      color-scheme: dark;
      --color-base-100: oklch(25.33% .016 252.42);
      --color-base-200: oklch(23.26% .014 253.1);
      --color-base-300: oklch(21.15% .012 254.09);
      --color-base-content: oklch(97.807% .029 256.847);
      --color-primary: oklch(58% .233 277.117);
      --color-primary-content: oklch(96% .018 272.314);
      --color-secondary: oklch(65% .241 354.308);
      --color-secondary-content: oklch(94% .028 342.258);
      --color-accent: oklch(77% .152 181.912);
      --color-accent-content: oklch(38% .063 188.416);
      --color-neutral: oklch(14% .005 285.823);
      --color-neutral-content: oklch(92% .004 286.32);
      --color-info: oklch(74% .16 232.661);
      --color-info-content: oklch(29% .066 243.157);
      --color-success: oklch(76% .177 163.223);
      --color-success-content: oklch(37% .077 168.94);
      --color-warning: oklch(82% .189 84.429);
      --color-warning-content: oklch(41% .112 45.904);
      --color-error: oklch(71% .194 13.428);
      --color-error-content: oklch(27% .105 12.094);
      --radius-selector: .5rem;
      --radius-field: .25rem;
      --radius-box: .5rem;
      --size-selector: .25rem;
      --size-field: .25rem;
      --border: 1px;
      --depth: 1;
      --noise: 0;
    }
  }

  :root:has(input.theme-controller[value="light"]:checked), [data-theme="light"] {
    color-scheme: light;
    --color-base-100: oklch(100% 0 0);
    --color-base-200: oklch(98% 0 0);
    --color-base-300: oklch(95% 0 0);
    --color-base-content: oklch(21% .006 285.885);
    --color-primary: oklch(45% .24 277.023);
    --color-primary-content: oklch(93% .034 272.788);
    --color-secondary: oklch(65% .241 354.308);
    --color-secondary-content: oklch(94% .028 342.258);
    --color-accent: oklch(77% .152 181.912);
    --color-accent-content: oklch(38% .063 188.416);
    --color-neutral: oklch(14% .005 285.823);
    --color-neutral-content: oklch(92% .004 286.32);
    --color-info: oklch(74% .16 232.661);
    --color-info-content: oklch(29% .066 243.157);
    --color-success: oklch(76% .177 163.223);
    --color-success-content: oklch(37% .077 168.94);
    --color-warning: oklch(82% .189 84.429);
    --color-warning-content: oklch(41% .112 45.904);
    --color-error: oklch(71% .194 13.428);
    --color-error-content: oklch(27% .105 12.094);
    --radius-selector: .5rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="dark"]:checked), [data-theme="dark"] {
    color-scheme: dark;
    --color-base-100: oklch(25.33% .016 252.42);
    --color-base-200: oklch(23.26% .014 253.1);
    --color-base-300: oklch(21.15% .012 254.09);
    --color-base-content: oklch(97.807% .029 256.847);
    --color-primary: oklch(58% .233 277.117);
    --color-primary-content: oklch(96% .018 272.314);
    --color-secondary: oklch(65% .241 354.308);
    --color-secondary-content: oklch(94% .028 342.258);
    --color-accent: oklch(77% .152 181.912);
    --color-accent-content: oklch(38% .063 188.416);
    --color-neutral: oklch(14% .005 285.823);
    --color-neutral-content: oklch(92% .004 286.32);
    --color-info: oklch(74% .16 232.661);
    --color-info-content: oklch(29% .066 243.157);
    --color-success: oklch(76% .177 163.223);
    --color-success-content: oklch(37% .077 168.94);
    --color-warning: oklch(82% .189 84.429);
    --color-warning-content: oklch(41% .112 45.904);
    --color-error: oklch(71% .194 13.428);
    --color-error-content: oklch(27% .105 12.094);
    --radius-selector: .5rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="cupcake"]:checked), [data-theme="cupcake"] {
    color-scheme: light;
    --color-base-100: oklch(97.788% .004 56.375);
    --color-base-200: oklch(93.982% .007 61.449);
    --color-base-300: oklch(91.586% .006 53.44);
    --color-base-content: oklch(23.574% .066 313.189);
    --color-primary: oklch(85% .138 181.071);
    --color-primary-content: oklch(43% .078 188.216);
    --color-secondary: oklch(89% .061 343.231);
    --color-secondary-content: oklch(45% .187 3.815);
    --color-accent: oklch(90% .076 70.697);
    --color-accent-content: oklch(47% .157 37.304);
    --color-neutral: oklch(27% .006 286.033);
    --color-neutral-content: oklch(92% .004 286.32);
    --color-info: oklch(68% .169 237.323);
    --color-info-content: oklch(29% .066 243.157);
    --color-success: oklch(69% .17 162.48);
    --color-success-content: oklch(26% .051 172.552);
    --color-warning: oklch(79% .184 86.047);
    --color-warning-content: oklch(28% .066 53.813);
    --color-error: oklch(64% .246 16.439);
    --color-error-content: oklch(27% .105 12.094);
    --radius-selector: 1rem;
    --radius-field: 2rem;
    --radius-box: 1rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 2px;
    --depth: 1;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="synthwave"]:checked), [data-theme="synthwave"] {
    color-scheme: dark;
    --color-base-100: oklch(15% .09 281.288);
    --color-base-200: oklch(20% .09 281.288);
    --color-base-300: oklch(25% .09 281.288);
    --color-base-content: oklch(78% .115 274.713);
    --color-primary: oklch(71% .202 349.761);
    --color-primary-content: oklch(28% .109 3.907);
    --color-secondary: oklch(82% .111 230.318);
    --color-secondary-content: oklch(29% .066 243.157);
    --color-accent: oklch(75% .183 55.934);
    --color-accent-content: oklch(26% .079 36.259);
    --color-neutral: oklch(45% .24 277.023);
    --color-neutral-content: oklch(87% .065 274.039);
    --color-info: oklch(74% .16 232.661);
    --color-info-content: oklch(29% .066 243.157);
    --color-success: oklch(77% .152 181.912);
    --color-success-content: oklch(27% .046 192.524);
    --color-warning: oklch(90% .182 98.111);
    --color-warning-content: oklch(42% .095 57.708);
    --color-error: oklch(73.7% .121 32.639);
    --color-error-content: oklch(23.501% .096 290.329);
    --radius-selector: 1rem;
    --radius-field: .5rem;
    --radius-box: 1rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="retro"]:checked), [data-theme="retro"] {
    color-scheme: light;
    --color-base-100: oklch(91.637% .034 90.515);
    --color-base-200: oklch(88.272% .049 91.774);
    --color-base-300: oklch(84.133% .065 90.856);
    --color-base-content: oklch(41% .112 45.904);
    --color-primary: oklch(80% .114 19.571);
    --color-primary-content: oklch(39% .141 25.723);
    --color-secondary: oklch(92% .084 155.995);
    --color-secondary-content: oklch(44% .119 151.328);
    --color-accent: oklch(68% .162 75.834);
    --color-accent-content: oklch(41% .112 45.904);
    --color-neutral: oklch(44% .011 73.639);
    --color-neutral-content: oklch(86% .005 56.366);
    --color-info: oklch(58% .158 241.966);
    --color-info-content: oklch(96% .059 95.617);
    --color-success: oklch(51% .096 186.391);
    --color-success-content: oklch(96% .059 95.617);
    --color-warning: oklch(64% .222 41.116);
    --color-warning-content: oklch(96% .059 95.617);
    --color-error: oklch(70% .191 22.216);
    --color-error-content: oklch(40% .123 38.172);
    --radius-selector: .25rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="dracula"]:checked), [data-theme="dracula"] {
    color-scheme: dark;
    --color-base-100: oklch(28.822% .022 277.508);
    --color-base-200: oklch(26.805% .02 277.508);
    --color-base-300: oklch(24.787% .019 277.508);
    --color-base-content: oklch(97.747% .007 106.545);
    --color-primary: oklch(75.461% .183 346.812);
    --color-primary-content: oklch(15.092% .036 346.812);
    --color-secondary: oklch(74.202% .148 301.883);
    --color-secondary-content: oklch(14.84% .029 301.883);
    --color-accent: oklch(83.392% .124 66.558);
    --color-accent-content: oklch(16.678% .024 66.558);
    --color-neutral: oklch(39.445% .032 275.524);
    --color-neutral-content: oklch(87.889% .006 275.524);
    --color-info: oklch(88.263% .093 212.846);
    --color-info-content: oklch(17.652% .018 212.846);
    --color-success: oklch(87.099% .219 148.024);
    --color-success-content: oklch(17.419% .043 148.024);
    --color-warning: oklch(95.533% .134 112.757);
    --color-warning-content: oklch(19.106% .026 112.757);
    --color-error: oklch(68.22% .206 24.43);
    --color-error-content: oklch(13.644% .041 24.43);
    --radius-selector: 1rem;
    --radius-field: .5rem;
    --radius-box: 1rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="business"]:checked), [data-theme="business"] {
    color-scheme: dark;
    --color-base-100: oklch(24.353% 0 0);
    --color-base-200: oklch(22.648% 0 0);
    --color-base-300: oklch(20.944% 0 0);
    --color-base-content: oklch(84.87% 0 0);
    --color-primary: oklch(41.703% .099 251.473);
    --color-primary-content: oklch(88.34% .019 251.473);
    --color-secondary: oklch(64.092% .027 229.389);
    --color-secondary-content: oklch(12.818% .005 229.389);
    --color-accent: oklch(67.271% .167 35.791);
    --color-accent-content: oklch(13.454% .033 35.791);
    --color-neutral: oklch(27.441% .013 253.041);
    --color-neutral-content: oklch(85.488% .002 253.041);
    --color-info: oklch(62.616% .143 240.033);
    --color-info-content: oklch(12.523% .028 240.033);
    --color-success: oklch(70.226% .094 156.596);
    --color-success-content: oklch(14.045% .018 156.596);
    --color-warning: oklch(77.482% .115 81.519);
    --color-warning-content: oklch(15.496% .023 81.519);
    --color-error: oklch(51.61% .146 29.674);
    --color-error-content: oklch(90.322% .029 29.674);
    --radius-selector: 0rem;
    --radius-field: .25rem;
    --radius-box: .25rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="nord"]:checked), [data-theme="nord"] {
    color-scheme: light;
    --color-base-100: oklch(95.127% .007 260.731);
    --color-base-200: oklch(93.299% .01 261.788);
    --color-base-300: oklch(89.925% .016 262.749);
    --color-base-content: oklch(32.437% .022 264.182);
    --color-primary: oklch(59.435% .077 254.027);
    --color-primary-content: oklch(11.887% .015 254.027);
    --color-secondary: oklch(69.651% .059 248.687);
    --color-secondary-content: oklch(13.93% .011 248.687);
    --color-accent: oklch(77.464% .062 217.469);
    --color-accent-content: oklch(15.492% .012 217.469);
    --color-neutral: oklch(45.229% .035 264.131);
    --color-neutral-content: oklch(89.925% .016 262.749);
    --color-info: oklch(69.207% .062 332.664);
    --color-info-content: oklch(13.841% .012 332.664);
    --color-success: oklch(76.827% .074 131.063);
    --color-success-content: oklch(15.365% .014 131.063);
    --color-warning: oklch(85.486% .089 84.093);
    --color-warning-content: oklch(17.097% .017 84.093);
    --color-error: oklch(60.61% .12 15.341);
    --color-error-content: oklch(12.122% .024 15.341);
    --radius-selector: 1rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root:has(input.theme-controller[value="lofi"]:checked), [data-theme="lofi"] {
    color-scheme: light;
    --color-base-100: oklch(100% 0 0);
    --color-base-200: oklch(97% 0 0);
    --color-base-300: oklch(94% 0 0);
    --color-base-content: oklch(0% 0 0);
    --color-primary: oklch(15.906% 0 0);
    --color-primary-content: oklch(100% 0 0);
    --color-secondary: oklch(21.455% .001 17.278);
    --color-secondary-content: oklch(100% 0 0);
    --color-accent: oklch(26.861% 0 0);
    --color-accent-content: oklch(100% 0 0);
    --color-neutral: oklch(0% 0 0);
    --color-neutral-content: oklch(100% 0 0);
    --color-info: oklch(79.54% .103 205.9);
    --color-info-content: oklch(15.908% .02 205.9);
    --color-success: oklch(90.13% .153 164.14);
    --color-success-content: oklch(18.026% .03 164.14);
    --color-warning: oklch(88.37% .135 79.94);
    --color-warning-content: oklch(17.674% .027 79.94);
    --color-error: oklch(78.66% .15 28.47);
    --color-error-content: oklch(15.732% .03 28.47);
    --radius-selector: 2rem;
    --radius-field: .25rem;
    --radius-box: .5rem;
    --size-selector: .25rem;
    --size-field: .25rem;
    --border: 1px;
    --depth: 0;
    --noise: 0;
  }

  :root, [data-theme] {
    background-color: var(--root-bg);
    color: var(--color-base-content);
  }

  :root {
    background-color: var(--page-scroll-bg, var(--root-bg));
  }

  :where(:root, [data-theme]) {
    --root-bg: var(--color-base-100);
  }

  :root {
    --fx-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");
    --page-has-backdrop: var(--page-scroll-lock) 1;
    --page-scroll-bg: var(--page-scroll-lock)
    var(--root-bg, #0000);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root {
      --page-scroll-bg: var(--page-scroll-lock)
    color-mix(in srgb, var(--root-bg, #0000), oklch(0% 0 0) calc(var(--page-has-backdrop, 0) * 40%));
    }
  }

  :root {
    background-image: var(--page-scroll-lock) linear-gradient(var(--root-bg, #0000), var(--root-bg, #0000));
    transition: var(--page-scroll-lock) background-color .3s ease-out;
    animation: var(--page-scroll-lock) set-page-has-scroll forwards;
    animation-timeline: var(--page-scroll-lock) scroll();
    --page-has-scroll: initial;
    scrollbar-gutter: var(--page-has-scroll) var(--page-scroll-lock) stable;
  }

  @keyframes set-page-has-scroll {
    0%, to {
      --page-has-scroll:  ;
    }
  }

  @property --radialprogress {
    syntax: "<percentage>";
    inherits: true;
    initial-value: 0%;
  }

  @property --aura-angle {
    syntax: "<angle>";
    inherits: false;
    initial-value: 0deg;
  }

  :root {
    scrollbar-color: currentColor #0000;
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root {
      scrollbar-color: color-mix(in oklch, currentColor 35%, #0000) #0000;
    }
  }

  :root {
    --page-scroll-lock: initial;
    --page-overflow: var(--page-scroll-lock) hidden;
  }

  :root:not(span) {
    overflow: var(--page-overflow);
  }
}

@layer components;

@layer utilities {
  @layer daisyui.l1.l2.l3 {
    .range {
      appearance: none;
      webkit-appearance: none;
      --range-thumb: var(--color-base-100);
      --range-thumb-size: calc(var(--size-selector, .25rem) * 6);
      --range-progress: currentColor;
      --range-fill: 1;
      --range-p: .25rem;
      --range-bg: currentColor;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .range {
        --range-bg: color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    .range {
      --range-fill-x: calc((var(--range-dir, 1) * -100cqw) - (var(--range-dir, 1) * var(--range-thumb-size) / 2));
      --range-fill-y: 0;
      --range-fill-spread: calc(100cqw * var(--range-fill));
      cursor: pointer;
      vertical-align: middle;
      --radius-selector-max: calc(var(--radius-selector) + var(--radius-selector) + var(--radius-selector));
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      width: clamp(3rem, 20rem, 100%);
      height: var(--range-thumb-size);
      background-color: #0000;
      border: none;
      overflow: hidden;
      container-type: inline-size;
    }

    [dir="rtl"] .range {
      --range-dir: -1;
    }

    .range:focus {
      outline: none;
    }

    .range:focus-visible {
      outline-offset: 2px;
      outline: 2px solid;
    }

    .range::-webkit-slider-runnable-track {
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      width: 100%;
      height: calc(var(--range-thumb-size) * .5);
    }

    @media (forced-colors: active) {
      .range::-webkit-slider-runnable-track {
        border: 1px solid;
      }

      .range::-moz-range-track {
        border: 1px solid;
      }
    }

    .range::-moz-range-track {
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      width: 100%;
      height: calc(var(--range-thumb-size) * .5);
    }

    .range::-webkit-slider-thumb {
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      background-color: var(--range-thumb);
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      appearance: none;
      webkit-appearance: none;
      color: var(--range-progress);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, var(--range-fill-x) var(--range-fill-y) 0 var(--range-fill-spread);
      position: relative;
      inset-block-start: 50%;
      transform: translateY(-50%);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .range::-webkit-slider-thumb {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, var(--range-fill-x) var(--range-fill-y) 0 var(--range-fill-spread);
      }
    }

    .range::-moz-range-thumb {
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      color: var(--range-progress);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, var(--range-fill-x) var(--range-fill-y) 0 var(--range-fill-spread);
      background-color: currentColor;
      position: relative;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .range::-moz-range-thumb {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * .1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * .1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, var(--range-fill-x) var(--range-fill-y) 0 var(--range-fill-spread);
      }
    }

    .range:disabled {
      cursor: not-allowed;
      opacity: .3;
    }

    .dock {
      z-index: 1;
      background-color: var(--color-base-100);
      color: currentColor;
      border-top: .5px solid var(--color-base-content);
      flex-direction: row;
      justify-content: space-around;
      align-items: center;
      width: 100%;
      padding: .5rem;
      display: flex;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .dock {
        border-top: .5px solid color-mix(in oklab, var(--color-base-content) 5%, #0000);
      }
    }

    .dock {
      height: 4rem;
      height: calc(4rem + env(safe-area-inset-bottom));
      padding-bottom: env(safe-area-inset-bottom);
    }

    .dock > :not(:where(script, style, template)) {
      cursor: pointer;
      border-radius: var(--radius-box);
      background-color: #0000;
      flex-direction: column;
      flex-shrink: 1;
      flex-basis: 100%;
      justify-content: center;
      align-items: center;
      gap: 1px;
      max-width: 8rem;
      height: 100%;
      margin-bottom: .5rem;
      transition: opacity .2s ease-out;
      display: flex;
      position: relative;
    }

    @media (hover: hover) {
      .dock > :not(:where(script, style, template)):hover {
        opacity: .8;
      }
    }

    :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]), :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]):hover {
      pointer-events: none;
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]), :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]):hover {
        color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
    }

    :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]), :is(.dock > :not(:where(script, style, template))[aria-disabled="true"], .dock > :not(:where(script, style, template))[disabled]):hover {
      opacity: 1;
    }

    .dock > :not(:where(script, style, template)) .dock-label {
      font-size: .6875rem;
    }

    .dock > :not(:where(script, style, template)):after {
      content: "";
      background-color: #0000;
      border-top: 3px solid #0000;
      border-radius: 2147483647px;
      width: 1.5rem;
      height: .25rem;
      transition: background-color .1s ease-out, text-color .1s ease-out, width .1s ease-out;
      position: absolute;
      bottom: .2rem;
    }

    :where(.btn) {
      width: unset;
    }

    .btn {
      --size: calc(var(--size-field, .25rem) * 10);
      --btn-p: 1rem;
      --btn-fg: var(--color-base-content);
      cursor: pointer;
      text-align: center;
      vertical-align: middle;
      outline-offset: 2px;
      webkit-user-select: none;
      -webkit-user-select: none;
      user-select: none;
      border-width: var(--border);
      touch-action: manipulation;
      --btn-bg: var(--btn-color, var(--color-base-200));
      --btn-border: var(--btn-color, var(--color-base-200));
      border-start-start-radius: var(--join-ss, var(--radius-field));
      border-start-end-radius: var(--join-se, var(--radius-field));
      border-end-end-radius: var(--join-ee, var(--radius-field));
      border-end-start-radius: var(--join-es, var(--radius-field));
      flex-wrap: nowrap;
      flex-shrink: 0;
      justify-content: center;
      align-items: center;
      gap: .375rem;
      font-weight: 600;
      transition-property: color, background-color, border-color, box-shadow, transform;
      transition-duration: .2s;
      transition-timing-function: cubic-bezier(0, 0, .2, 1);
      display: inline-flex;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn {
        --btn-border: color-mix(in oklab,
      var(--btn-color, var(--color-base-200)),
      #000 calc(var(--depth) * 5%));
      }
    }

    .btn {
      --btn-soft-bg: initial;
      --btn-shadow: 0 3px 2px -2px var(--btn-bg),
      0 4px 3px -2px var(--btn-bg);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn {
        --btn-shadow: 0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000),
      0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000);
      }
    }

    .btn {
      --btn-inset: 0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%));
      height: var(--size);
      padding-inline: var(--btn-p);
      font-size: var(--fontsize, .875rem);
      background-color: var(--btn-bg);
      color: var(--btn-fg);
      border-color: var(--btn-border);
      border-style: var(--btn-border-style, solid);
      outline-color: var(--btn-color, var(--color-base-content));
      --tw-prose-links: var(--btn-fg);
      background-image: none, var(--fx-noise);
      background-size: auto, calc(var(--noise, 0) * 100%);
      text-shadow: 0 .5px oklch(100% 0 0 / calc(var(--depth) * .15));
      box-shadow: var(--btn-inset) inset, var(--btn-shadow);
    }

    .btn:is([type="checkbox"], [type="radio"]) {
      appearance: none;
    }

    .btn:is([type="checkbox"], [type="radio"])[aria-label]:after {
      --tw-content: attr(aria-label);
      content: var(--tw-content);
    }

    .btn:where(:checked:not(.filter [type="radio"].btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
    }

    .loading {
      pointer-events: none;
      aspect-ratio: 1;
      vertical-align: middle;
      width: calc(var(--size-selector, .25rem) * 6);
      background-color: currentColor;
      flex-shrink: 0;
      display: inline-block;
      -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='8s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='6s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='6s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
      mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='8s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='6s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='6s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
      -webkit-mask-position: center;
      mask-position: center;
      -webkit-mask-size: 100%;
      mask-size: 100%;
      -webkit-mask-repeat: no-repeat;
      mask-repeat: no-repeat;
    }

    @media (forced-colors: active) {
      .loading {
        background-color: canvastext;
      }
    }

    @media (prefers-reduced-motion: no-preference) {
      .loading {
        -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
        mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
      }
    }

    .list {
      flex-direction: column;
      font-size: .875rem;
      display: flex;
    }

    .list .list-row {
      --list-grid-cols: minmax(0, auto) 1fr;
      border-radius: var(--radius-box);
      word-break: break-word;
      grid-auto-flow: column;
      grid-template-columns: var(--list-grid-cols);
      gap: 1rem;
      padding: 1rem;
      display: grid;
      position: relative;
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is(.list > :not(:last-child).list-row, .list > :not(:last-child) .list-row):after {
        border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent);
      }
    }

    :is(.list > :not(:last-child).list-row, .list > :not(:last-child) .list-row):after {
      content: "";
      border-bottom: var(--border) solid;
      inset-inline: var(--radius-box);
      border-color: var(--color-base-content);
      position: absolute;
      bottom: 0;
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is(.list > :not(:last-child).list-row, .list > :not(:last-child) .list-row):after {
        border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent);
      }
    }

    .input {
      appearance: none;
      background-color: var(--color-base-100);
      vertical-align: middle;
      white-space: nowrap;
      --size: calc(var(--size-field, .25rem) * var(--in-size-mul, 10));
      --input-color: var(--color-base-content);
      flex-shrink: 1;
      align-items: center;
      gap: .5rem;
      padding-inline: .75rem;
      display: inline-flex;
      position: relative;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input {
        --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
    }

    .input {
      cursor: text;
      width: clamp(3rem, 20rem, 100%);
      height: var(--size);
      font-size: max(var(--font-size, 0rem), var(--font-size-min, .875rem));
      touch-action: manipulation;
      border: var(--border) solid var(--input-color, #0000);
      box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
      border-start-start-radius: var(--join-ss, var(--radius-field));
      border-start-end-radius: var(--join-se, var(--radius-field));
      border-end-end-radius: var(--join-ee, var(--radius-field));
      border-end-start-radius: var(--join-es, var(--radius-field));
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
      }
    }

    .input input {
      appearance: none;
      background-color: #0000;
      border: none;
      width: 100%;
      height: 100%;
    }

    .input input::placeholder {
      color: var(--color-base-content);
      opacity: .5;
    }

    .input input:focus, .input input:focus-within {
      --tw-outline-style: none;
      outline-style: none;
    }

    @media (forced-colors: active) {
      .input input:focus, .input input:focus-within {
        outline-offset: 2px;
        outline: 2px solid #0000;
      }
    }

    .input input::-webkit-calendar-picker-indicator {
      inset-inline-end: -.15em;
    }

    .input::-webkit-inner-spin-button {
      margin-inline-end: -10px;
    }

    .input::-webkit-calendar-picker-indicator {
      inset-inline-end: .75em;
    }

    input.input {
      text-align: start;
      display: inline-flex;
      position: relative;
    }

    input.input[type="url"], input.input[type="tel"], input.input[type="email"], input.input[type="number"] {
      direction: ltr;
    }

    input.input::-webkit-datetime-edit {
      min-height: 100%;
      text-align: inherit;
      align-items: center;
      display: grid;
    }

    input.input::-webkit-date-and-time-value {
      min-height: 100%;
      text-align: inherit;
      align-items: center;
      display: grid;
    }

    input.input::-webkit-inner-spin-button {
      margin-block: calc(.25rem * var(--spin-my, -3));
    }

    input.input::-webkit-calendar-picker-indicator {
      cursor: pointer;
      width: 1em;
      height: 1em;
      position: absolute;
    }

    input.input::-webkit-color-swatch-wrapper {
      padding-block: .25rem;
    }

    .input input {
      text-align: start;
      display: inline-flex;
      position: relative;
    }

    .input input[type="url"], .input input[type="tel"], .input input[type="email"], .input input[type="number"] {
      direction: ltr;
    }

    .input input::-webkit-datetime-edit {
      min-height: 100%;
      text-align: inherit;
      align-items: center;
      display: grid;
    }

    .input input::-webkit-date-and-time-value {
      min-height: 100%;
      text-align: inherit;
      align-items: center;
      display: grid;
    }

    .input input::-webkit-inner-spin-button {
      margin-block: calc(.25rem * var(--spin-my, -3));
    }

    .input input::-webkit-calendar-picker-indicator {
      cursor: pointer;
      width: 1em;
      height: 1em;
      position: absolute;
    }

    .input input::-webkit-color-swatch-wrapper {
      padding-block: .25rem;
    }

    .input:focus {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input:focus {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .input:focus {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }

    @media (pointer: coarse) {
      @supports (-webkit-touch-callout: none) {
        .input:focus {
          --font-size: 1rem;
        }
      }
    }

    .input:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input:focus-within {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .input:focus-within {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }

    @media (pointer: coarse) {
      @supports (-webkit-touch-callout: none) {
        .input:focus-within {
          --font-size: 1rem;
        }
      }
    }

    .table {
      border-collapse: separate;
      --tw-border-spacing-x: 0px;
      --tw-border-spacing-y: 0px;
      width: 100%;
      border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
      border-radius: var(--radius-box);
      text-align: left;
      font-size: .875rem;
      position: relative;
    }

    .table:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right;
    }

    @media (hover: hover) {
      :is(:is(.table tr.row-hover), .table tr.row-hover:nth-child(2n)):hover {
        background-color: var(--color-base-200);
      }
    }

    .table :where(th, td) {
      vertical-align: middle;
      padding-block: .75rem;
      padding-inline: 1rem;
    }

    .table :where(thead, tfoot) {
      white-space: nowrap;
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .table :where(thead, tfoot) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
    }

    .table :where(thead, tfoot) {
      font-size: .875rem;
      font-weight: 600;
    }

    .table :where(tfoot tr:first-child :is(td, th)) {
      border-top: var(--border) solid var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .table :where(tfoot tr:first-child :is(td, th)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }

    .table :where(.table-pin-rows thead) {
      z-index: 1;
      position: sticky;
      top: 0;
    }

    .table :where(.table-pin-rows tfoot) {
      z-index: 1;
      position: sticky;
      bottom: 0;
    }

    .table :where(.table-pin-rows :is(thead, tfoot) tr) {
      background-color: var(--color-base-100);
    }

    .table :where(.table-pin-cols tr th) {
      background-color: var(--color-base-100);
      position: sticky;
      left: 0;
      right: 0;
    }

    .table :where(thead tr :is(td, th), tbody tr:not(:last-child) :is(td, th)) {
      border-bottom: var(--border) solid var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .table :where(thead tr :is(td, th), tbody tr:not(:last-child) :is(td, th)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }

    .steps {
      counter-reset: step;
      grid-auto-columns: 1fr;
      grid-auto-flow: column;
      display: inline-grid;
      overflow: auto hidden;
    }

    .steps .step {
      text-align: center;
      --step-bg: var(--color-base-300);
      --step-fg: var(--color-base-content);
      grid-template-rows: 40px 1fr;
      grid-template-columns: auto;
      place-items: center;
      min-width: 4rem;
      display: grid;
    }

    .steps .step:before {
      width: 100%;
      height: .5rem;
      color: var(--step-bg);
      background-color: var(--step-bg);
      content: "";
      border: 1px solid;
      grid-row-start: 1;
      grid-column-start: 1;
      margin-inline-start: -100%;
      top: 0;
    }

    .steps .step > .step-icon, .steps .step:not(:has(.step-icon)):after {
      --tw-content: counter(step);
      content: var(--tw-content);
      counter-increment: step;
      z-index: 1;
      color: var(--step-fg);
      background-color: var(--step-bg);
      border: 1px solid var(--step-bg);
      border-radius: 2147483647px;
      grid-row-start: 1;
      grid-column-start: 1;
      place-self: center;
      place-items: center;
      width: 2rem;
      height: 2rem;
      display: grid;
      position: relative;
    }

    .steps .step:first-child:before {
      --tw-content: none;
      content: var(--tw-content);
    }

    .steps .step[data-content]:after {
      --tw-content: attr(data-content);
      content: var(--tw-content);
    }

    .timeline {
      display: flex;
      position: relative;
    }

    .timeline > li {
      grid-template-rows: var(--timeline-row-start, minmax(0, 1fr)) auto var(--timeline-row-end, minmax(0, 1fr));
      grid-template-columns: var(--timeline-col-start, minmax(0, 1fr)) auto var(--timeline-col-end, minmax(0, 1fr));
      flex-shrink: 0;
      align-items: center;
      display: grid;
      position: relative;
    }

    .timeline > li > hr {
      border: none;
      width: 100%;
    }

    .timeline > li > hr:first-child {
      grid-row-start: 2;
      grid-column-start: 1;
    }

    .timeline > li > hr:last-child {
      grid-area: 2 / 3 / auto / none;
    }

    @media print, (forced-colors: active) {
      .timeline > li > hr {
        border: .1px solid var(--color-base-300);
      }
    }

    .timeline :where(hr) {
      background-color: var(--color-base-300);
      height: .25rem;
    }

    .timeline:has(.timeline-middle hr):first-child {
      border-start-start-radius: 0;
      border-start-end-radius: var(--radius-selector);
      border-end-end-radius: var(--radius-selector);
      border-end-start-radius: 0;
    }

    .timeline:has(.timeline-middle hr):last-child, .timeline:not(:has(.timeline-middle)) :first-child hr:last-child {
      border-start-start-radius: var(--radius-selector);
      border-start-end-radius: 0;
      border-end-end-radius: 0;
      border-end-start-radius: var(--radius-selector);
    }

    .timeline:not(:has(.timeline-middle)) :last-child hr:first-child {
      border-start-start-radius: 0;
      border-start-end-radius: var(--radius-selector);
      border-end-end-radius: var(--radius-selector);
      border-end-start-radius: 0;
    }

    .select {
      appearance: none;
      background-color: var(--color-base-100);
      vertical-align: middle;
      --size: calc(var(--size-field, .25rem) * var(--sl-size-mul, 10));
      --input-color: var(--color-base-content);
      flex-shrink: 1;
      align-items: center;
      gap: .375rem;
      padding-inline: .75rem 1.75rem;
      display: inline-flex;
      position: relative;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select {
        --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
    }

    .select {
      width: clamp(3rem, 20rem, 100%);
      height: var(--size);
      font-size: max(var(--font-size, 0rem), var(--font-size-min, .875rem));
      touch-action: manipulation;
      white-space: nowrap;
      text-overflow: ellipsis;
      border: var(--border) solid var(--input-color, #0000);
      box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
      background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%);
      background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);
      background-repeat: no-repeat;
      background-size: 4px 4px, 4px 4px;
      border-start-start-radius: var(--join-ss, var(--radius-field));
      border-start-end-radius: var(--join-se, var(--radius-field));
      border-end-end-radius: var(--join-ee, var(--radius-field));
      border-end-start-radius: var(--join-es, var(--radius-field));
      overflow: hidden;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
      }
    }

    [dir="rtl"] .select {
      background-position: 12px calc(1px + 50%), 16px calc(1px + 50%);
    }

    .select[multiple] {
      background-image: none;
      height: auto;
      padding-block: .75rem;
      padding-inline-end: .75rem;
      overflow: auto;
    }

    .select select {
      appearance: none;
      width: calc(100% + 2.75rem);
      height: calc(100% - calc(var(--border) * 2));
      background: inherit;
      border-radius: inherit;
      border-style: none;
      align-items: center;
      margin-inline: -.75rem -1.75rem;
      padding-inline: .75rem 1.75rem;
    }

    .select select::placeholder {
      color: var(--color-base-content);
      opacity: .5;
    }

    .select select:focus, .select select:focus-within {
      --tw-outline-style: none;
      outline-style: none;
    }

    @media (forced-colors: active) {
      .select select:focus, .select select:focus-within {
        outline-offset: 2px;
        outline: 2px solid #0000;
      }
    }

    .select select:not(:last-child) {
      background-image: none;
      margin-inline-end: -1.375rem;
    }

    .select:focus {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select:focus {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .select:focus {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }

    .select:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select:focus-within {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .select:focus-within {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }

    .select:open {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select:open {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .select:open {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      background-image: linear-gradient(135deg, #0000 50%, currentColor 50%), linear-gradient(45deg, currentColor 50%, #0000 50%);
    }

    @supports (appearance: base-select) {
      :is(.select, .select select) {
        appearance: base-select;
      }

      :is(.select, .select select)::picker(select) {
        appearance: base-select;
      }
    }

    :is(.select, .select select)::picker(select) {
      color: inherit;
      border: var(--border) solid var(--color-base-200);
      border-radius: var(--radius-box);
      background-color: inherit;
      max-height: min(24rem, 70dvh);
      box-shadow: 0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0 / .2);
      box-shadow: 0 20px 25px -5px rgb(0 0 0 / calc(var(--depth) * .1)), 0 8px 10px -6px rgb(0 0 0 / calc(var(--depth) * .1));
      margin-block: .5rem;
      margin-inline: .5rem;
      padding: .5rem;
      translate: -.5rem;
    }

    :is(.select, .select select)::picker-icon {
      display: none;
    }

    :is(.select, .select select) selectedcontent {
      text-overflow: ellipsis;
      white-space: nowrap;
      width: 100%;
      overflow: hidden;
    }

    :is(.select, .select select) optgroup {
      padding-top: .5em;
    }

    :is(.select, .select select) optgroup option:first-child {
      margin-top: .5em;
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
    }

    @media (forced-colors: active) {
      :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
        outline-offset: 2px;
        outline: 2px solid #0000;
      }
    }

    :is(.select, .select select) option {
      border-radius: var(--radius-field);
      padding-block: .375rem;
      padding-inline: calc(.25rem * var(--option-px, 3));
      white-space: normal;
      transition-property: color, background-color;
      transition-duration: .2s;
      transition-timing-function: cubic-bezier(0, 0, .2, 1);
    }

    :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
      cursor: pointer;
      background-color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
    }

    :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }

    @media (forced-colors: active) {
      :is(.select, .select select) option:not(:disabled):hover, :is(.select, .select select) option:not(:disabled):focus-visible {
        outline-offset: 2px;
        outline: 2px solid #0000;
      }
    }

    :is(.select, .select select) option:not(:disabled):active {
      background-color: var(--color-neutral);
      color: var(--color-neutral-content);
      box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--color-neutral);
    }

    [dir="rtl"] .select::picker(select) {
      translate: .5rem;
    }

    [dir="rtl"] .select select::picker(select) {
      translate: .5rem;
    }

    .card {
      border-radius: var(--radius-box);
      outline-offset: 2px;
      outline: 2px solid #0000;
      flex-direction: column;
      transition: outline .2s ease-in-out;
      display: flex;
      position: relative;
    }

    .card:focus-visible, .card[aria-checked="true"], .card:has( > :checked,  > :is([type="checkbox"], [type="radio"]):focus-visible) {
      outline-color: currentColor;
    }

    .card:has( > :checked:focus-visible), .card[aria-checked="true"]:focus-visible, .card[aria-checked="true"]:has( > :is([type="checkbox"], [type="radio"]):focus-visible) {
      outline-width: 4px;
    }

    .card:has( > :is([type="checkbox"], [type="radio"])) {
      cursor: pointer;
      -webkit-user-select: none;
      user-select: none;
    }

    .card > :is([type="checkbox"], [type="radio"]) {
      appearance: none;
    }

    .textarea {
      appearance: none;
      border-radius: var(--radius-field);
      background-color: var(--color-base-100);
      vertical-align: middle;
      --input-color: var(--color-base-content);
      flex-shrink: 1;
      min-height: 5rem;
      padding-block: .5rem;
      padding-inline: .75rem;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea {
        --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
    }

    .textarea {
      width: clamp(3rem, 20rem, 100%);
      font-size: max(var(--font-size, 0rem), var(--font-size-min, .875rem));
      touch-action: manipulation;
      border: var(--border) solid var(--input-color, #0000);
      box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * .1)) inset;
      }
    }

    .textarea textarea {
      appearance: none;
      background-color: #0000;
      border: none;
    }

    .textarea textarea::placeholder {
      color: var(--color-base-content);
      opacity: .5;
    }

    .textarea textarea:focus, .textarea textarea:focus-within {
      --tw-outline-style: none;
      outline-style: none;
    }

    @media (forced-colors: active) {
      .textarea textarea:focus, .textarea textarea:focus-within {
        outline-offset: 2px;
        outline: 2px solid #0000;
      }
    }

    .textarea:focus {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea:focus {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .textarea:focus {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }

    @media (pointer: coarse) {
      @supports (-webkit-touch-callout: none) {
        .textarea:focus {
          --font-size: 1rem;
        }
      }
    }

    .textarea:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea:focus-within {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
    }

    .textarea:focus-within {
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }

    @media (pointer: coarse) {
      @supports (-webkit-touch-callout: none) {
        .textarea:focus-within {
          --font-size: 1rem;
        }
      }
    }

    .mockup-phone-camera {
      z-index: 1;
      background: #000;
      border-radius: 17px;
      grid-area: 1 / 1 / 1 / 1;
      width: 28%;
      height: 3.7%;
      margin-top: 3%;
    }

    .mockup-phone-display {
      border-radius: 54px;
      grid-area: 1 / 1 / 1 / 1;
      width: 100%;
      height: 100%;
      overflow: hidden;
    }

    @supports (corner-shape: superellipse(1.87)) {
      .mockup-phone-display {
        corner-shape: superellipse(1.87);
        border-radius: 101px;
      }
    }

    .mockup-phone-display > img {
      object-fit: cover;
      width: 100%;
      height: 100%;
    }

    .label {
      white-space: nowrap;
      color: currentColor;
      align-items: center;
      gap: .375rem;
      display: inline-flex;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label {
        color: color-mix(in oklab, currentcolor 60%, transparent);
      }
    }

    .label:has(input) {
      cursor: pointer;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):first-child {
        border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):last-child {
        border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):first-child {
        border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):last-child {
        border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    .label:is(.input > *, .select > *) {
      white-space: nowrap;
      height: calc(100% - .5rem);
      font-size: inherit;
      align-items: center;
      padding-inline: .75rem;
      display: flex;
    }

    .label:is(.input > *, .select > *):first-child {
      border-inline-end: var(--border) solid currentColor;
      margin-inline: -.75rem .75rem;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):first-child {
        border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    .label:is(.input > *, .select > *):last-child {
      border-inline-start: var(--border) solid currentColor;
      margin-inline: .75rem -.75rem;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .label:is(.input > *, .select > *):last-child {
        border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
      }
    }

    .status {
      aspect-ratio: 1;
      border-radius: var(--radius-selector);
      background-color: var(--color-base-content);
      display: inline-block;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .status {
        background-color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
      }
    }

    .status {
      vertical-align: middle;
      color: #0000004d;
      background-position: center;
      background-repeat: no-repeat;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .status {
        color: color-mix(in oklab, var(--color-black) 30%, transparent);
      }
    }

    .status {
      --size: calc(var(--size-selector, .25rem) * 2);
      width: var(--size);
      height: var(--size);
      background-image: radial-gradient(circle at 35% 30%, oklch(1 0 0 / calc(var(--depth) * .5)), #0000);
      box-shadow: 0 2px 3px -1px;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .status {
        box-shadow: 0 2px 3px -1px color-mix(in oklab, currentColor calc(var(--depth) * 100%), #0000);
      }
    }

    .mockup-phone {
      aspect-ratio: 462 / 978;
      background-color: #000;
      border: 5px solid #6b6b6b;
      border-radius: 65px;
      justify-items: center;
      width: 100%;
      max-width: 462px;
      padding: 6px;
      display: inline-grid;
      overflow: hidden;
    }

    @supports (corner-shape: superellipse(1.45)) {
      .mockup-phone {
        corner-shape: superellipse(1.45);
        border-radius: 90px;
      }
    }

    .btn-ghost {
      --btn-bg: #0000;
      color: var(--btn-rest-fg, var(--btn-color, var(--color-base-content, currentColor)));
      --btn-border: #0000;
      --btn-inset: 0 0 0 0 oklch(0% 0 0 / 0);
      --btn-shadow: 0 0 0 0 oklch(0% 0 0 / 0);
      background-image: none;
    }

    .aura:has( > .card,  > .alert) {
      --aura-radius: var(--radius-box);
    }

    .aura:has( > .btn,  > .input,  > .select) {
      --aura-radius: var(--radius-field);
    }
  }

  @layer daisyui.l1.l2 {
    .diff {
      webkit-user-select: none;
      -webkit-user-select: none;
      user-select: none;
      direction: ltr;
      grid-template-rows: 1fr 1.8rem 1fr;
      grid-template-columns: auto 1fr;
      align-items: normal;
      width: 100%;
      display: grid;
      position: relative;
      overflow: hidden;
      container-type: inline-size;
    }

    .diff:focus-visible, .diff:has(.diff-item-1:focus-visible), .diff:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-offset: 1px;
      outline-width: 2px;
      outline-color: var(--color-base-content);
    }

    .diff:focus-visible .diff-resizer {
      min-width: 95cqi;
      max-width: 95cqi;
    }

    .diff:has(.diff-item-1:focus-visible) {
      outline-style: var(--tw-outline-style);
      outline-offset: 1px;
      outline-width: 2px;
    }

    .diff:has(.diff-item-1:focus-visible) .diff-resizer {
      min-width: 5cqi;
      max-width: 5cqi;
    }

    .diff:hover .diff-item-2:after {
      height: 2.4rem;
    }

    @supports (-webkit-overflow-scrolling: touch) and (overflow: -webkit-paged-x) {
      .diff:focus .diff-resizer {
        min-width: 5cqi;
        max-width: 5cqi;
      }
    }

    @supports ((-moz-appearance: none)) {
      @media (hover: none) and (pointer: coarse) {
        .diff:focus .diff-resizer {
          min-width: 5cqi;
          max-width: 5cqi;
        }
      }
    }

    @supports (-webkit-overflow-scrolling: touch) and (overflow: -webkit-paged-x) {
      .diff:has(.diff-item-1:focus) .diff-resizer {
        min-width: 95cqi;
        max-width: 95cqi;
      }
    }

    @supports ((-moz-appearance: none)) {
      @media (hover: none) and (pointer: coarse) {
        .diff:has(.diff-item-1:focus) .diff-resizer {
          min-width: 95cqi;
          max-width: 95cqi;
        }
      }
    }

    .dock > [aria-current]:not([aria-current="false"], [aria-current=""]):after {
      color: currentColor;
      background-color: currentColor;
      width: 2.5rem;
    }

    .btn:is([aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      --btn-bg: var(--btn-color, var(--color-base-200));
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:is([aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
    }

    .btn:is([aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      color: var(--btn-fg, var(--color-base-content));
      --btn-border: var(--btn-color, var(--color-base-200));
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:is([aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }

    .btn:is([aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      --btn-border-style: solid;
      --btn-inset: 0 0 0 0 oklch(0% 0 0 / 0);
      --btn-shadow: 0 0 0 0 oklch(0% 0 0 / 0);
      isolation: isolate;
    }

    .list .list-row:has( > .list-col-grow:first-child) {
      --list-grid-cols: 1fr;
    }

    .list .list-row:has( > .list-col-grow:nth-child(2)) {
      --list-grid-cols: minmax(0, auto) 1fr;
    }

    .list .list-row:has( > .list-col-grow:nth-child(3)) {
      --list-grid-cols: minmax(0, auto) minmax(0, auto) 1fr;
    }

    .list .list-row:has( > .list-col-grow:nth-child(4)) {
      --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
    }

    .list .list-row:has( > .list-col-grow:nth-child(5)) {
      --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
    }

    .list .list-row:has( > .list-col-grow:nth-child(6)) {
      --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto)
          minmax(0, auto) 1fr;
    }

    .list .list-row > * {
      grid-row-start: 1;
    }

    .input:has( > input[disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    .input:has( > input[disabled]):is(input), .input:has( > input[disabled]) :is(input) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input:has( > input[disabled]):is(input), .input:has( > input[disabled]) :is(input) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .input:has( > input[disabled]) {
      box-shadow: none;
    }

    .input:has( > input[disabled])::placeholder, .input:has( > input[disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .input:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    .input:is(:disabled, [disabled]):is(input), .input:is(:disabled, [disabled]) :is(input) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .input:is(:disabled, [disabled]):is(input), .input:is(:disabled, [disabled]) :is(input) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .input:is(:disabled, [disabled]) {
      box-shadow: none;
    }

    .input:is(:disabled, [disabled])::placeholder, .input:is(:disabled, [disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    fieldset:disabled .input {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    fieldset:disabled .input:is(input), fieldset:disabled .input :is(input) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      fieldset:disabled .input:is(input), fieldset:disabled .input :is(input) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    fieldset:disabled .input {
      box-shadow: none;
    }

    fieldset:disabled .input::placeholder, fieldset:disabled .input ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .input:has( > input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }

    .steps-horizontal .step {
      text-align: center;
      grid-template-rows: 40px 1fr;
      grid-template-columns: auto;
      place-items: center;
      min-width: 4rem;
      display: grid;
    }

    .steps-horizontal .step:before {
      width: 100%;
      height: .5rem;
      margin-inline-start: -100%;
      translate: 0;
    }

    [dir="rtl"] :is(.steps-horizontal .step):before {
      translate: 0;
    }

    .steps-vertical .step {
      grid-template-rows: auto;
      grid-template-columns: 40px 1fr;
      justify-items: start;
      gap: .5rem;
      min-height: 4rem;
      display: grid;
    }

    .steps-vertical .step:before {
      width: .5rem;
      height: 100%;
      margin-inline-start: 50%;
      translate: -50% -50%;
    }

    [dir="rtl"] :is(.steps-vertical .step):before {
      translate: 50% -50%;
    }

    .steps .step-neutral + .step-neutral:before, .steps .step-neutral:after, .steps .step-neutral > .step-icon {
      --step-bg: var(--color-neutral);
      --step-fg: var(--color-neutral-content);
    }

    .steps .step-primary + .step-primary:before, .steps .step-primary:after, .steps .step-primary > .step-icon {
      --step-bg: var(--color-primary);
      --step-fg: var(--color-primary-content);
    }

    .steps .step-secondary + .step-secondary:before, .steps .step-secondary:after, .steps .step-secondary > .step-icon {
      --step-bg: var(--color-secondary);
      --step-fg: var(--color-secondary-content);
    }

    .steps .step-accent + .step-accent:before, .steps .step-accent:after, .steps .step-accent > .step-icon {
      --step-bg: var(--color-accent);
      --step-fg: var(--color-accent-content);
    }

    .steps .step-info + .step-info:before, .steps .step-info:after, .steps .step-info > .step-icon {
      --step-bg: var(--color-info);
      --step-fg: var(--color-info-content);
    }

    .steps .step-success + .step-success:before, .steps .step-success:after, .steps .step-success > .step-icon {
      --step-bg: var(--color-success);
      --step-fg: var(--color-success-content);
    }

    .steps .step-warning + .step-warning:before, .steps .step-warning:after, .steps .step-warning > .step-icon {
      --step-bg: var(--color-warning);
      --step-fg: var(--color-warning-content);
    }

    .steps .step-error + .step-error:before, .steps .step-error:after, .steps .step-error > .step-icon {
      --step-bg: var(--color-error);
      --step-fg: var(--color-error-content);
    }

    .select:has( > select[disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    .select:has( > select[disabled]):is(select), .select:has( > select[disabled]) :is(select) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select:has( > select[disabled]):is(select), .select:has( > select[disabled]) :is(select) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .select:has( > select[disabled]) {
      box-shadow: none;
    }

    .select:has( > select[disabled])::placeholder, .select:has( > select[disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .select:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    .select:is(:disabled, [disabled]):is(select), .select:is(:disabled, [disabled]) :is(select) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .select:is(:disabled, [disabled]):is(select), .select:is(:disabled, [disabled]) :is(select) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .select:is(:disabled, [disabled]) {
      box-shadow: none;
    }

    .select:is(:disabled, [disabled])::placeholder, .select:is(:disabled, [disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    fieldset:disabled .select {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
    }

    fieldset:disabled .select:is(select), fieldset:disabled .select :is(select) {
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      fieldset:disabled .select:is(select), fieldset:disabled .select :is(select) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    fieldset:disabled .select {
      box-shadow: none;
    }

    fieldset:disabled .select::placeholder, fieldset:disabled .select ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .select:has( > select[disabled]) > select[disabled] {
      cursor: not-allowed;
    }

    .textarea:has( > textarea[disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea:has( > textarea[disabled]) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .textarea:has( > textarea[disabled]) {
      box-shadow: none;
    }

    .textarea:has( > textarea[disabled])::placeholder, .textarea:has( > textarea[disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .textarea:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .textarea:is(:disabled, [disabled]) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
    }

    .textarea:is(:disabled, [disabled]) {
      box-shadow: none;
    }

    .textarea:is(:disabled, [disabled])::placeholder, .textarea:is(:disabled, [disabled]) ::placeholder {
      color: var(--color-base-content);
      opacity: .2;
    }

    .textarea:has( > textarea[disabled]) > textarea[disabled] {
      cursor: not-allowed;
    }

    .select-xs {
      --sl-size-mul: 6;
      --font-size-min: .6875rem;
      --option-px: 2;
    }

    .floating-label:has(.select-xs) {
      --top-mul: 3;
      --font-size: .6875rem;
    }

    .btn-error {
      --btn-color: var(--color-error);
      --btn-fg: var(--color-error-content);
      --btn-soft-bg: initial;
    }

    .btn-primary {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      --btn-soft-bg: initial;
    }

    .btn-sm {
      --fontsize: .75rem;
      --btn-p: .75rem;
      --size: calc(var(--size-field, .25rem) * 8);
    }

    .btn-xs {
      --fontsize: .6875rem;
      --btn-p: .5rem;
      --size: calc(var(--size-field, .25rem) * 6);
    }
  }

  @layer daisyui.l1 {
    @media (hover: hover) {
      .btn:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
      }

      @supports (color: color-mix(in lab, red, red)) {
        .btn:hover {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }

      .btn:hover {
        color: var(--btn-fg);
        --btn-border: var(--btn-bg);
      }

      @supports (color: color-mix(in lab, red, red)) {
        .btn:hover {
          --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
        }
      }

      .btn:hover {
        --btn-border-style: solid;
        --btn-inset: 0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%));
        --btn-shadow: 0 3px 2px -2px var(--btn-bg),
          0 4px 3px -2px var(--btn-bg);
      }

      @supports (color: color-mix(in lab, red, red)) {
        .btn:hover {
          --btn-shadow: 0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000),
          0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000);
        }
      }
    }

    .btn:active:not(.btn-active, [aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      --btn-bg: var(--btn-color, var(--color-base-200));
      translate: 0 .5px;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:active:not(.btn-active, [aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
    }

    .btn:active:not(.btn-active, [aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      color: var(--btn-fg, var(--color-base-content));
      --btn-border: var(--btn-color, var(--color-base-200));
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:active:not(.btn-active, [aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }

    .btn:active:not(.btn-active, [aria-pressed="true"], [aria-checked="true"], [aria-current]:not([aria-current="false"], [aria-current=""])) {
      --btn-border-style: solid;
      --btn-inset: 0 0 0 0 oklch(0% 0 0 / 0);
      --btn-shadow: 0 0 0 0 oklch(0% 0 0 / 0);
    }

    .btn:where(:checked:not(.filter [type="radio"].btn), :not([type="radio"], [type="checkbox"]):focus-visible) {
      --btn-bg: var(--btn-color, var(--color-base-200));
      color: var(--btn-fg, var(--color-base-content));
      --btn-border: var(--btn-bg);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:where(:checked:not(.filter [type="radio"].btn), :not([type="radio"], [type="checkbox"]):focus-visible) {
        --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
      }
    }

    .btn:where(:checked:not(.filter [type="radio"].btn), :not([type="radio"], [type="checkbox"]):focus-visible) {
      --btn-border-style: solid;
      --btn-inset: 0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%));
      --btn-shadow: 0 3px 2px -2px var(--btn-bg),
        0 4px 3px -2px var(--btn-bg);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:where(:checked:not(.filter [type="radio"].btn), :not([type="radio"], [type="checkbox"]):focus-visible) {
        --btn-shadow: 0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000),
        0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000);
      }
    }

    .btn:where(:checked:not(.filter [type="radio"].btn), :not([type="radio"], [type="checkbox"]):focus-visible) {
      isolation: isolate;
    }

    .btn:focus-visible, .btn:has(:focus-visible) {
      isolation: isolate;
      outline-width: 2px;
      outline-style: solid;
    }
  }

  @layer daisyui {
    .btn:is(.btn-disabled, :disabled, [disabled], [aria-disabled="true"]) {
      pointer-events: none;
      color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:is(.btn-disabled, :disabled, [disabled], [aria-disabled="true"]) {
        color: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
    }

    .btn:is(.btn-disabled, :disabled, [disabled], [aria-disabled="true"]) {
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-inset: 0 0 0 0 oklch(0% 0 0 / 0);
      --btn-shadow: 0 0 0 0 oklch(0% 0 0 / 0);
      background-image: none;
    }

    .btn:is(.btn-disabled, :disabled, [disabled], [aria-disabled="true"]):not(.btn-link, .btn-ghost) {
      background-color: var(--color-base-content);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .btn:is(.btn-disabled, :disabled, [disabled], [aria-disabled="true"]):not(.btn-link, .btn-ghost) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
    }
  }

  :is(.input[type="url"], .input[type="tel"], .input[type="email"], .input[type="number"]):dir(rtl) {
    border-start-start-radius: var(--join-se, var(--radius-field));
    border-start-end-radius: var(--join-ss, var(--radius-field));
    border-end-end-radius: var(--join-es, var(--radius-field));
    border-end-start-radius: var(--join-ee, var(--radius-field));
  }

  @layer daisyui.l1.l2.l3.l4 {
    .card figure:first-child {
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-end-radius: unset;
      border-end-start-radius: unset;
      overflow: hidden;
    }

    .card figure:last-child {
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-end-radius: inherit;
      border-end-start-radius: inherit;
      overflow: hidden;
    }

    .card figure {
      justify-content: center;
      align-items: center;
      display: flex;
    }
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .isolate {
    isolation: isolate;
  }

  .join {
    --join-ss: 0;
    --join-se: 0;
    --join-es: 0;
    --join-ee: 0;
    --join-ml: 0;
    --join-mt: 0;
    --join-v: 0;
    --join-h: 1;
    align-items: stretch;
    display: inline-flex;
  }

  @scope (.join) {
    :where(:scope > :first-child) {
      --join-ss: var(--radius-field);
      --join-se: calc(var(--radius-field) * var(--join-v));
      --join-es: calc(var(--radius-field) * var(--join-h));
      --join-ee: 0;
    }

    :where(:scope > :last-child) {
      --join-ss: 0;
      --join-se: calc(var(--radius-field) * var(--join-h));
      --join-es: calc(var(--radius-field) * var(--join-v));
      --join-ee: var(--radius-field);
    }

    :where(:scope > :only-child) {
      --join-ss: var(--radius-field);
      --join-se: var(--radius-field);
      --join-es: var(--radius-field);
      --join-ee: var(--radius-field);
    }

    :where(:scope > :not(:first-child)) {
      --join-ml: calc(var(--border, 1px) * -1 * var(--join-h));
      --join-mt: calc(var(--border, 1px) * -1 * var(--join-v));
    }
  }

  .prose {
    color: var(--tw-prose-body);
    max-width: 65ch;
  }

  .prose :where(p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
  }

  .prose :where([class~="lead"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-lead);
    margin-top: 1.2em;
    margin-bottom: 1.2em;
    font-size: 1.25em;
    line-height: 1.6;
  }

  .prose :where(a):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-links);
    font-weight: 500;
    text-decoration: underline;
  }

  .prose :where(strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-bold);
    font-weight: 600;
  }

  .prose :where(a strong):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(blockquote strong):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(thead th strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
  }

  .prose :where(ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
    padding-inline-start: 1.625em;
    list-style-type: decimal;
  }

  .prose :where(ol[type="A"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: upper-alpha;
  }

  .prose :where(ol[type="a"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: lower-alpha;
  }

  .prose :where(ol[type="A" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: upper-alpha;
  }

  .prose :where(ol[type="a" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: lower-alpha;
  }

  .prose :where(ol[type="I"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: upper-roman;
  }

  .prose :where(ol[type="i"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: lower-roman;
  }

  .prose :where(ol[type="I" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: upper-roman;
  }

  .prose :where(ol[type="i" s]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: lower-roman;
  }

  .prose :where(ol[type="1"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    list-style-type: decimal;
  }

  .prose :where(ul):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
    padding-inline-start: 1.625em;
    list-style-type: disc;
  }

  .prose :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
    color: var(--tw-prose-counters);
    font-weight: 400;
  }

  .prose :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *))::marker {
    color: var(--tw-prose-bullets);
  }

  .prose :where(dt):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    margin-top: 1.25em;
    font-weight: 600;
  }

  .prose :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    border-color: var(--tw-prose-hr);
    border-top-width: 1px;
    margin-top: 3em;
    margin-bottom: 3em;
  }

  .prose :where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-quotes);
    border-inline-start-width: .25rem;
    border-inline-start-color: var(--tw-prose-quote-borders);
    quotes: "“""”""‘""’";
    margin-top: 1.6em;
    margin-bottom: 1.6em;
    padding-inline-start: 1em;
    font-style: italic;
    font-weight: 500;
  }

  .prose :where(blockquote p:first-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *)):before {
    content: open-quote;
  }

  .prose :where(blockquote p:last-of-type):not(:where([class~="not-prose"], [class~="not-prose"] *)):after {
    content: close-quote;
  }

  .prose :where(h1):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    margin-top: 0;
    margin-bottom: .888889em;
    font-size: 2.25em;
    font-weight: 800;
    line-height: 1.11111;
  }

  .prose :where(h1 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-weight: 900;
  }

  .prose :where(h2):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    margin-top: 2em;
    margin-bottom: 1em;
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.33333;
  }

  .prose :where(h2 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-weight: 800;
  }

  .prose :where(h3):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    margin-top: 1.6em;
    margin-bottom: .6em;
    font-size: 1.25em;
    font-weight: 600;
    line-height: 1.6;
  }

  .prose :where(h3 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-weight: 700;
  }

  .prose :where(h4):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    margin-top: 1.5em;
    margin-bottom: .5em;
    font-weight: 600;
    line-height: 1.5;
  }

  .prose :where(h4 strong):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-weight: 700;
  }

  .prose :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 2em;
    margin-bottom: 2em;
  }

  .prose :where(picture):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 2em;
    margin-bottom: 2em;
    display: block;
  }

  .prose :where(video):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 2em;
    margin-bottom: 2em;
  }

  .prose :where(kbd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-kbd);
    box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
    padding-top: .1875em;
    padding-inline-end: .375em;
    padding-bottom: .1875em;
    border-radius: .3125rem;
    padding-inline-start: .375em;
    font-family: inherit;
    font-size: .875em;
    font-weight: 500;
  }

  .prose :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-code);
    font-size: .875em;
    font-weight: 600;
  }

  .prose :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)):before, .prose :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)):after {
    content: "`";
  }

  .prose :where(a code):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(h1 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
  }

  .prose :where(h2 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-size: .875em;
  }

  .prose :where(h3 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
    font-size: .9em;
  }

  .prose :where(h4 code):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(blockquote code):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(thead th code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: inherit;
  }

  .prose :where(pre):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-pre-code);
    background-color: var(--tw-prose-pre-bg);
    padding-top: .857143em;
    padding-inline-end: 1.14286em;
    padding-bottom: .857143em;
    border-radius: .375rem;
    margin-top: 1.71429em;
    margin-bottom: 1.71429em;
    padding-inline-start: 1.14286em;
    font-size: .875em;
    font-weight: 400;
    line-height: 1.71429;
    overflow-x: auto;
  }

  .prose :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    font-weight: inherit;
    color: inherit;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
    background-color: #0000;
    border-width: 0;
    border-radius: 0;
    padding: 0;
  }

  .prose :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *)):before, .prose :where(pre code):not(:where([class~="not-prose"], [class~="not-prose"] *)):after {
    content: none;
  }

  .prose :where(table):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    table-layout: auto;
    width: 100%;
    margin-top: 2em;
    margin-bottom: 2em;
    font-size: .875em;
    line-height: 1.71429;
  }

  .prose :where(thead):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    border-bottom-width: 1px;
    border-bottom-color: var(--tw-prose-th-borders);
  }

  .prose :where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-headings);
    vertical-align: bottom;
    padding-inline-end: .571429em;
    padding-bottom: .571429em;
    padding-inline-start: .571429em;
    font-weight: 600;
  }

  .prose :where(tbody tr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    border-bottom-width: 1px;
    border-bottom-color: var(--tw-prose-td-borders);
  }

  .prose :where(tbody tr:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    border-bottom-width: 0;
  }

  .prose :where(tbody td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    vertical-align: baseline;
  }

  .prose :where(tfoot):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    border-top-width: 1px;
    border-top-color: var(--tw-prose-th-borders);
  }

  .prose :where(tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    vertical-align: top;
  }

  .prose :where(th, td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    text-align: start;
  }

  .prose :where(figure > *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
    margin-bottom: 0;
  }

  .prose :where(figcaption):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    color: var(--tw-prose-captions);
    margin-top: .857143em;
    font-size: .875em;
    line-height: 1.42857;
  }

  .prose {
    --tw-prose-body: oklch(37.3% .034 259.733);
    --tw-prose-headings: oklch(21% .034 264.665);
    --tw-prose-lead: oklch(44.6% .03 256.802);
    --tw-prose-links: oklch(21% .034 264.665);
    --tw-prose-bold: oklch(21% .034 264.665);
    --tw-prose-counters: oklch(55.1% .027 264.364);
    --tw-prose-bullets: oklch(87.2% .01 258.338);
    --tw-prose-hr: oklch(92.8% .006 264.531);
    --tw-prose-quotes: oklch(21% .034 264.665);
    --tw-prose-quote-borders: oklch(92.8% .006 264.531);
    --tw-prose-captions: oklch(55.1% .027 264.364);
    --tw-prose-kbd: oklch(21% .034 264.665);
    --tw-prose-kbd-shadows: oklab(21% -.00316127 -.0338527 / .1);
    --tw-prose-code: oklch(21% .034 264.665);
    --tw-prose-pre-code: oklch(92.8% .006 264.531);
    --tw-prose-pre-bg: oklch(27.8% .033 256.848);
    --tw-prose-th-borders: oklch(87.2% .01 258.338);
    --tw-prose-td-borders: oklch(92.8% .006 264.531);
    --tw-prose-invert-body: oklch(87.2% .01 258.338);
    --tw-prose-invert-headings: #fff;
    --tw-prose-invert-lead: oklch(70.7% .022 261.325);
    --tw-prose-invert-links: #fff;
    --tw-prose-invert-bold: #fff;
    --tw-prose-invert-counters: oklch(70.7% .022 261.325);
    --tw-prose-invert-bullets: oklch(44.6% .03 256.802);
    --tw-prose-invert-hr: oklch(37.3% .034 259.733);
    --tw-prose-invert-quotes: oklch(96.7% .003 264.542);
    --tw-prose-invert-quote-borders: oklch(37.3% .034 259.733);
    --tw-prose-invert-captions: oklch(70.7% .022 261.325);
    --tw-prose-invert-kbd: #fff;
    --tw-prose-invert-kbd-shadows: #ffffff1a;
    --tw-prose-invert-code: #fff;
    --tw-prose-invert-pre-code: oklch(87.2% .01 258.338);
    --tw-prose-invert-pre-bg: #00000080;
    --tw-prose-invert-th-borders: oklch(44.6% .03 256.802);
    --tw-prose-invert-td-borders: oklch(37.3% .034 259.733);
    font-size: 1rem;
    line-height: 1.75;
  }

  .prose :where(picture > img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
    margin-bottom: 0;
  }

  .prose :where(li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .5em;
    margin-bottom: .5em;
  }

  .prose :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: .375em;
  }

  .prose :where(.prose > ul > li p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .75em;
    margin-bottom: .75em;
  }

  .prose :where(.prose > ul > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
  }

  .prose :where(.prose > ul > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 1.25em;
  }

  .prose :where(.prose > ol > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
  }

  .prose :where(.prose > ol > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 1.25em;
  }

  .prose :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .75em;
    margin-bottom: .75em;
  }

  .prose :where(dl):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.25em;
    margin-bottom: 1.25em;
  }

  .prose :where(dd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .5em;
    padding-inline-start: 1.625em;
  }

  .prose :where(hr + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(h2 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(h3 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose :where(h4 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
  }

  .prose :where(thead th:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: 0;
  }

  .prose :where(thead th:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-end: 0;
  }

  .prose :where(tbody td, tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-top: .571429em;
    padding-inline-end: .571429em;
    padding-bottom: .571429em;
    padding-inline-start: .571429em;
  }

  .prose :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: 0;
  }

  .prose :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-end: 0;
  }

  .prose :where(figure):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 2em;
    margin-bottom: 2em;
  }

  .prose :where(.prose > :first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
  }

  .prose :where(.prose > :last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 0;
  }

  .prose-sm {
    font-size: .875rem;
    line-height: 1.71429;
  }

  .prose-sm :where(p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
    margin-bottom: 1.14286em;
  }

  .prose-sm :where([class~="lead"]):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .888889em;
    margin-bottom: .888889em;
    font-size: 1.28571em;
    line-height: 1.55556;
  }

  .prose-sm :where(blockquote):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.33333em;
    margin-bottom: 1.33333em;
    padding-inline-start: 1.11111em;
  }

  .prose-sm :where(h1):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
    margin-bottom: .8em;
    font-size: 2.14286em;
    line-height: 1.2;
  }

  .prose-sm :where(h2):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.6em;
    margin-bottom: .8em;
    font-size: 1.42857em;
    line-height: 1.4;
  }

  .prose-sm :where(h3):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.55556em;
    margin-bottom: .444444em;
    font-size: 1.28571em;
    line-height: 1.55556;
  }

  .prose-sm :where(h4):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.42857em;
    margin-bottom: .571429em;
    line-height: 1.42857;
  }

  .prose-sm :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(picture):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.71429em;
    margin-bottom: 1.71429em;
  }

  .prose-sm :where(picture > img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
    margin-bottom: 0;
  }

  .prose-sm :where(video):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.71429em;
    margin-bottom: 1.71429em;
  }

  .prose-sm :where(kbd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-top: .142857em;
    padding-inline-end: .357143em;
    padding-bottom: .142857em;
    border-radius: .3125rem;
    padding-inline-start: .357143em;
    font-size: .857143em;
  }

  .prose-sm :where(code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    font-size: .857143em;
  }

  .prose-sm :where(h2 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    font-size: .9em;
  }

  .prose-sm :where(h3 code):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    font-size: .888889em;
  }

  .prose-sm :where(pre):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-top: .666667em;
    padding-inline-end: 1em;
    padding-bottom: .666667em;
    border-radius: .25rem;
    margin-top: 1.66667em;
    margin-bottom: 1.66667em;
    padding-inline-start: 1em;
    font-size: .857143em;
    line-height: 1.66667;
  }

  .prose-sm :where(ol):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(ul):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
    margin-bottom: 1.14286em;
    padding-inline-start: 1.57143em;
  }

  .prose-sm :where(li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .285714em;
    margin-bottom: .285714em;
  }

  .prose-sm :where(ol > li):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(ul > li):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: .428571em;
  }

  .prose-sm :where(.prose-sm > ul > li p):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .571429em;
    margin-bottom: .571429em;
  }

  .prose-sm :where(.prose-sm > ul > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
  }

  .prose-sm :where(.prose-sm > ul > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 1.14286em;
  }

  .prose-sm :where(.prose-sm > ol > li > p:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
  }

  .prose-sm :where(.prose-sm > ol > li > p:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 1.14286em;
  }

  .prose-sm :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .571429em;
    margin-bottom: .571429em;
  }

  .prose-sm :where(dl):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
    margin-bottom: 1.14286em;
  }

  .prose-sm :where(dt):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.14286em;
  }

  .prose-sm :where(dd):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .285714em;
    padding-inline-start: 1.57143em;
  }

  .prose-sm :where(hr):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 2.85714em;
    margin-bottom: 2.85714em;
  }

  .prose-sm :where(hr + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(h2 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(h3 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)), .prose-sm :where(h4 + *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
  }

  .prose-sm :where(table):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    font-size: .857143em;
    line-height: 1.5;
  }

  .prose-sm :where(thead th):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-end: 1em;
    padding-bottom: .666667em;
    padding-inline-start: 1em;
  }

  .prose-sm :where(thead th:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: 0;
  }

  .prose-sm :where(thead th:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-end: 0;
  }

  .prose-sm :where(tbody td, tfoot td):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-top: .666667em;
    padding-inline-end: 1em;
    padding-bottom: .666667em;
    padding-inline-start: 1em;
  }

  .prose-sm :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-start: 0;
  }

  .prose-sm :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    padding-inline-end: 0;
  }

  .prose-sm :where(figure):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 1.71429em;
    margin-bottom: 1.71429em;
  }

  .prose-sm :where(figure > *):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
    margin-bottom: 0;
  }

  .prose-sm :where(figcaption):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: .666667em;
    font-size: .857143em;
    line-height: 1.33333;
  }

  .prose-sm :where(.prose-sm > :first-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-top: 0;
  }

  .prose-sm :where(.prose-sm > :last-child):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    margin-bottom: 0;
  }

  :root .prose {
    --tw-prose-body: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-body: color-mix(in oklab, var(--color-base-content) 80%, #0000);
    }
  }

  :root .prose {
    --tw-prose-headings: var(--color-base-content);
    --tw-prose-lead: var(--color-base-content);
    --tw-prose-links: var(--color-base-content);
    --tw-prose-bold: var(--color-base-content);
    --tw-prose-counters: var(--color-base-content);
    --tw-prose-bullets: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-bullets: color-mix(in oklab, var(--color-base-content) 50%, #0000);
    }
  }

  :root .prose {
    --tw-prose-hr: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-hr: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
  }

  :root .prose {
    --tw-prose-quotes: var(--color-base-content);
    --tw-prose-quote-borders: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-quote-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
  }

  :root .prose {
    --tw-prose-captions: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-captions: color-mix(in oklab, var(--color-base-content) 50%, #0000);
    }
  }

  :root .prose {
    --tw-prose-code: var(--color-base-content);
    --tw-prose-pre-code: var(--color-neutral-content);
    --tw-prose-pre-bg: var(--color-neutral);
    --tw-prose-th-borders: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-th-borders: color-mix(in oklab, var(--color-base-content) 50%, #0000);
    }
  }

  :root .prose {
    --tw-prose-td-borders: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-td-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
  }

  :root .prose {
    --tw-prose-kbd: var(--color-base-content);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :root .prose {
      --tw-prose-kbd: color-mix(in oklab, var(--color-base-content) 80%, #0000);
    }
  }

  :root .prose :where(code):not(pre > code) {
    background-color: var(--color-base-200);
    border-radius: var(--radius-selector);
    border: var(--border) solid var(--color-base-300);
    font-weight: inherit;
    padding-block: .2em;
    padding-inline: .5em;
  }

  :root .prose :where(code):not(pre > code):before, :root .prose :where(code):not(pre > code):after {
    display: none;
  }

  .block {
    display: block;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

  .table {
    display: table;
  }

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

  .prose :where(a.btn:not(.btn-link)):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
    text-decoration-line: none;
  }

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

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

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

.prose {
  --tw-prose-body: var(--color-base-content);
  --tw-prose-headings: var(--color-base-content);
  --tw-prose-lead: var(--color-base-content);
  --tw-prose-links: var(--color-primary);
  --tw-prose-bold: var(--color-base-content);
  --tw-prose-counters: var(--color-base-content);
  --tw-prose-bullets: var(--color-base-content);
  --tw-prose-hr: var(--color-base-300);
  --tw-prose-quotes: var(--color-base-content);
  --tw-prose-quote-borders: var(--color-base-300);
  --tw-prose-captions: var(--color-base-content);
  --tw-prose-code: var(--color-base-content);
  --tw-prose-pre-code: var(--color-base-content);
  --tw-prose-pre-bg: var(--color-base-200);
  --tw-prose-th-borders: var(--color-base-300);
  --tw-prose-td-borders: var(--color-base-300);
  color: var(--color-base-content);
}

.zen-screen {
  background-color: var(--color-base-100);
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.zen-stage {
  background-color: var(--color-base-200);
  box-sizing: border-box;
  place-items: center;
  min-height: 100dvh;
  padding: 1rem;
  display: grid;
}

.zen-stage .mockup-phone {
  width: auto;
  max-width: 100%;
  height: min(880px, 100dvh - 2rem);
}

.zen-editor {
  background-color: var(--color-base-100);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  height: 100dvh;
  display: grid;
}

@media (max-width: 900px) {
  .zen-editor {
    grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-columns: none;
  }
}

.zen-editor-pane {
  box-sizing: border-box;
  flex-direction: column;
  gap: .5rem;
  min-height: 0;
  padding: .75rem;
  display: flex;
}

.zen-editor-bar {
  flex-wrap: wrap;
  align-items: center;
  gap: .75rem;
  display: flex;
}

.zen-editor-home {
  color: var(--color-base-content);
  margin-right: auto;
  font-weight: 600;
  text-decoration: none;
}

.zen-editor-theme {
  white-space: nowrap;
  color: var(--color-base-content);
  align-items: center;
  gap: .35rem;
  font-size: .8rem;
  display: flex;
}

.zen-editor-input {
  resize: none;
  border: 1px solid var(--color-base-300);
  background-color: var(--color-base-100);
  width: 100%;
  min-height: 0;
  color: var(--color-base-content);
  tab-size: 2;
  border-radius: .5rem;
  flex: 1;
  padding: .75rem;
  font-family: ui-monospace, SFMono-Regular, Fira Code, monospace;
  font-size: .9rem;
  line-height: 1.6;
}

.zen-editor-result {
  background-color: var(--color-base-200);
  max-height: 40%;
  color: var(--color-base-content);
  border-radius: .5rem;
  flex-direction: column;
  gap: .35rem;
  padding: .6rem .75rem;
  font-size: .85rem;
  display: flex;
  overflow-y: auto;
}

.zen-result-row {
  flex-wrap: wrap;
  align-items: baseline;
  gap: .5rem;
  display: flex;
}

.zen-result-row code {
  overflow-wrap: anywhere;
  font-size: .75rem;
}

.zen-result-row small {
  opacity: .7;
}

.zen-editor-preview {
  background-color: var(--color-base-100);
  contain: paint;
  min-width: 0;
  min-height: 0;
  display: grid;
  position: relative;
  overflow: hidden;
}

.zen-rec-bar {
  z-index: 60;
  background-color: var(--color-base-100);
  border-radius: 1rem;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .4rem;
  width: max-content;
  max-width: calc(100% - 1.5rem);
  padding: .4rem .75rem;
  display: flex;
  position: absolute;
  bottom: .75rem;
  left: 50%;
  transform: translateX(-50%);
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-rec-bar {
    background-color: color-mix(in oklch, var(--color-base-100) 90%, transparent);
  }
}

.zen-rec-bar {
  color: var(--color-base-content);
  font-size: .85rem;
  box-shadow: 0 2px 12px #00000040;
}

.zen-rec-bar[hidden] {
  display: none;
}

.zen-rec-bar .share-buttons {
  gap: .25rem;
}

.zen-rec-bar .share-buttons__button {
  padding: .3rem .45rem;
}

.zen-rec-bar .share-buttons__icon {
  width: 1rem;
  height: 1rem;
}

.zen-rec-count {
  font-variant-numeric: tabular-nums;
  font-size: 1.4rem;
}

.zen-rec-time {
  color: var(--color-error);
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.zen-rec-emoji {
  cursor: pointer;
  background: none;
  border: none;
  padding: .1rem .25rem;
  font-size: 1.3rem;
  line-height: 1;
}

.zen-page-counter {
  right: max(.75rem, env(safe-area-inset-right));
  bottom: max(.75rem, env(safe-area-inset-bottom));
  z-index: 50;
  color: #fff;
  font-variant-numeric: tabular-nums;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
  background-color: #0000008c;
  border-radius: 9999px;
  padding: .15rem .6rem;
  font-size: .75rem;
  line-height: 1.5;
  position: fixed;
}

.zen-cta {
  top: max(.75rem, env(safe-area-inset-top));
  right: max(.75rem, env(safe-area-inset-right));
  z-index: 70;
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  border-radius: 9999px;
  padding: .4rem .9rem;
  font-size: .85rem;
  font-weight: 600;
  text-decoration: none;
  position: fixed;
  box-shadow: 0 2px 12px #00000040;
}

zen-slide-viewer {
  outline: none;
  width: 100%;
  height: 100%;
  display: block;
  container-type: inline-size;
}

zen-slide-viewer .zen-track {
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  flex-direction: row;
  width: 100%;
  height: 100%;
  display: flex;
  overflow: auto hidden;
}

zen-slide-viewer .zen-track::-webkit-scrollbar {
  display: none;
}

zen-slide-viewer .zen-page {
  scroll-snap-align: start;
  scroll-snap-stop: always;
  box-sizing: border-box;
  background-color: var(--color-base-100);
  width: 100%;
  height: 100%;
  color: var(--color-base-content);
  flex: 0 0 100%;
  overflow: hidden auto;
}

zen-slide-viewer .zen-content {
  max-width: none;
  padding: max(clamp(2rem, 8%, 3.5rem), env(safe-area-inset-top)) max(clamp(1rem, 6%, 2rem), env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) max(clamp(1rem, 6%, 2rem), env(safe-area-inset-left));
  font-size: clamp(.95rem, 3.4cqw, 1.4rem);
}

zen-slide-viewer .zen-content :is(pre, .shiki) {
  max-width: 100%;
  overflow-x: auto;
}

zen-slide-viewer .zen-mermaid {
  justify-content: center;
  margin: 1rem 0;
  display: flex;
}

zen-slide-viewer .zen-mermaid svg {
  max-width: 100%;
  height: auto;
}

zen-slide-viewer .zen-html-frame {
  border: 0;
  width: 100%;
  height: 100%;
  display: block;
}

zen-slide-viewer .zen-content:has( > .zen-html-page) {
  height: 100%;
  padding: 0;
}

zen-slide-viewer .zen-html-page {
  height: 100%;
}

zen-slide-viewer .zen-focus {
  animation: 1.2s ease-out zen-focus-pulse;
}

@keyframes zen-focus-pulse {
  0% {
    outline: 3px solid var(--color-primary);
    outline-offset: 4px;
  }

  100% {
    outline-offset: 4px;
    outline: 3px solid #0000;
  }
}

@keyframes zen-reaction-rise {
  0% {
    opacity: 0;
    transform: translateY(0);
  }

  10% {
    opacity: 1;
  }

  90% {
    opacity: 1;
  }

  100% {
    opacity: 0;
    transform: translateY(-75dvh);
  }
}

@keyframes zen-reaction-sway {
  from {
    transform: translateX(calc(var(--zen-amp, 24px) * -1)) rotate(-6deg);
  }

  to {
    transform: translateX(var(--zen-amp, 24px)) rotate(6deg);
  }
}

.zen-dock {
  left: 50%;
  bottom: max(.5rem, env(safe-area-inset-bottom));
  z-index: 55;
  pointer-events: none;
  flex-direction: column;
  align-items: stretch;
  gap: .4rem;
  width: min(94vw, 26rem);
  max-height: min(70dvh, 40rem);
  display: flex;
  position: fixed;
  transform: translateX(-50%);
}

.zen-dock > * {
  pointer-events: auto;
}

body > .zen-reaction-bar, body > .zen-player-bar {
  left: 50%;
  bottom: max(1rem, env(safe-area-inset-bottom));
  z-index: 60;
  position: fixed;
  transform: translateX(-50%);
}

body > .zen-player-bar {
  width: min(90vw, 30rem);
}

.zen-reaction-bar {
  background-color: var(--color-base-100);
  border-radius: 9999px;
  align-self: center;
  gap: .25rem;
  padding: .35rem .5rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-reaction-bar {
    background-color: color-mix(in oklch, var(--color-base-100) 85%, transparent);
  }
}

.zen-reaction-bar {
  z-index: 60;
  box-shadow: 0 2px 12px #00000040;
}

.zen-reaction-bar button {
  cursor: pointer;
  background: none;
  border: none;
  padding: .15rem .35rem;
  font-size: 1.4rem;
  line-height: 1;
}

.zen-post-viewer {
  background-color: var(--color-base-100);
  border-radius: .75rem;
  flex-direction: column;
  gap: .4rem;
  min-height: 0;
  max-height: min(40dvh, 22rem);
  padding: .5rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-post-viewer {
    background-color: color-mix(in oklch, var(--color-base-100) 90%, transparent);
  }
}

.zen-post-viewer {
  color: var(--color-base-content);
  box-shadow: 0 2px 12px #00000040;
}

.zen-post-list {
  flex-direction: column;
  gap: .3rem;
  min-height: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  overflow-y: auto;
}

.zen-post-item {
  background-color: var(--color-base-200);
  border-radius: .5rem;
  align-items: flex-start;
  gap: .4rem;
  padding: .35rem .45rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-post-item {
    background-color: color-mix(in oklch, var(--color-base-200) 70%, transparent);
  }
}

.zen-post-text {
  overflow-wrap: anywhere;
  flex: 1;
  font-size: .9rem;
  line-height: 1.35;
}

.zen-post-vote {
  font-variant-numeric: tabular-nums;
  border: 1px solid var(--color-base-300);
  background-color: var(--color-base-100);
  color: var(--color-base-content);
  cursor: pointer;
  white-space: nowrap;
  border-radius: 9999px;
  flex: none;
  padding: .15rem .4rem;
  font-size: .8rem;
}

.zen-post-vote:disabled {
  color: var(--color-primary);
  border-color: var(--color-primary);
  cursor: default;
}

.zen-post-form {
  border-top: 1px solid var(--color-base-300);
  align-items: flex-end;
  gap: .35rem;
  padding-top: .4rem;
  display: flex;
}

.zen-post-form textarea {
  resize: none;
  font: inherit;
  border: 1px solid var(--color-base-300);
  background-color: var(--color-base-100);
  color: var(--color-base-content);
  border-radius: .5rem;
  flex: 1;
  padding: .3rem .45rem;
  font-size: .9rem;
}

.zen-post-form button {
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  cursor: pointer;
  border: none;
  border-radius: .5rem;
  flex: none;
  padding: .35rem .6rem;
  font-size: .85rem;
}

.zen-post-form button:disabled {
  opacity: .5;
  cursor: default;
}

.zen-post-counter {
  font-variant-numeric: tabular-nums;
  color: var(--color-base-content);
  opacity: .7;
  font-size: .7rem;
}

.zen-post-counter.zen-post-over {
  color: var(--color-error);
  opacity: 1;
}

.zen-moderator-ui {
  background-color: var(--color-warning);
  border-radius: .75rem;
  flex-direction: column;
  gap: .3rem;
  min-height: 0;
  max-height: min(30dvh, 18rem);
  padding: .5rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-moderator-ui {
    background-color: color-mix(in oklch, var(--color-warning) 22%, var(--color-base-100));
  }
}

.zen-moderator-ui {
  color: var(--color-base-content);
  box-shadow: 0 2px 12px #00000040;
}

.zen-moderator-ui.zen-mod-empty {
  opacity: .55;
}

.zen-mod-header {
  opacity: .85;
  font-size: .8rem;
  font-weight: 600;
}

.zen-mod-list {
  flex-direction: column;
  gap: .3rem;
  min-height: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  overflow-y: auto;
}

.zen-mod-item {
  background-color: var(--color-base-100);
  border-radius: .5rem;
  align-items: center;
  gap: .35rem;
  padding: .35rem .45rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-mod-item {
    background-color: color-mix(in oklch, var(--color-base-100) 85%, transparent);
  }
}

.zen-mod-text {
  overflow-wrap: anywhere;
  flex: 1;
  font-size: .9rem;
  line-height: 1.35;
}

.zen-mod-approve, .zen-mod-discard {
  cursor: pointer;
  border: none;
  border-radius: .5rem;
  flex: none;
  padding: .2rem .45rem;
  font-size: .8rem;
}

.zen-mod-approve {
  background-color: var(--color-success);
  color: var(--color-success-content);
}

.zen-mod-discard {
  background-color: var(--color-base-300);
  color: var(--color-base-content);
}

.zen-player-bar {
  background-color: var(--color-base-100);
  border-radius: 9999px;
  align-items: center;
  gap: .5rem;
  width: 100%;
  padding: .4rem .75rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zen-player-bar {
    background-color: color-mix(in oklch, var(--color-base-100) 88%, transparent);
  }
}

.zen-player-bar {
  z-index: 60;
  box-shadow: 0 2px 12px #00000040;
}

.zen-player-bar button {
  cursor: pointer;
  color: var(--color-base-content);
  background: none;
  border: none;
  padding: .2rem .5rem;
  font-size: 1.1rem;
  line-height: 1;
}

.zen-player-bar input[type="range"] {
  accent-color: var(--color-primary);
  flex: 1;
}

.zen-player-time {
  font-variant-numeric: tabular-nums;
  color: var(--color-base-content);
  white-space: nowrap;
  font-size: .8rem;
}

.zen-landing-body {
  --zl-pink: var(--color-primary, #f861b4);
  --zl-cyan: var(--color-secondary, #71d1fe);
  --zl-gold: var(--color-accent, #ffd48e);
  --zl-grad: linear-gradient(100deg,
    var(--zl-pink),
    var(--zl-gold),
    var(--zl-cyan),
    var(--zl-pink));
  background-color: var(--color-base-100);
  color: var(--color-base-content);
  scroll-behavior: smooth;
  margin: 0;
  overflow-x: hidden;
}

.zl {
  isolation: isolate;
  font-feature-settings: "palt";
  position: relative;
}

.zl a {
  color: inherit;
}

.zl code {
  background-color: var(--zl-pink);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl code {
    background-color: color-mix(in oklch, var(--zl-pink) 18%, transparent);
  }
}

.zl code {
  color: inherit;
}

.zl-gradient-text {
  background: var(--zl-grad);
  color: #0000;
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: 8s linear infinite zl-shimmer;
}

@keyframes zl-shimmer {
  to {
    background-position: 300% 0;
  }
}

.zl-bg {
  z-index: -1;
  pointer-events: none;
  position: fixed;
  inset: 0;
  overflow: hidden;
}

.zl-blob {
  filter: blur(90px);
  opacity: .45;
  border-radius: 50%;
  width: 46vmax;
  height: 46vmax;
  animation: 22s ease-in-out infinite alternate zl-drift;
  position: absolute;
}

.zl-blob-1 {
  background: var(--zl-pink);
  top: -18vmax;
  left: -12vmax;
}

.zl-blob-2 {
  background: var(--zl-cyan);
  animation-duration: 28s;
  animation-direction: alternate-reverse;
  top: 20vh;
  right: -18vmax;
}

.zl-blob-3 {
  background: var(--zl-gold);
  opacity: .25;
  animation-duration: 34s;
  bottom: -24vmax;
  left: 25vw;
}

@keyframes zl-drift {
  to {
    transform: translate(8vmax, 6vmax) scale(1.15);
  }
}

.zl-grid {
  background-image: linear-gradient(var(--color-base-content) 1px, transparent 1px), linear-gradient(90deg, var(--color-base-content) 1px, transparent 1px);
  position: absolute;
  inset: 0;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-grid {
    background-image: linear-gradient(color-mix(in oklch, var(--color-base-content) 7%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklch, var(--color-base-content) 7%, transparent) 1px, transparent 1px);
  }
}

.zl-grid {
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(at 50% 30%, #000 20%, #0000 75%);
  mask-image: radial-gradient(at 50% 30%, #000 20%, #0000 75%);
}

.zl-nav {
  z-index: 40;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  background-color: var(--color-base-100);
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: .75rem clamp(1rem, 4vw, 3rem);
  display: flex;
  position: sticky;
  top: 0;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-nav {
    background-color: color-mix(in oklch, var(--color-base-100) 55%, transparent);
  }
}

.zl-nav {
  border-bottom: 1px solid var(--color-base-content);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-nav {
    border-bottom: 1px solid color-mix(in oklch, var(--color-base-content) 10%, transparent);
  }
}

.zl-logo {
  letter-spacing: -.02em;
  font-size: 1.35rem;
  font-weight: 900;
  text-decoration: none;
}

.zl-logo span {
  color: var(--zl-pink);
}

.zl-nav nav {
  align-items: center;
  gap: clamp(.5rem, 2vw, 1.5rem);
  font-size: .9rem;
  display: flex;
}

.zl-nav nav a:not(.zl-btn) {
  opacity: .8;
  text-decoration: none;
}

.zl-nav nav a:not(.zl-btn):hover {
  opacity: 1;
}

@media (max-width: 640px) {
  .zl-nav nav a:not(.zl-btn) {
    display: none;
  }
}

.zl-btn {
  background: var(--zl-grad);
  box-shadow: 0 0 0 1px oklch(100% 5.96046e-8 none / .3) inset, 0 10px 30px -8px var(--zl-pink);
  background-size: 250% 100%;
  border-radius: 9999px;
  align-items: center;
  gap: .4rem;
  padding: .8rem 1.5rem;
  font-weight: 800;
  text-decoration: none;
  transition: transform .2s, box-shadow .2s, background-position .6s;
  display: inline-flex;
  color: #1a0b2e !important;
}

.zl-btn:hover {
  box-shadow: 0 0 0 1px oklch(100% 5.96046e-8 none / .4) inset, 0 16px 40px -8px var(--zl-cyan);
  background-position: 100% 0;
  transform: translateY(-2px) scale(1.03);
}

.zl-btn-sm {
  padding: .45rem 1rem;
  font-size: .85rem;
}

.zl-btn-ghost {
  background: var(--color-base-content);
  color: var(--color-base-content) !important;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-btn-ghost {
    background: color-mix(in oklch, var(--color-base-content) 8%, transparent);
  }
}

.zl-btn-ghost {
  box-shadow: 0 0 0 1px var(--color-base-content) inset;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-btn-ghost {
    box-shadow: 0 0 0 1px color-mix(in oklch, var(--color-base-content) 25%, transparent) inset;
  }
}

.zl-btn-light {
  background: #fff;
  padding: 1rem 2rem;
  font-size: 1.1rem;
}

.zl-hero {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 5rem);
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(2rem, 6vw, 5rem) clamp(1rem, 4vw, 3rem) 3rem;
  display: grid;
}

@media (max-width: 900px) {
  .zl-hero {
    text-align: center;
    grid-template-columns: none;
  }
}

.zl-badge {
  background: var(--zl-cyan);
  border-radius: 9999px;
  align-items: center;
  gap: .5rem;
  margin: 0 0 1.25rem;
  padding: .35rem .9rem;
  font-size: .85rem;
  font-weight: 700;
  display: inline-flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-badge {
    background: color-mix(in oklch, var(--zl-cyan) 15%, transparent);
  }
}

.zl-badge {
  border: 1px solid var(--zl-cyan);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-badge {
    border: 1px solid color-mix(in oklch, var(--zl-cyan) 45%, transparent);
  }
}

.zl-dot {
  background: var(--zl-cyan);
  width: .55rem;
  height: .55rem;
  box-shadow: 0 0 12px var(--zl-cyan);
  border-radius: 50%;
  animation: 1.6s ease-in-out infinite zl-pulse;
}

@keyframes zl-pulse {
  50% {
    opacity: .5;
    transform: scale(1.6);
  }
}

.zl-title {
  letter-spacing: -.04em;
  text-shadow: 0 0 40px var(--zl-pink);
  flex-direction: column;
  margin: 0;
  font-size: clamp(3rem, 8.5vw, 6.5rem);
  font-weight: 900;
  line-height: .95;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-title {
    text-shadow: 0 0 40px color-mix(in oklch, var(--zl-pink) 35%, transparent);
  }
}

.zl-title .zl-gradient-text {
  text-shadow: none;
  filter: drop-shadow(0 0 24px var(--zl-pink));
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-title .zl-gradient-text {
    filter: drop-shadow(0 0 24px color-mix(in oklch, var(--zl-pink) 45%, transparent));
  }
}

.zl-lead {
  opacity: .88;
  max-width: 34rem;
  margin: 1.5rem 0 0;
  font-size: clamp(1rem, 1.6vw, 1.2rem);
  line-height: 1.8;
}

@media (max-width: 900px) {
  .zl-lead {
    margin-inline: auto;
  }
}

.zl-actions {
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 2rem;
  display: flex;
}

.zl-chips {
  flex-wrap: wrap;
  gap: .5rem;
  margin: 2rem 0 0;
  padding: 0;
  font-size: .85rem;
  list-style: none;
  display: flex;
}

.zl-chips li {
  background: var(--color-base-content);
  border-radius: 9999px;
  padding: .3rem .8rem;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-chips li {
    background: color-mix(in oklch, var(--color-base-content) 8%, transparent);
  }
}

@media (max-width: 900px) {
  .zl-actions, .zl-chips {
    justify-content: center;
  }
}

.zl-hero-stage {
  contain: layout;
  justify-items: center;
  display: grid;
  position: relative;
}

.zl-hero-stage .zen-stage {
  background: none;
  min-height: 0;
  padding: 0;
}

.zl-hero-stage .mockup-phone {
  border-color: var(--zl-pink);
  height: min(660px, 76dvh);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-hero-stage .mockup-phone {
    border-color: color-mix(in oklch, var(--zl-pink) 55%, #333);
  }
}

.zl-hero-stage .mockup-phone {
  box-shadow: 0 0 0 1px var(--zl-cyan), 0 30px 80px -20px var(--zl-pink), 0 0 120px -30px var(--zl-cyan);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-hero-stage .mockup-phone {
    box-shadow: 0 0 0 1px color-mix(in oklch, var(--zl-cyan) 40%, transparent), 0 30px 80px -20px color-mix(in oklch, var(--zl-pink) 70%, transparent), 0 0 120px -30px var(--zl-cyan);
  }
}

.zl-hero-stage .mockup-phone {
  animation: 6s ease-in-out infinite zl-bob;
}

@keyframes zl-bob {
  50% {
    translate: 0 -10px;
  }
}

.zl-halo {
  z-index: -1;
  background: conic-gradient(from 0deg, var(--zl-pink), var(--zl-cyan), var(--zl-gold), var(--zl-pink));
  filter: blur(70px);
  opacity: .55;
  border-radius: 50%;
  animation: 14s linear infinite zl-spin;
  position: absolute;
  inset: 8% -10%;
}

@keyframes zl-spin {
  to {
    rotate: 1turn;
  }
}

.zl-floaters span {
  z-index: 2;
  filter: drop-shadow(0 6px 12px #00000059);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  animation: 5s ease-in-out infinite zl-float;
  position: absolute;
}

.zl-floaters span:first-child {
  top: 8%;
  left: 2%;
}

.zl-floaters span:nth-child(2) {
  animation-delay: -1.2s;
  top: 30%;
  right: 0;
}

.zl-floaters span:nth-child(3) {
  animation-delay: -2.4s;
  bottom: 22%;
  left: -2%;
}

.zl-floaters span:nth-child(4) {
  animation-delay: -3.1s;
  top: 2%;
  right: 12%;
}

.zl-floaters span:nth-child(5) {
  animation-delay: -.6s;
  bottom: 8%;
  right: 4%;
}

@keyframes zl-float {
  50% {
    transform: translateY(-16px) rotate(8deg) scale(1.1);
  }
}

.zl-stage-note {
  opacity: .65;
  text-align: center;
  margin: 1.25rem 0 0;
  font-size: .8rem;
}

.zl-marquee {
  background: var(--zl-grad);
  color: #1a0b2e;
  box-shadow: 0 10px 40px -10px var(--zl-pink);
  background-size: 200% 100%;
  margin: 3rem 0;
  padding: .9rem 0;
  font-size: clamp(1.1rem, 2.4vw, 1.6rem);
  font-weight: 900;
  animation: 10s linear infinite zl-shimmer;
  overflow: hidden;
  transform: rotate(-2deg) scale(1.04);
}

.zl-marquee-track {
  white-space: nowrap;
  gap: 1.5rem;
  width: max-content;
  animation: 30s linear infinite zl-marquee;
  display: flex;
}

@keyframes zl-marquee {
  to {
    transform: translateX(-50%);
  }
}

.zl-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: clamp(3rem, 8vw, 6rem) clamp(1rem, 4vw, 3rem);
}

.zl-h2 {
  letter-spacing: -.03em;
  text-align: center;
  margin: 0 0 2.5rem;
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 900;
  line-height: 1.15;
}

.zl-small {
  opacity: .75;
  font-size: .85rem;
}

.zl-cards {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: 1.25rem;
  display: grid;
}

.zl-card {
  background: linear-gradient(var(--color-base-100), var(--color-base-100)) padding-box, var(--zl-grad) border-box;
  border-radius: 1.5rem;
  padding: 2rem 1.75rem;
  position: relative;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-card {
    background: linear-gradient(color-mix(in oklch, var(--color-base-100) 82%, transparent), color-mix(in oklch, var(--color-base-100) 82%, transparent)) padding-box, var(--zl-grad) border-box;
  }
}

.zl-card {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: 1px solid #0000;
  transition: transform .3s, box-shadow .3s;
}

.zl-card:hover {
  box-shadow: 0 24px 60px -20px var(--zl-pink);
  transform: translateY(-6px) rotate(-.5deg);
}

.zl-card-icon {
  background: var(--zl-pink);
  border-radius: 1rem;
  place-items: center;
  width: 3.5rem;
  height: 3.5rem;
  margin-bottom: 1.25rem;
  font-size: 1.8rem;
  display: grid;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-card-icon {
    background: color-mix(in oklch, var(--zl-pink) 18%, transparent);
  }
}

.zl-card-icon {
  box-shadow: 0 0 30px -6px var(--zl-pink);
}

.zl-card h3, .zl-step h3 {
  margin: 0 0 .6rem;
  font-size: 1.5rem;
  font-weight: 900;
}

.zl-card p, .zl-step p {
  opacity: .85;
  margin: 0;
  line-height: 1.8;
}

.zl-steps {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.zl-step {
  background: var(--color-base-content);
  border-radius: 1.5rem;
  padding: 1.75rem;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-step {
    background: color-mix(in oklch, var(--color-base-content) 6%, transparent);
  }
}

.zl-step {
  border: 1px solid var(--color-base-content);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-step {
    border: 1px solid color-mix(in oklch, var(--color-base-content) 12%, transparent);
  }
}

.zl-step-n {
  background: var(--zl-grad);
  color: #0000;
  -webkit-background-clip: text;
  background-clip: text;
  margin-bottom: .5rem;
  font-size: 3.5rem;
  font-weight: 900;
  line-height: 1;
  display: block;
}

.zl-step pre {
  background: oklch(0% none none / .45);
  border-radius: .9rem;
  margin: 1.25rem 0 0;
  padding: 1rem;
  font-size: .8rem;
  line-height: 1.6;
  overflow-x: auto;
}

.zl-step pre code {
  background: none;
  padding: 0;
}

.zl-ai {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 4rem);
  display: grid;
}

.zl-ai .zl-h2 {
  text-align: left;
  margin-bottom: 0;
}

@media (max-width: 900px) {
  .zl-ai {
    grid-template-columns: none;
  }
}

.zl-mcp {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem;
  margin: 1.5rem 0 0;
  display: flex;
}

.zl-mcp span {
  color: #1a0b2e;
  background: var(--zl-cyan);
  border-radius: .4rem;
  padding: .2rem .6rem;
  font-size: .75rem;
  font-weight: 900;
}

.zl-mcp code {
  overflow-wrap: anywhere;
  padding: .4rem .7rem;
  font-size: .85rem;
}

.zl-chat {
  background: var(--color-base-content);
  border-radius: 1.5rem;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  display: flex;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-chat {
    background: color-mix(in oklch, var(--color-base-content) 6%, transparent);
  }
}

.zl-chat {
  border: 1px solid var(--color-base-content);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-chat {
    border: 1px solid color-mix(in oklch, var(--color-base-content) 12%, transparent);
  }
}

.zl-chat p {
  border-radius: 1.25rem;
  max-width: 85%;
  margin: 0;
  padding: .85rem 1.1rem;
  line-height: 1.7;
}

.zl-chat-me {
  color: #1a0b2e;
  background: var(--zl-grad);
  border-bottom-right-radius: .3rem;
  align-self: flex-end;
}

.zl-chat-ai {
  background: var(--color-base-100);
  align-self: flex-start;
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-chat-ai {
    background: color-mix(in oklch, var(--color-base-100) 80%, transparent);
  }
}

.zl-chat-ai {
  border: 1px solid var(--zl-cyan);
}

@supports (color: color-mix(in lab, red, red)) {
  .zl-chat-ai {
    border: 1px solid color-mix(in oklch, var(--zl-cyan) 35%, transparent);
  }
}

.zl-chat-ai {
  border-bottom-left-radius: .3rem;
}

.zl-cta {
  text-align: center;
  color: #1a0b2e;
  background: var(--zl-grad);
  box-shadow: 0 30px 80px -30px var(--zl-pink);
  background-size: 300% 100%;
  border-radius: 2rem;
  padding: clamp(3rem, 8vw, 5.5rem) 1.5rem;
  animation: 12s linear infinite zl-shimmer;
  position: relative;
  overflow: hidden;
}

.zl-cta h2 {
  letter-spacing: -.03em;
  margin: 0;
  font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 900;
  line-height: 1.15;
}

.zl-cta p {
  margin: 1rem 0 2rem;
  font-weight: 700;
}

.zl-sp {
  display: none;
}

@media (max-width: 640px) {
  .zl-sp {
    display: inline;
  }
}

.zl-footer {
  opacity: .7;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.5rem;
  padding: 2rem 1rem 3rem;
  font-size: .85rem;
  display: flex;
}

.zl-js [data-reveal] {
  opacity: 0;
  transition: opacity .8s cubic-bezier(.2, .7, .2, 1), transform .8s cubic-bezier(.2, .7, .2, 1);
  transition-delay: var(--zl-delay, 0s);
  transform: translateY(32px) scale(.98);
}

.zl-js [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .zl *, .zl :before, .zl :after {
    transition: none !important;
    animation: none !important;
  }

  .zl-js [data-reveal] {
    opacity: 1;
    transform: none;
  }
}

@keyframes rotator {
  89.9999%, 100% {
    --first-item-position: 0 0%;
  }

  90%, 99.9999% {
    --first-item-position: 0 calc(var(--items) * 100%);
  }

  100% {
    translate: 0 -100%;
  }
}

@keyframes skeleton {
  0% {
    background-position: 150%;
  }

  100% {
    background-position: -50%;
  }
}

@keyframes menu {
  0% {
    opacity: 0;
  }
}

@keyframes dropdown {
  0% {
    opacity: 0;
  }
}

@keyframes toast {
  0% {
    opacity: 0;
    scale: .9;
  }

  100% {
    opacity: 1;
    scale: 1;
  }
}

@keyframes radio {
  0% {
    padding: 5px;
  }

  50% {
    padding: 3px;
  }
}

@keyframes rating {
  0%, 40% {
    filter: brightness(1.05) contrast(1.05);
    scale: 1.1;
  }
}

@keyframes progress {
  50% {
    background-position-x: -115%;
  }
}

@keyframes aura {
  to {
    --aura-angle: 360deg;
    transform: translateZ(1px);
  }
}

@keyframes aura-glow {
  20%, 80% {
    opacity: .7;
    filter: blur(.25rem);
  }

  50% {
    opacity: 1;
    filter: blur(.75rem);
  }
}

@keyframes aura-glow-after {
  20%, 80% {
    opacity: .3;
    filter: blur(1rem);
  }

  50% {
    opacity: .6;
    filter: blur(1.5rem);
  }
}

@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-ease {
  syntax: "*";
  inherits: false
}
