/*! tailwindcss v4.1.3 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
    'Noto Color Emoji';
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New',
    monospace;
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-wider: 0.05em;
    --leading-tight: 1.25;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
    --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --blur-sm: 8px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji');
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type='button'], [type='reset'], [type='submit']), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden='until-found'])) {
    display: none !important;
  }
}
@layer utilities {
  .diff {
    position: relative;
    display: grid;
    width: 100%;
    overflow: hidden;
    webkit-user-select: none;
    user-select: none;
    direction: ltr;
    container-type: inline-size;
    grid-template-columns: auto 1fr;
    &:focus-visible, &:has(.diff-item-1:focus-visible) {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      outline-color: var(--color-base-content);
    }
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      outline-color: var(--color-base-content);
      .diff-resizer {
        min-width: 90cqi;
        max-width: 90cqi;
      }
    }
    &:has(.diff-item-2:focus-visible) {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      .diff-resizer {
        min-width: 10cqi;
        max-width: 10cqi;
      }
    }
    @supports (-webkit-overflow-scrolling: touch) and (overflow: -webkit-paged-x) {
      &:focus {
        .diff-resizer {
          min-width: 10cqi;
          max-width: 10cqi;
        }
      }
      &:has(.diff-item-1:focus) {
        .diff-resizer {
          min-width: 90cqi;
          max-width: 90cqi;
        }
      }
    }
  }
  .modal {
    pointer-events: none;
    visibility: hidden;
    position: fixed;
    inset: calc(0.25rem * 0);
    margin: calc(0.25rem * 0);
    display: grid;
    height: 100%;
    max-height: none;
    width: 100%;
    max-width: none;
    align-items: center;
    justify-items: center;
    background-color: transparent;
    padding: calc(0.25rem * 0);
    color: inherit;
    overflow-x: hidden;
    transition: transform 0.3s ease-out, visibility 0.3s allow-discrete, background-color 0.3s ease-out, opacity 0.1s ease-out;
    overflow-y: hidden;
    overscroll-behavior: contain;
    z-index: 999;
    &::backdrop {
      display: none;
    }
    &.modal-open, &[open], &:target {
      background-color: oklch(0% 0 0/ 0.4);
      transition: transform 0.3s ease-out, background-color 0.3s ease-out, opacity 0.1s ease-out;
      pointer-events: auto;
      visibility: visible;
      opacity: 100%;
      .modal-box {
        translate: 0 0;
        scale: 1;
        opacity: 1;
      }
    }
    @starting-style {
      &.modal-open, &[open], &:target {
        visibility: hidden;
        opacity: 0%;
      }
    }
  }
  .tooltip {
    position: relative;
    display: inline-block;
    --tt-bg: var(--color-neutral);
    --tt-off: calc(100% + 0.5rem);
    --tt-tail: calc(100% + 1px + 0.25rem);
    > :where(.tooltip-content), &[data-tip]:before {
      position: absolute;
      max-width: 20rem;
      border-radius: var(--radius-field);
      padding-inline: calc(0.25rem * 2);
      padding-block: calc(0.25rem * 1);
      text-align: center;
      white-space: normal;
      color: var(--color-neutral-content);
      opacity: 0%;
      font-size: 0.875rem;
      line-height: 1.25em;
      transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
      background-color: var(--tt-bg);
      width: max-content;
      pointer-events: none;
      z-index: 1;
      --tw-content: attr(data-tip);
      content: var(--tw-content);
    }
    &:after {
      position: absolute;
      position: absolute;
      opacity: 0%;
      background-color: var(--tt-bg);
      transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
      content: "";
      pointer-events: none;
      width: 0.625rem;
      height: 0.25rem;
      display: block;
      mask-repeat: no-repeat;
      mask-position: -1px 0;
      --mask-tooltip: url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");
      mask-image: var(--mask-tooltip);
    }
    &.tooltip-open, &[data-tip]:hover, &:hover, &:has(:focus-visible) {
      > .tooltip-content, &[data-tip]:before, &:after {
        opacity: 100%;
        --tt-pos: 0rem;
        transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
      }
    }
    > .tooltip-content, &[data-tip]:before {
      transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
      inset: auto auto var(--tt-off) 50%;
    }
    &:after {
      transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
      inset: auto auto var(--tt-tail) 50%;
    }
  }
  .tab {
    position: relative;
    display: inline-flex;
    cursor: pointer;
    appearance: none;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    webkit-user-select: none;
    user-select: none;
    &:hover {
      @media (hover: hover) {
        color: var(--color-base-content);
      }
    }
    --tab-p: 1rem;
    --tab-bg: var(--color-base-100);
    --tab-border-color: var(--color-base-300);
    --tab-radius-ss: 0;
    --tab-radius-se: 0;
    --tab-radius-es: 0;
    --tab-radius-ee: 0;
    --tab-order: 0;
    --tab-radius-min: calc(0.75rem - var(--border));
    border-color: #0000;
    order: var(--tab-order);
    height: calc(var(--size-field, 0.25rem) * 10);
    font-size: 0.875rem;
    padding-inline-start: var(--tab-p);
    padding-inline-end: var(--tab-p);
    &:is(input[type="radio"]) {
      min-width: fit-content;
      &:after {
        content: attr(aria-label);
      }
    }
    &:is(label) {
      position: relative;
      input {
        position: absolute;
        inset: calc(0.25rem * 0);
        cursor: pointer;
        appearance: none;
        opacity: 0%;
      }
    }
    &:checked, &:is(label:has(:checked)), &:is(.tab-active, [aria-selected="true"]) {
      & + .tab-content {
        display: block;
        height: 100%;
      }
    }
    &:not(:checked, label:has(:checked), :hover, .tab-active, [aria-selected="true"]) {
      color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
      }
    }
    &:not(input):empty {
      flex-grow: 1;
      cursor: default;
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible, &:is(label:has(:checked:focus-visible)) {
      outline: 2px solid currentColor;
      outline-offset: -5px;
    }
    &[disabled] {
      pointer-events: none;
      opacity: 40%;
    }
  }
  .menu {
    display: flex;
    width: fit-content;
    flex-direction: column;
    flex-wrap: wrap;
    padding: calc(0.25rem * 2);
    --menu-active-fg: var(--color-neutral-content);
    --menu-active-bg: var(--color-neutral);
    font-size: 0.875rem;
    :where(li ul) {
      position: relative;
      margin-inline-start: calc(0.25rem * 4);
      padding-inline-start: calc(0.25rem * 2);
      white-space: nowrap;
      &:before {
        position: absolute;
        inset-inline-start: calc(0.25rem * 0);
        top: calc(0.25rem * 3);
        bottom: calc(0.25rem * 3);
        background-color: var(--color-base-content);
        opacity: 10%;
        width: var(--border);
        content: "";
      }
    }
    :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
      display: none;
    }
    :where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)), :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
      display: grid;
      grid-auto-flow: column;
      align-content: flex-start;
      align-items: center;
      gap: calc(0.25rem * 2);
      border-radius: var(--radius-field);
      padding-inline: calc(0.25rem * 3);
      padding-block: calc(0.25rem * 1.5);
      text-align: start;
      transition-property: color, background-color, box-shadow;
      transition-duration: 0.2s;
      transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
      grid-auto-columns: minmax(auto, max-content) auto max-content;
      text-wrap: balance;
      user-select: none;
    }
    :where(li > details > summary) {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
      &::-webkit-details-marker {
        display: none;
      }
    }
    :where(li > details > summary), :where(li > .menu-dropdown-toggle) {
      &:after {
        justify-self: flex-end;
        display: block;
        height: 0.375rem;
        width: 0.375rem;
        rotate: -135deg;
        translate: 0 -1px;
        transition-property: rotate, translate;
        transition-duration: 0.2s;
        content: "";
        transform-origin: 50% 50%;
        box-shadow: 2px 2px inset;
        pointer-events: none;
      }
    }
    :where(li > details[open] > summary):after, :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {
      rotate: 45deg;
      translate: 0 1px;
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title), li:not(.menu-title, .disabled) > details > summary:not(.menu-title) ):not(.menu-active, :active, .btn) {
      &.menu-focus, &:focus-visible {
        cursor: pointer;
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        color: var(--color-base-content);
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title):not(.menu-active, :active, .btn):hover, li:not(.menu-title, .disabled) > details > summary:not(.menu-title):not(.menu-active, :active, .btn):hover ) {
      cursor: pointer;
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
      box-shadow: 0 1px oklch(0% 0 0 / 0.01) inset, 0 -1px oklch(100% 0 0 / 0.01) inset;
    }
    :where(li:empty) {
      background-color: var(--color-base-content);
      opacity: 10%;
      margin: 0.5rem 1rem;
      height: 1px;
    }
    :where(li) {
      position: relative;
      display: flex;
      flex-shrink: 0;
      flex-direction: column;
      flex-wrap: wrap;
      align-items: stretch;
      .badge {
        justify-self: flex-end;
      }
      & > *:not(ul, .menu-title, details, .btn):active, & > *:not(ul, .menu-title, details, .btn).menu-active, & > details > summary:active {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
        color: var(--menu-active-fg);
        background-color: var(--menu-active-bg);
        background-size: auto, calc(var(--noise) * 100%);
        background-image: none, var(--fx-noise);
        &:not(&:active) {
          box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg);
        }
      }
      &.menu-disabled {
        pointer-events: none;
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    .dropdown:focus-within {
      .menu-dropdown-toggle:after {
        rotate: 45deg;
        translate: 0 1px;
      }
    }
    .dropdown-content {
      margin-top: calc(0.25rem * 2);
      padding: calc(0.25rem * 2);
      &:before {
        display: none;
      }
    }
  }
  .menu\! {
    display: flex !important;
    width: fit-content !important;
    flex-direction: column !important;
    flex-wrap: wrap !important;
    padding: calc(0.25rem * 2) !important;
    --menu-active-fg: var(--color-neutral-content) !important;
    --menu-active-bg: var(--color-neutral) !important;
    font-size: 0.875rem !important;
    :where(li ul) {
      position: relative !important;
      margin-inline-start: calc(0.25rem * 4) !important;
      padding-inline-start: calc(0.25rem * 2) !important;
      white-space: nowrap !important;
      &:before {
        position: absolute !important;
        inset-inline-start: calc(0.25rem * 0) !important;
        top: calc(0.25rem * 3) !important;
        bottom: calc(0.25rem * 3) !important;
        background-color: var(--color-base-content) !important;
        opacity: 10% !important;
        width: var(--border) !important;
        content: "" !important;
      }
    }
    :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
      display: none !important;
    }
    :where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)), :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
      display: grid !important;
      grid-auto-flow: column !important;
      align-content: flex-start !important;
      align-items: center !important;
      gap: calc(0.25rem * 2) !important;
      border-radius: var(--radius-field) !important;
      padding-inline: calc(0.25rem * 3) !important;
      padding-block: calc(0.25rem * 1.5) !important;
      text-align: start !important;
      transition-property: color, background-color, box-shadow !important;
      transition-duration: 0.2s !important;
      transition-timing-function: cubic-bezier(0, 0, 0.2, 1) !important;
      grid-auto-columns: minmax(auto, max-content) auto max-content !important;
      text-wrap: balance !important;
      user-select: none !important;
    }
    :where(li > details > summary) {
      --tw-outline-style: none !important;
      outline-style: none !important;
      @media (forced-colors: active) {
        outline: 2px solid transparent !important;
        outline-offset: 2px !important;
      }
      &::-webkit-details-marker {
        display: none !important;
      }
    }
    :where(li > details > summary), :where(li > .menu-dropdown-toggle) {
      &:after {
        justify-self: flex-end !important;
        display: block !important;
        height: 0.375rem !important;
        width: 0.375rem !important;
        rotate: -135deg !important;
        translate: 0 -1px !important;
        transition-property: rotate, translate !important;
        transition-duration: 0.2s !important;
        content: "" !important;
        transform-origin: 50% 50% !important;
        box-shadow: 2px 2px inset !important;
        pointer-events: none !important;
      }
    }
    :where(li > details[open] > summary):after, :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {
      rotate: 45deg !important;
      translate: 0 1px !important;
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title), li:not(.menu-title, .disabled) > details > summary:not(.menu-title) ):not(.menu-active, :active, .btn) {
      &.menu-focus, &:focus-visible {
        cursor: pointer !important;
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent) !important;
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent) !important;
        }
        color: var(--color-base-content) !important;
        --tw-outline-style: none !important;
        outline-style: none !important;
        @media (forced-colors: active) {
          outline: 2px solid transparent !important;
          outline-offset: 2px !important;
        }
      }
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title):not(.menu-active, :active, .btn):hover, li:not(.menu-title, .disabled) > details > summary:not(.menu-title):not(.menu-active, :active, .btn):hover ) {
      cursor: pointer !important;
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent) !important;
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent) !important;
      }
      --tw-outline-style: none !important;
      outline-style: none !important;
      @media (forced-colors: active) {
        outline: 2px solid transparent !important;
        outline-offset: 2px !important;
      }
      box-shadow: 0 1px oklch(0% 0 0 / 0.01) inset, 0 -1px oklch(100% 0 0 / 0.01) inset !important;
    }
    :where(li:empty) {
      background-color: var(--color-base-content) !important;
      opacity: 10% !important;
      margin: 0.5rem 1rem !important;
      height: 1px !important;
    }
    :where(li) {
      position: relative !important;
      display: flex !important;
      flex-shrink: 0 !important;
      flex-direction: column !important;
      flex-wrap: wrap !important;
      align-items: stretch !important;
      .badge {
        justify-self: flex-end !important;
      }
      & > *:not(ul, .menu-title, details, .btn):active, & > *:not(ul, .menu-title, details, .btn).menu-active, & > details > summary:active {
        --tw-outline-style: none !important;
        outline-style: none !important;
        @media (forced-colors: active) {
          outline: 2px solid transparent !important;
          outline-offset: 2px !important;
        }
        color: var(--menu-active-fg) !important;
        background-color: var(--menu-active-bg) !important;
        background-size: auto, calc(var(--noise) * 100%) !important;
        background-image: none, var(--fx-noise) !important;
        &:not(&:active) {
          box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg) !important;
        }
      }
      &.menu-disabled {
        pointer-events: none !important;
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent) !important;
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent) !important;
        }
      }
    }
    .dropdown:focus-within {
      .menu-dropdown-toggle:after {
        rotate: 45deg !important;
        translate: 0 1px !important;
      }
    }
    .dropdown-content {
      margin-top: calc(0.25rem * 2) !important;
      padding: calc(0.25rem * 2) !important;
      &:before {
        display: none !important;
      }
    }
  }
  .dock {
    position: fixed;
    right: calc(0.25rem * 0);
    bottom: calc(0.25rem * 0);
    left: calc(0.25rem * 0);
    z-index: 1;
    display: flex;
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
    background-color: var(--color-base-100);
    padding: calc(0.25rem * 2);
    color: currentColor;
    border-top: 0.5px solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-top: 0.5px solid color-mix(in oklab, var(--color-base-content) 5%, #0000);
    }
    height: 4rem;
    height: calc(4rem + env(safe-area-inset-bottom));
    padding-bottom: env(safe-area-inset-bottom);
    > * {
      position: relative;
      margin-bottom: calc(0.25rem * 2);
      display: flex;
      height: 100%;
      max-width: calc(0.25rem * 32);
      flex-shrink: 1;
      flex-basis: 100%;
      cursor: pointer;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 1px;
      border-radius: var(--radius-box);
      background-color: transparent;
      transition: opacity 0.2s ease-out;
      &:where(.dock-active) {
        &:after {
          content: "";
          position: absolute;
          height: calc(0.25rem * 1);
          width: calc(0.25rem * 10);
          border-radius: calc(infinity * 1px);
          background-color: currentColor;
          bottom: 0.2rem;
          border-top: 3px solid;
        }
      }
      @media (hover: hover) {
        &:hover {
          opacity: 80%;
        }
      }
      &[aria-disabled="true"], &[disabled] {
        &, &:hover {
          pointer-events: none;
          color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
          }
          opacity: 100%;
        }
      }
      .dock-label {
        font-size: 0.6875rem;
      }
    }
  }
  .dropdown {
    position: relative;
    display: inline-block;
    position-area: var(--anchor-v, bottom) var(--anchor-h, span-right);
    & > *:not(summary):focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    .dropdown-content {
      position: absolute;
    }
    &:not(details, .dropdown-open, .dropdown-hover:hover, :focus-within) {
      .dropdown-content {
        display: none;
        transform-origin: top;
        opacity: 0%;
        scale: 95%;
      }
    }
    &[popover], .dropdown-content {
      z-index: 999;
      animation: dropdown 0.2s;
      transition-property: opacity, scale, display;
      transition-behavior: allow-discrete;
      transition-duration: 0.2s;
      transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    }
    @starting-style {
      &[popover], .dropdown-content {
        scale: 95%;
        opacity: 0;
      }
    }
    &.dropdown-open, &:not(.dropdown-hover):focus, &:focus-within {
      > [tabindex]:first-child {
        pointer-events: none;
      }
      .dropdown-content {
        opacity: 100%;
      }
    }
    &.dropdown-hover:hover {
      .dropdown-content {
        opacity: 100%;
        scale: 100%;
      }
    }
    &:is(details) {
      summary {
        &::-webkit-details-marker {
          display: none;
        }
      }
    }
    &.dropdown-open, &:focus, &:focus-within {
      .dropdown-content {
        scale: 100%;
      }
    }
    &:where([popover]) {
      background: #0000;
    }
    &[popover] {
      position: fixed;
      color: inherit;
      @supports not (position-area: bottom) {
        margin: auto;
        &.dropdown-open:not(:popover-open) {
          display: none;
          transform-origin: top;
          opacity: 0%;
          scale: 95%;
        }
        &::backdrop {
          background-color: color-mix(in oklab, #000 30%, #0000);
        }
      }
      &:not(.dropdown-open, :popover-open) {
        display: none;
        transform-origin: top;
        opacity: 0%;
        scale: 95%;
      }
    }
  }
  .btn {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
  }
  .loading {
    pointer-events: none;
    display: inline-block;
    aspect-ratio: 1 / 1;
    background-color: currentColor;
    vertical-align: middle;
    width: calc(var(--size-selector, 0.25rem) * 6);
    mask-size: 100%;
    mask-repeat: no-repeat;
    mask-position: center;
    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");
  }
  .collapse {
    &:not(td, tr, colgroup) {
      visibility: visible;
    }
    position: relative;
    display: grid;
    overflow: hidden;
    border-radius: var(--radius-box, 1rem);
    width: 100%;
    grid-template-rows: max-content 0fr;
    transition: grid-template-rows 0.2s;
    > input:is([type="checkbox"], [type="radio"]) {
      grid-column-start: 1;
      grid-row-start: 1;
      appearance: none;
      opacity: 0;
      z-index: 1;
      width: 100%;
      padding: 1rem;
      padding-inline-end: 3rem;
      min-height: 3.75rem;
      transition: background-color 0.2s ease-out;
    }
    &:is([open], :focus:not(.collapse-close)), &:not(.collapse-close):has(> input:is([type="checkbox"], [type="radio"]):checked) {
      grid-template-rows: max-content 1fr;
    }
    &:is([open], :focus:not(.collapse-close)) > .collapse-content, &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      visibility: visible;
      min-height: fit-content;
    }
    &:focus-visible, &:has(> input:is([type="checkbox"], [type="radio"]):focus-visible) {
      outline-color: var(--color-base-content);
      outline-style: solid;
      outline-width: 2px;
      outline-offset: 2px;
    }
    &:not(.collapse-close) {
      > input[type="checkbox"], > input[type="radio"]:not(:checked), > .collapse-title {
        cursor: pointer;
      }
    }
    &:focus:not(.collapse-close, .collapse[open]) > .collapse-title {
      cursor: unset;
    }
    &:is([open], :focus:not(.collapse-close)) > :where(.collapse-content), &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      padding-bottom: 1rem;
      transition: padding 0.2s ease-out, background-color 0.2s ease-out;
    }
    &:is([open]) {
      &.collapse-arrow {
        > .collapse-title:after {
          transform: translateY(-50%) rotate(225deg);
        }
      }
    }
    &.collapse-open {
      &.collapse-arrow {
        > .collapse-title:after {
          transform: translateY(-50%) rotate(225deg);
        }
      }
      &.collapse-plus {
        > .collapse-title:after {
          content: "−";
        }
      }
    }
    &.collapse-arrow:focus:not(.collapse-close) {
      > .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &.collapse-arrow:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &[open] {
      &.collapse-plus {
        > .collapse-title:after {
          content: "−";
        }
      }
    }
    &.collapse-plus:focus:not(.collapse-close) {
      > .collapse-title:after {
        content: "−";
      }
    }
    &.collapse-plus:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        content: "−";
      }
    }
    &:is(details) {
      width: 100%;
      & summary {
        position: relative;
        display: block;
        &::-webkit-details-marker {
          display: none;
        }
      }
    }
    &:is(details) summary {
      outline: none;
    }
  }
  .validator {
    &:user-valid, &:has(:user-valid) {
      &, &:focus, &:checked, &[aria-checked="true"], &:focus-within {
        --input-color: var(--color-success);
      }
    }
    &:user-invalid, &:has(:user-invalid), &[aria-invalid] {
      &, &:focus, &:checked, &[aria-checked="true"], &:focus-within {
        --input-color: var(--color-error);
      }
      & ~ .validator-hint {
        visibility: visible;
        display: block;
        color: var(--color-error);
      }
    }
    & ~ .validator-hint {
      visibility: hidden;
    }
  }
  .\!visible {
    visibility: visible !important;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .invisible\! {
    visibility: hidden !important;
  }
  .visible {
    visibility: visible;
  }
  .visible\! {
    visibility: visible !important;
  }
  .list {
    display: flex;
    flex-direction: column;
    font-size: 0.875rem;
    :where(.list-row) {
      --list-grid-cols: minmax(0, auto) 1fr;
      position: relative;
      display: grid;
      grid-auto-flow: column;
      gap: calc(0.25rem * 4);
      border-radius: var(--radius-box);
      padding: calc(0.25rem * 4);
      word-break: break-word;
      grid-template-columns: var(--list-grid-cols);
      &:has(.list-col-grow:nth-child(1)) {
        --list-grid-cols: 1fr;
      }
      &:has(.list-col-grow:nth-child(2)) {
        --list-grid-cols: minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(3)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(4)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(5)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
      }
      &: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;
      }
      :not(.list-col-wrap) {
        grid-row-start: 1;
      }
    }
    & > :not(:last-child) {
      &.list-row, .list-row {
        &:after {
          content: "";
          border-bottom: var(--border) solid;
          inset-inline: var(--radius-box);
          position: absolute;
          bottom: calc(0.25rem * 0);
          border-color: color-mix(in srgb, var(--color-base-content) 5%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent);
          }
        }
      }
    }
  }
  .list\! {
    display: flex !important;
    flex-direction: column !important;
    font-size: 0.875rem !important;
    :where(.list-row) {
      --list-grid-cols: minmax(0, auto) 1fr !important;
      position: relative !important;
      display: grid !important;
      grid-auto-flow: column !important;
      gap: calc(0.25rem * 4) !important;
      border-radius: var(--radius-box) !important;
      padding: calc(0.25rem * 4) !important;
      word-break: break-word !important;
      grid-template-columns: var(--list-grid-cols) !important;
      &:has(.list-col-grow:nth-child(1)) {
        --list-grid-cols: 1fr !important;
      }
      &:has(.list-col-grow:nth-child(2)) {
        --list-grid-cols: minmax(0, auto) 1fr !important;
      }
      &:has(.list-col-grow:nth-child(3)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) 1fr !important;
      }
      &:has(.list-col-grow:nth-child(4)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr !important;
      }
      &:has(.list-col-grow:nth-child(5)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr !important;
      }
      &: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 !important;
      }
      :not(.list-col-wrap) {
        grid-row-start: 1 !important;
      }
    }
    & > :not(:last-child) {
      &.list-row, .list-row {
        &:after {
          content: "" !important;
          border-bottom: var(--border) solid !important;
          inset-inline: var(--radius-box) !important;
          position: absolute !important;
          bottom: calc(0.25rem * 0) !important;
          border-color: color-mix(in srgb, var(--color-base-content) 5%, transparent) !important;
          @supports (color: color-mix(in lab, red, red)) {
            border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent) !important;
          }
        }
      }
    }
  }
  .toggle {
    border: var(--border) solid currentColor;
    color: var(--input-color);
    position: relative;
    display: inline-grid;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    place-content: center;
    vertical-align: middle;
    webkit-user-select: none;
    user-select: none;
    grid-template-columns: 0fr 1fr 1fr;
    --radius-selector-max: calc(
    var(--radius-selector) + var(--radius-selector) + var(--radius-selector)
  );
    border-radius: calc( var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)) );
    padding: var(--toggle-p);
    box-shadow: 0 1px currentColor inset;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset;
    }
    transition: color 0.3s, grid-template-columns 0.2s;
    --input-color: color-mix(in srgb, var(--color-base-content) 50%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 50%, #0000);
    }
    --toggle-p: 0.1875rem;
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);
    height: var(--size);
    > * {
      z-index: 1;
      grid-column: span 1 / span 1;
      grid-column-start: 2;
      grid-row-start: 1;
      height: 100%;
      cursor: pointer;
      appearance: none;
      background-color: transparent;
      padding: calc(0.25rem * 0.5);
      transition: opacity 0.2s, rotate 0.4s;
      border: none;
      &:focus {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:nth-child(2) {
        color: var(--color-base-100);
        rotate: 0deg;
      }
      &:nth-child(3) {
        color: var(--color-base-100);
        opacity: 0%;
        rotate: -15deg;
      }
    }
    &:has(:checked) {
      > :nth-child(2) {
        opacity: 0%;
        rotate: 15deg;
      }
      > :nth-child(3) {
        opacity: 100%;
        rotate: 0deg;
      }
    }
    &:before {
      position: relative;
      inset-inline-start: calc(0.25rem * 0);
      grid-column-start: 2;
      grid-row-start: 1;
      aspect-ratio: 1 / 1;
      height: 100%;
      border-radius: var(--radius-selector);
      background-color: currentColor;
      translate: 0;
      --tw-content: "";
      content: var(--tw-content);
      transition: background-color 0.1s, translate 0.2s, inset-inline-start 0.2s;
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000);
      }
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
    }
    @media (forced-colors: active) {
      &:before {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
        outline-offset: calc(1px * -1);
      }
    }
    @media print {
      &:before {
        outline: 0.25rem solid;
        outline-offset: -1rem;
      }
    }
    &:focus-visible, &:has(:focus-visible) {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }
    &:checked, &[aria-checked="true"], &:has(> input:checked) {
      grid-template-columns: 1fr 1fr 0fr;
      background-color: var(--color-base-100);
      --input-color: var(--color-base-content);
      &:before {
        background-color: currentColor;
      }
      @starting-style {
        &:before {
          opacity: 0;
        }
      }
    }
    &:indeterminate {
      grid-template-columns: 0.5fr 1fr 0.5fr;
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 30%;
      &:before {
        background-color: transparent;
        border: var(--border) solid currentColor;
      }
    }
  }
  .input {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
  }
  .input\! {
    cursor: text !important;
    border: var(--border) solid #0000 !important;
    position: relative !important;
    display: inline-flex !important;
    flex-shrink: 1 !important;
    appearance: none !important;
    align-items: center !important;
    gap: calc(0.25rem * 2) !important;
    background-color: var(--color-base-100) !important;
    padding-inline: calc(0.25rem * 3) !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
    width: clamp(3rem, 20rem, 100%) !important;
    height: var(--size) !important;
    font-size: 0.875rem !important;
    border-start-start-radius: var(--join-ss, var(--radius-field)) !important;
    border-start-end-radius: var(--join-se, var(--radius-field)) !important;
    border-end-start-radius: var(--join-es, var(--radius-field)) !important;
    border-end-end-radius: var(--join-ee, var(--radius-field)) !important;
    border-color: var(--input-color) !important;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset !important;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset !important;
    }
    --size: calc(var(--size-field, 0.25rem) * 10) !important;
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000) !important;
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000) !important;
    }
    &:where(input) {
      display: inline-flex !important;
    }
    :where(input) {
      display: inline-flex !important;
      height: 100% !important;
      width: 100% !important;
      appearance: none !important;
      background-color: transparent !important;
      border: none !important;
      &:focus, &:focus-within {
        --tw-outline-style: none !important;
        outline-style: none !important;
        @media (forced-colors: active) {
          outline: 2px solid transparent !important;
          outline-offset: 2px !important;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block !important;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content) !important;
      box-shadow: 0 1px var(--input-color) !important;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) !important;
      }
      outline: 2px solid var(--input-color) !important;
      outline-offset: 2px !important;
      isolation: isolate !important;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed !important;
      border-color: var(--color-base-200) !important;
      background-color: var(--color-base-200) !important;
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent) !important;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent) !important;
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent) !important;
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent) !important;
        }
      }
      box-shadow: none !important;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed !important;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit !important;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3) !important;
        margin-inline-end: calc(0.25rem * -3) !important;
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute !important;
      inset-inline-end: 0.75em !important;
    }
  }
  .indicator {
    position: relative;
    display: inline-flex;
    width: max-content;
    :where(.indicator-item) {
      z-index: 1;
      position: absolute;
      white-space: nowrap;
      top: var(--inidicator-t, 0);
      bottom: var(--inidicator-b, auto);
      left: var(--inidicator-s, auto);
      right: var(--inidicator-e, 0);
      translate: var(--inidicator-x, 50%) var(--indicator-y, -50%);
    }
  }
  .table {
    font-size: 0.875rem;
    position: relative;
    width: 100%;
    border-radius: var(--radius-box);
    text-align: left;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right;
    }
    tr.row-hover {
      &, &:nth-child(even) {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-base-200);
          }
        }
      }
    }
    :where(th, td) {
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 3);
      vertical-align: middle;
    }
    :where(thead, tfoot) {
      white-space: nowrap;
      color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
      font-size: 0.875rem;
      font-weight: 600;
    }
    :where(tfoot) {
      border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    :where(.table-pin-rows thead tr) {
      position: sticky;
      top: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-rows tfoot tr) {
      position: sticky;
      bottom: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-cols tr th) {
      position: sticky;
      right: calc(0.25rem * 0);
      left: calc(0.25rem * 0);
      background-color: var(--color-base-100);
    }
    :where(thead tr, tbody tr:not(:last-child)) {
      border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
  }
  .table\! {
    font-size: 0.875rem !important;
    position: relative !important;
    width: 100% !important;
    border-radius: var(--radius-box) !important;
    text-align: left !important;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right !important;
    }
    tr.row-hover {
      &, &:nth-child(even) {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-base-200) !important;
          }
        }
      }
    }
    :where(th, td) {
      padding-inline: calc(0.25rem * 4) !important;
      padding-block: calc(0.25rem * 3) !important;
      vertical-align: middle !important;
    }
    :where(thead, tfoot) {
      white-space: nowrap !important;
      color: color-mix(in srgb, var(--color-base-content) 60%, transparent) !important;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent) !important;
      }
      font-size: 0.875rem !important;
      font-weight: 600 !important;
    }
    :where(tfoot) {
      border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000) !important;
      @supports (color: color-mix(in lab, red, red)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000) !important;
      }
    }
    :where(.table-pin-rows thead tr) {
      position: sticky !important;
      top: calc(0.25rem * 0) !important;
      z-index: 1 !important;
      background-color: var(--color-base-100) !important;
    }
    :where(.table-pin-rows tfoot tr) {
      position: sticky !important;
      bottom: calc(0.25rem * 0) !important;
      z-index: 1 !important;
      background-color: var(--color-base-100) !important;
    }
    :where(.table-pin-cols tr th) {
      position: sticky !important;
      right: calc(0.25rem * 0) !important;
      left: calc(0.25rem * 0) !important;
      background-color: var(--color-base-100) !important;
    }
    :where(thead tr, tbody tr:not(:last-child)) {
      border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000) !important;
      @supports (color: color-mix(in lab, red, red)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000) !important;
      }
    }
  }
  .steps {
    display: inline-grid;
    grid-auto-flow: column;
    overflow: hidden;
    overflow-x: auto;
    counter-reset: step;
    grid-auto-columns: 1fr;
    .step {
      display: grid;
      grid-template-columns: repeat(1, minmax(0, 1fr));
      grid-template-columns: auto;
      grid-template-rows: repeat(2, minmax(0, 1fr));
      grid-template-rows: 40px 1fr;
      place-items: center;
      text-align: center;
      min-width: 4rem;
      --step-bg: var(--color-base-300);
      --step-fg: var(--color-base-content);
      &:before {
        top: calc(0.25rem * 0);
        grid-column-start: 1;
        grid-row-start: 1;
        height: calc(0.25rem * 2);
        width: 100%;
        border: 1px solid;
        color: var(--step-bg);
        background-color: var(--step-bg);
        --tw-content: "";
        content: var(--tw-content);
        margin-inline-start: -100%;
      }
      > .step-icon, &:not(:has(.step-icon)):after {
        content: counter(step);
        counter-increment: step;
        z-index: 1;
        color: var(--step-fg);
        background-color: var(--step-bg);
        border: 1px solid var(--step-bg);
        position: relative;
        grid-column-start: 1;
        grid-row-start: 1;
        display: grid;
        height: calc(0.25rem * 8);
        width: calc(0.25rem * 8);
        place-items: center;
        place-self: center;
        border-radius: calc(infinity * 1px);
      }
      &:first-child:before {
        content: none;
      }
      &[data-content]:after {
        content: attr(data-content);
      }
    }
    .step-neutral {
      + .step-neutral:before, &:after, > .step-icon {
        --step-bg: var(--color-neutral);
        --step-fg: var(--color-neutral-content);
      }
    }
    .step-primary {
      + .step-primary:before, &:after, > .step-icon {
        --step-bg: var(--color-primary);
        --step-fg: var(--color-primary-content);
      }
    }
    .step-secondary {
      + .step-secondary:before, &:after, > .step-icon {
        --step-bg: var(--color-secondary);
        --step-fg: var(--color-secondary-content);
      }
    }
    .step-accent {
      + .step-accent:before, &:after, > .step-icon {
        --step-bg: var(--color-accent);
        --step-fg: var(--color-accent-content);
      }
    }
    .step-info {
      + .step-info:before, &:after, > .step-icon {
        --step-bg: var(--color-info);
        --step-fg: var(--color-info-content);
      }
    }
    .step-success {
      + .step-success:before, &:after, > .step-icon {
        --step-bg: var(--color-success);
        --step-fg: var(--color-success-content);
      }
    }
    .step-warning {
      + .step-warning:before, &:after, > .step-icon {
        --step-bg: var(--color-warning);
        --step-fg: var(--color-warning-content);
      }
    }
    .step-error {
      + .step-error:before, &:after, > .step-icon {
        --step-bg: var(--color-error);
        --step-fg: var(--color-error-content);
      }
    }
  }
  .range {
    appearance: none;
    webkit-appearance: none;
    --range-thumb: var(--color-base-100);
    --range-thumb-size: calc(var(--size-selector, 0.25rem) * 6);
    --range-progress: currentColor;
    --range-fill: 1;
    --range-p: 0.25rem;
    --range-bg: currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      --range-bg: color-mix(in oklab, currentColor 10%, #0000);
    }
    cursor: pointer;
    overflow: hidden;
    background-color: transparent;
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    --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)));
    border: none;
    height: var(--range-thumb-size);
    [dir="rtl"] & {
      --range-dir: -1;
    }
    &:focus {
      outline: none;
    }
    &:focus-visible {
      outline: 2px solid;
      outline-offset: 2px;
    }
    &::-webkit-slider-runnable-track {
      width: 100%;
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      height: calc(var(--range-thumb-size) * 0.5);
    }
    @media (forced-colors: active) {
      &::-webkit-slider-runnable-track {
        border: 1px solid;
      }
    }
    @media (forced-colors: active) {
      &::-moz-range-track {
        border: 1px solid;
      }
    }
    &::-webkit-slider-thumb {
      position: relative;
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      background-color: currentColor;
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      appearance: none;
      webkit-appearance: none;
      top: 50%;
      color: var(--range-progress);
      transform: translateY(-50%);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      }
    }
    &::-moz-range-track {
      width: 100%;
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      height: calc(var(--range-thumb-size) * 0.5);
    }
    &::-moz-range-thumb {
      position: relative;
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      background-color: currentColor;
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      top: 50%;
      color: var(--range-progress);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 30%;
    }
  }
  .range\! {
    appearance: none !important;
    webkit-appearance: none !important;
    --range-thumb: var(--color-base-100) !important;
    --range-thumb-size: calc(var(--size-selector, 0.25rem) * 6) !important;
    --range-progress: currentColor !important;
    --range-fill: 1 !important;
    --range-p: 0.25rem !important;
    --range-bg: currentColor !important;
    @supports (color: color-mix(in lab, red, red)) {
      --range-bg: color-mix(in oklab, currentColor 10%, #0000) !important;
    }
    cursor: pointer !important;
    overflow: hidden !important;
    background-color: transparent !important;
    vertical-align: middle !important;
    width: clamp(3rem, 20rem, 100%) !important;
    --radius-selector-max: calc(
    var(--radius-selector) + var(--radius-selector) + var(--radius-selector)
  ) !important;
    border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))) !important;
    border: none !important;
    height: var(--range-thumb-size) !important;
    [dir="rtl"] & {
      --range-dir: -1 !important;
    }
    &:focus {
      outline: none !important;
    }
    &:focus-visible {
      outline: 2px solid !important;
      outline-offset: 2px !important;
    }
    &::-webkit-slider-runnable-track {
      width: 100% !important;
      background-color: var(--range-bg) !important;
      border-radius: var(--radius-selector) !important;
      height: calc(var(--range-thumb-size) * 0.5) !important;
    }
    @media (forced-colors: active) {
      &::-webkit-slider-runnable-track {
        border: 1px solid !important;
      }
    }
    @media (forced-colors: active) {
      &::-moz-range-track {
        border: 1px solid !important;
      }
    }
    &::-webkit-slider-thumb {
      position: relative !important;
      box-sizing: border-box !important;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))) !important;
      background-color: currentColor !important;
      height: var(--range-thumb-size) !important;
      width: var(--range-thumb-size) !important;
      border: var(--range-p) solid !important;
      appearance: none !important;
      webkit-appearance: none !important;
      top: 50% !important;
      color: var(--range-progress) !important;
      transform: translateY(-50%) !important;
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill)) !important;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill)) !important;
      }
    }
    &::-moz-range-track {
      width: 100% !important;
      background-color: var(--range-bg) !important;
      border-radius: var(--radius-selector) !important;
      height: calc(var(--range-thumb-size) * 0.5) !important;
    }
    &::-moz-range-thumb {
      position: relative !important;
      box-sizing: border-box !important;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))) !important;
      background-color: currentColor !important;
      height: var(--range-thumb-size) !important;
      width: var(--range-thumb-size) !important;
      border: var(--range-p) solid !important;
      top: 50% !important;
      color: var(--range-progress) !important;
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill)) !important;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill)) !important;
      }
    }
    &:disabled {
      cursor: not-allowed !important;
      opacity: 30% !important;
    }
  }
  .countdown {
    display: inline-flex;
    &.countdown {
      line-height: 1em;
    }
    & > * {
      display: inline-block;
      overflow-y: hidden;
      height: 1em;
      &:before {
        position: relative;
        content: "00\A 01\A 02\A 03\A 04\A 05\A 06\A 07\A 08\A 09\A 10\A 11\A 12\A 13\A 14\A 15\A 16\A 17\A 18\A 19\A 20\A 21\A 22\A 23\A 24\A 25\A 26\A 27\A 28\A 29\A 30\A 31\A 32\A 33\A 34\A 35\A 36\A 37\A 38\A 39\A 40\A 41\A 42\A 43\A 44\A 45\A 46\A 47\A 48\A 49\A 50\A 51\A 52\A 53\A 54\A 55\A 56\A 57\A 58\A 59\A 60\A 61\A 62\A 63\A 64\A 65\A 66\A 67\A 68\A 69\A 70\A 71\A 72\A 73\A 74\A 75\A 76\A 77\A 78\A 79\A 80\A 81\A 82\A 83\A 84\A 85\A 86\A 87\A 88\A 89\A 90\A 91\A 92\A 93\A 94\A 95\A 96\A 97\A 98\A 99\A";
        white-space: pre;
        top: calc(var(--value) * -1em);
        text-align: center;
        transition: all 1s cubic-bezier(1, 0, 0, 1);
      }
    }
  }
  .timeline {
    position: relative;
    display: flex;
    > li {
      position: relative;
      display: grid;
      flex-shrink: 0;
      align-items: center;
      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) );
      > hr {
        border: none;
        width: 100%;
        &:first-child {
          grid-column-start: 1;
          grid-row-start: 2;
        }
        &:last-child {
          grid-column-start: 3;
          grid-column-end: none;
          grid-row-start: 2;
          grid-row-end: auto;
        }
        @media print {
          border: 0.1px solid var(--color-base-300);
        }
      }
    }
    :where(hr) {
      height: calc(0.25rem * 1);
      background-color: var(--color-base-300);
    }
    &:has(.timeline-middle hr) {
      &:first-child {
        border-start-start-radius: 0;
        border-end-start-radius: 0;
        border-start-end-radius: var(--radius-selector);
        border-end-end-radius: var(--radius-selector);
      }
      &:last-child {
        border-start-start-radius: var(--radius-selector);
        border-end-start-radius: var(--radius-selector);
        border-start-end-radius: 0;
        border-end-end-radius: 0;
      }
    }
    &:not(:has(.timeline-middle)) {
      :first-child hr:last-child {
        border-start-start-radius: var(--radius-selector);
        border-end-start-radius: var(--radius-selector);
        border-start-end-radius: 0;
        border-end-end-radius: 0;
      }
      :last-child hr:first-child {
        border-start-start-radius: 0;
        border-end-start-radius: 0;
        border-start-end-radius: var(--radius-selector);
        border-end-end-radius: var(--radius-selector);
      }
    }
  }
  .card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
  }
  .swap {
    position: relative;
    display: inline-grid;
    cursor: pointer;
    place-content: center;
    vertical-align: middle;
    webkit-user-select: none;
    user-select: none;
    input {
      appearance: none;
      border: none;
    }
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
      transition-property: transform, rotate, opacity;
      transition-duration: 0.2s;
      transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
    .swap-on, .swap-indeterminate, input:indeterminate ~ .swap-on {
      opacity: 0%;
    }
    input:is(:checked, :indeterminate) {
      & ~ .swap-off {
        opacity: 0%;
      }
    }
    input:checked ~ .swap-on, input:indeterminate ~ .swap-indeterminate {
      opacity: 100%;
    }
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  .select {
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    background-color: var(--color-base-100);
    padding-inline-start: calc(0.25rem * 4);
    padding-inline-end: calc(0.25rem * 7);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    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-size: 4px 4px, 4px 4px;
    background-repeat: no-repeat;
    text-overflow: ellipsis;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    border-color: var(--input-color);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    [dir="rtl"] & {
      background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
    }
    select {
      margin-inline-start: calc(0.25rem * -4);
      margin-inline-end: calc(0.25rem * -7);
      width: calc(100% + 2.75rem);
      appearance: none;
      padding-inline-start: calc(0.25rem * 4);
      padding-inline-end: calc(0.25rem * 7);
      height: calc(100% - 2px);
      background: inherit;
      border-radius: inherit;
      border-style: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * -5.5);
        background-image: none;
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }
    &:has(> select[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    &:has(> select[disabled]) > select[disabled] {
      cursor: not-allowed;
    }
  }
  .select\! {
    border: var(--border) solid #0000 !important;
    position: relative !important;
    display: inline-flex !important;
    flex-shrink: 1 !important;
    appearance: none !important;
    align-items: center !important;
    gap: calc(0.25rem * 1.5) !important;
    background-color: var(--color-base-100) !important;
    padding-inline-start: calc(0.25rem * 4) !important;
    padding-inline-end: calc(0.25rem * 7) !important;
    vertical-align: middle !important;
    width: clamp(3rem, 20rem, 100%) !important;
    height: var(--size) !important;
    font-size: 0.875rem !important;
    border-start-start-radius: var(--join-ss, var(--radius-field)) !important;
    border-start-end-radius: var(--join-se, var(--radius-field)) !important;
    border-end-start-radius: var(--join-es, var(--radius-field)) !important;
    border-end-end-radius: var(--join-ee, var(--radius-field)) !important;
    background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%) !important;
    background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%) !important;
    background-size: 4px 4px, 4px 4px !important;
    background-repeat: no-repeat !important;
    text-overflow: ellipsis !important;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset !important;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset !important;
    }
    border-color: var(--input-color) !important;
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000) !important;
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000) !important;
    }
    --size: calc(var(--size-field, 0.25rem) * 10) !important;
    [dir="rtl"] & {
      background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%) !important;
    }
    select {
      margin-inline-start: calc(0.25rem * -4) !important;
      margin-inline-end: calc(0.25rem * -7) !important;
      width: calc(100% + 2.75rem) !important;
      appearance: none !important;
      padding-inline-start: calc(0.25rem * 4) !important;
      padding-inline-end: calc(0.25rem * 7) !important;
      height: calc(100% - 2px) !important;
      background: inherit !important;
      border-radius: inherit !important;
      border-style: none !important;
      &:focus, &:focus-within {
        --tw-outline-style: none !important;
        outline-style: none !important;
        @media (forced-colors: active) {
          outline: 2px solid transparent !important;
          outline-offset: 2px !important;
        }
      }
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * -5.5) !important;
        background-image: none !important;
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content) !important;
      box-shadow: 0 1px var(--input-color) !important;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) !important;
      }
      outline: 2px solid var(--input-color) !important;
      outline-offset: 2px !important;
    }
    &:has(> select[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed !important;
      border-color: var(--color-base-200) !important;
      background-color: var(--color-base-200) !important;
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent) !important;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent) !important;
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent) !important;
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent) !important;
        }
      }
    }
    &:has(> select[disabled]) > select[disabled] {
      cursor: not-allowed !important;
    }
  }
  .avatar {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    & > div {
      display: block;
      aspect-ratio: 1 / 1;
      overflow: hidden;
    }
    img {
      height: 100%;
      width: 100%;
      object-fit: cover;
    }
  }
  .checkbox {
    border: var(--border) solid var(--input-color, color-mix(in srgb, var(--color-base-content) 20%, #0000));
    @supports (color: color-mix(in lab, red, red)) {
      border: var(--border) solid var(--input-color, color-mix(in oklab, var(--color-base-content) 20%, #0000));
    }
    position: relative;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    border-radius: var(--radius-selector);
    padding: calc(0.25rem * 1);
    vertical-align: middle;
    color: var(--color-base-content);
    box-shadow: 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 0 #0000 inset, 0 0 #0000;
    transition: background-color 0.2s, box-shadow 0.2s;
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: var(--size);
    height: var(--size);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    &:before {
      --tw-content: "";
      content: var(--tw-content);
      display: block;
      width: 100%;
      height: 100%;
      rotate: 45deg;
      background-color: currentColor;
      opacity: 0%;
      transition: clip-path 0.3s, opacity 0.1s, rotate 0.3s, translate 0.3s;
      transition-delay: 0.1s;
      clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 70% 80%, 70% 100%);
      box-shadow: 0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
      font-size: 1rem;
      line-height: 0.75;
    }
    &:focus-visible {
      outline: 2px solid var(--input-color, currentColor);
      outline-offset: 2px;
    }
    &:checked, &[aria-checked="true"] {
      background-color: var(--input-color, #0000);
      box-shadow: 0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1));
      &:before {
        clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 0%, 70% 0%, 70% 100%);
        opacity: 100%;
      }
      @media (forced-colors: active) {
        &:before {
          rotate: 0deg;
          background-color: transparent;
          --tw-content: "✔︎";
          clip-path: none;
        }
      }
      @media print {
        &:before {
          rotate: 0deg;
          background-color: transparent;
          --tw-content: "✔︎";
          clip-path: none;
        }
      }
    }
    &:indeterminate {
      &:before {
        rotate: 0deg;
        opacity: 100%;
        translate: 0 -35%;
        clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 80% 80%, 80% 100%);
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 20%;
    }
  }
  .radio {
    position: relative;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    border-radius: calc(infinity * 1px);
    padding: calc(0.25rem * 1);
    vertical-align: middle;
    border: var(--border) solid var(--input-color, currentColor);
    @supports (color: color-mix(in lab, red, red)) {
      border: var(--border) solid var(--input-color, color-mix(in srgb, currentColor 20%, #0000));
    }
    box-shadow: 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset;
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: var(--size);
    height: var(--size);
    color: var(--input-color, currentColor);
    &:before {
      display: block;
      width: 100%;
      height: 100%;
      border-radius: calc(infinity * 1px);
      --tw-content: "";
      content: var(--tw-content);
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
    }
    &:focus-visible {
      outline: 2px solid currentColor;
    }
    &:checked, &[aria-checked="true"] {
      animation: radio 0.2s ease-out;
      border-color: currentColor;
      background-color: var(--color-base-100);
      &:before {
        background-color: currentColor;
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1));
      }
      @media (forced-colors: active) {
        &:before {
          outline-style: var(--tw-outline-style);
          outline-width: 1px;
          outline-offset: calc(1px * -1);
        }
      }
      @media print {
        &:before {
          outline: 0.25rem solid;
          outline-offset: -1rem;
        }
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 20%;
    }
  }
  .rating {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    & input {
      border: none;
      appearance: none;
    }
    :where(*) {
      animation: rating 0.25s ease-out;
      height: calc(0.25rem * 6);
      width: calc(0.25rem * 6);
      border-radius: 0;
      background-color: var(--color-base-content);
      opacity: 20%;
      &:is(input) {
        cursor: pointer;
      }
    }
    & .rating-hidden {
      width: calc(0.25rem * 2);
      background-color: transparent;
    }
    input[type="radio"]:checked {
      background-image: none;
    }
    * {
      &:checked, &[aria-checked="true"], &[aria-current="true"], &:has(~ *:checked, ~ *[aria-checked="true"], ~ *[aria-current="true"]) {
        opacity: 100%;
      }
      &:focus-visible {
        transition: scale 0.2s ease-out;
        scale: 1.1;
      }
    }
    & *:active:focus {
      animation: none;
      scale: 1.1;
    }
    &.rating-xs :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 4);
      height: calc(0.25rem * 4);
    }
    &.rating-sm :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 5);
      height: calc(0.25rem * 5);
    }
    &.rating-md :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 6);
      height: calc(0.25rem * 6);
    }
    &.rating-lg :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 7);
      height: calc(0.25rem * 7);
    }
    &.rating-xl :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 8);
      height: calc(0.25rem * 8);
    }
  }
  .stats {
    position: relative;
    display: inline-grid;
    grid-auto-flow: column;
    overflow-x: auto;
    border-radius: var(--radius-box);
  }
  .progress {
    position: relative;
    height: calc(0.25rem * 2);
    width: 100%;
    appearance: none;
    overflow: hidden;
    border-radius: var(--radius-box);
    background-color: currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, currentColor 20%, transparent);
    }
    color: var(--color-base-content);
    &:indeterminate {
      background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
      background-size: 200%;
      background-position-x: 15%;
      animation: progress 5s ease-in-out infinite;
      @supports (-moz-appearance: none) {
        &::-moz-progress-bar {
          background-color: transparent;
          background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
          background-size: 200%;
          background-position-x: 15%;
          animation: progress 5s ease-in-out infinite;
        }
      }
    }
    @supports (-moz-appearance: none) {
      &::-moz-progress-bar {
        border-radius: var(--radius-box);
        background-color: currentColor;
      }
    }
    @supports (-webkit-appearance: none) {
      &::-webkit-progress-bar {
        border-radius: var(--radius-box);
        background-color: transparent;
      }
      &::-webkit-progress-value {
        border-radius: var(--radius-box);
        background-color: currentColor;
      }
    }
  }
  .progress\! {
    position: relative !important;
    height: calc(0.25rem * 2) !important;
    width: 100% !important;
    appearance: none !important;
    overflow: hidden !important;
    border-radius: var(--radius-box) !important;
    background-color: currentColor !important;
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, currentColor 20%, transparent) !important;
    }
    color: var(--color-base-content) !important;
    &:indeterminate {
      background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% ) !important;
      background-size: 200% !important;
      background-position-x: 15% !important;
      animation: progress 5s ease-in-out infinite !important;
      @supports (-moz-appearance: none) {
        &::-moz-progress-bar {
          background-color: transparent !important;
          background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% ) !important;
          background-size: 200% !important;
          background-position-x: 15% !important;
          animation: progress 5s ease-in-out infinite !important;
        }
      }
    }
    @supports (-moz-appearance: none) {
      &::-moz-progress-bar {
        border-radius: var(--radius-box) !important;
        background-color: currentColor !important;
      }
    }
    @supports (-webkit-appearance: none) {
      &::-webkit-progress-bar {
        border-radius: var(--radius-box) !important;
        background-color: transparent !important;
      }
      &::-webkit-progress-value {
        border-radius: var(--radius-box) !important;
        background-color: currentColor !important;
      }
    }
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-7 {
    left: calc(var(--spacing) * 7);
  }
  .textarea {
    border: var(--border) solid #0000;
    min-height: calc(0.25rem * 20);
    flex-shrink: 1;
    appearance: none;
    border-radius: var(--radius-field);
    background-color: var(--color-base-100);
    padding-block: calc(0.25rem * 2);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    padding-inline-start: 0.75rem;
    padding-inline-end: 0.75rem;
    font-size: 0.875rem;
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    textarea {
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> textarea[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> textarea[disabled]) > textarea[disabled] {
      cursor: not-allowed;
    }
  }
  .isolate {
    isolation: isolate;
  }
  .stack {
    display: inline-grid;
    grid-template-columns: 3px 4px 1fr 4px 3px;
    grid-template-rows: 3px 4px 1fr 4px 3px;
    & > * {
      height: 100%;
      width: 100%;
      &:nth-child(n + 2) {
        width: 100%;
        opacity: 70%;
      }
      &:nth-child(2) {
        z-index: 2;
        opacity: 90%;
      }
      &:nth-child(1) {
        z-index: 3;
        width: 100%;
      }
    }
    &, &.stack-bottom {
      > * {
        grid-column: 3 / 4;
        grid-row: 3 / 6;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 6;
          grid-row: 1 / 4;
        }
      }
    }
    &.stack-top {
      > * {
        grid-column: 3 / 4;
        grid-row: 1 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 6;
          grid-row: 3 / 6;
        }
      }
    }
    &.stack-start {
      > * {
        grid-column: 1 / 4;
        grid-row: 3 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 3 / 6;
          grid-row: 1 / 6;
        }
      }
    }
    &.stack-end {
      > * {
        grid-column: 3 / 6;
        grid-row: 3 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 4;
          grid-row: 1 / 6;
        }
      }
    }
  }
  .order-4 {
    order: 4;
  }
  .hero {
    display: grid;
    width: 100%;
    place-items: center;
    background-size: cover;
    background-position: center;
    & > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .divider {
    display: flex;
    height: calc(0.25rem * 4);
    flex-direction: row;
    align-items: center;
    align-self: stretch;
    white-space: nowrap;
    margin: var(--divider-m, 1rem 0);
    --divider-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --divider-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
    }
    &:before, &:after {
      content: "";
      height: calc(0.25rem * 0.5);
      width: 100%;
      flex-grow: 1;
      background-color: var(--divider-color);
    }
    @media print {
      &:before, &:after {
        border: 0.5px solid;
      }
    }
    &:not(:empty) {
      gap: calc(0.25rem * 4);
    }
  }
  .\!filter {
    display: flex !important;
    flex-wrap: wrap !important;
    input[type="radio"] {
      width: auto !important;
    }
    input {
      overflow: hidden !important;
      opacity: 100% !important;
      scale: 1 !important;
      transition: margin 0.1s, opacity 0.3s, padding 0.3s, border-width 0.1s !important;
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * 1) !important;
      }
      &.filter-reset {
        aspect-ratio: 1 / 1 !important;
        &::after {
          content: "×" !important;
        }
      }
    }
    &:not(:has(input:checked:not(.filter-reset))) {
      .filter-reset, input[type="reset"] {
        scale: 0 !important;
        border-width: 0 !important;
        margin-inline: calc(0.25rem * 0) !important;
        width: calc(0.25rem * 0) !important;
        padding-inline: calc(0.25rem * 0) !important;
        opacity: 0% !important;
      }
    }
    &:has(input:checked:not(.filter-reset)) {
      input:not(:checked, .filter-reset, input[type="reset"]) {
        scale: 0 !important;
        border-width: 0 !important;
        margin-inline: calc(0.25rem * 0) !important;
        width: calc(0.25rem * 0) !important;
        padding-inline: calc(0.25rem * 0) !important;
        opacity: 0% !important;
      }
    }
  }
  .filter {
    display: flex;
    flex-wrap: wrap;
    input[type="radio"] {
      width: auto;
    }
    input {
      overflow: hidden;
      opacity: 100%;
      scale: 1;
      transition: margin 0.1s, opacity 0.3s, padding 0.3s, border-width 0.1s;
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * 1);
      }
      &.filter-reset {
        aspect-ratio: 1 / 1;
        &::after {
          content: "×";
        }
      }
    }
    &:not(:has(input:checked:not(.filter-reset))) {
      .filter-reset, input[type="reset"] {
        scale: 0;
        border-width: 0;
        margin-inline: calc(0.25rem * 0);
        width: calc(0.25rem * 0);
        padding-inline: calc(0.25rem * 0);
        opacity: 0%;
      }
    }
    &:has(input:checked:not(.filter-reset)) {
      input:not(:checked, .filter-reset, input[type="reset"]) {
        scale: 0;
        border-width: 0;
        margin-inline: calc(0.25rem * 0);
        width: calc(0.25rem * 0);
        padding-inline: calc(0.25rem * 0);
        opacity: 0%;
      }
    }
  }
  .filter\! {
    display: flex !important;
    flex-wrap: wrap !important;
    input[type="radio"] {
      width: auto !important;
    }
    input {
      overflow: hidden !important;
      opacity: 100% !important;
      scale: 1 !important;
      transition: margin 0.1s, opacity 0.3s, padding 0.3s, border-width 0.1s !important;
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * 1) !important;
      }
      &.filter-reset {
        aspect-ratio: 1 / 1 !important;
        &::after {
          content: "×" !important;
        }
      }
    }
    &:not(:has(input:checked:not(.filter-reset))) {
      .filter-reset, input[type="reset"] {
        scale: 0 !important;
        border-width: 0 !important;
        margin-inline: calc(0.25rem * 0) !important;
        width: calc(0.25rem * 0) !important;
        padding-inline: calc(0.25rem * 0) !important;
        opacity: 0% !important;
      }
    }
    &:has(input:checked:not(.filter-reset)) {
      input:not(:checked, .filter-reset, input[type="reset"]) {
        scale: 0 !important;
        border-width: 0 !important;
        margin-inline: calc(0.25rem * 0) !important;
        width: calc(0.25rem * 0) !important;
        padding-inline: calc(0.25rem * 0) !important;
        opacity: 0% !important;
      }
    }
  }
  .label {
    display: inline-flex;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    white-space: nowrap;
    color: currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentColor 60%, transparent);
    }
    &:has(input) {
      cursor: pointer;
    }
    &:is(.input > *, .select > *) {
      display: flex;
      height: calc(100% - 0.5rem);
      align-items: center;
      padding-inline: calc(0.25rem * 3);
      white-space: nowrap;
      font-size: inherit;
      &:first-child {
        margin-inline-start: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * 3);
        border-inline-end: var(--border) solid currentColor;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
        }
      }
      &:last-child {
        margin-inline-start: calc(0.25rem * 3);
        margin-inline-end: calc(0.25rem * -3);
        border-inline-start: var(--border) solid currentColor;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
        }
      }
    }
  }
  .label\! {
    display: inline-flex !important;
    align-items: center !important;
    gap: calc(0.25rem * 1.5) !important;
    white-space: nowrap !important;
    color: currentColor !important;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentColor 60%, transparent) !important;
    }
    &:has(input) {
      cursor: pointer !important;
    }
    &:is(.input > *, .select > *) {
      display: flex !important;
      height: calc(100% - 0.5rem) !important;
      align-items: center !important;
      padding-inline: calc(0.25rem * 3) !important;
      white-space: nowrap !important;
      font-size: inherit !important;
      &:first-child {
        margin-inline-start: calc(0.25rem * -3) !important;
        margin-inline-end: calc(0.25rem * 3) !important;
        border-inline-end: var(--border) solid currentColor !important;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000) !important;
        }
      }
      &:last-child {
        margin-inline-start: calc(0.25rem * 3) !important;
        margin-inline-end: calc(0.25rem * -3) !important;
        border-inline-start: var(--border) solid currentColor !important;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000) !important;
        }
      }
    }
  }
  .breadcrumbs {
    max-width: 100%;
    overflow-x: auto;
    padding-block: calc(0.25rem * 2);
    > menu, > ul, > ol {
      display: flex;
      min-height: min-content;
      align-items: center;
      white-space: nowrap;
      > li {
        display: flex;
        align-items: center;
        > * {
          display: flex;
          cursor: pointer;
          align-items: center;
          gap: calc(0.25rem * 2);
          &:hover {
            @media (hover: hover) {
              text-decoration-line: underline;
            }
          }
          &:focus {
            --tw-outline-style: none;
            outline-style: none;
            @media (forced-colors: active) {
              outline: 2px solid transparent;
              outline-offset: 2px;
            }
          }
          &:focus-visible {
            outline: 2px solid currentColor;
            outline-offset: 2px;
          }
        }
        & + *:before {
          content: "";
          margin-right: calc(0.25rem * 3);
          margin-left: calc(0.25rem * 2);
          display: block;
          height: calc(0.25rem * 1.5);
          width: calc(0.25rem * 1.5);
          opacity: 40%;
          rotate: 45deg;
          border-top: 1px solid;
          border-right: 1px solid;
          background-color: #0000;
        }
        [dir="rtl"] & + *:before {
          rotate: -135deg;
        }
      }
    }
  }
  .page-title {
    margin-bottom: calc(var(--spacing) * 8);
    text-align: center;
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-primary);
    @media (width >= 48rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
    @media (width >= 40rem) {
      margin-bottom: calc(var(--spacing) * 4);
    }
    @media (width >= 40rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .status {
    display: inline-block;
    aspect-ratio: 1 / 1;
    width: calc(0.25rem * 2);
    height: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    background-color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
    }
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    color: color-mix(in srgb, #000 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, #000 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-black) 30%, transparent);
      }
    }
    background-image: radial-gradient( circle at 35% 30%, oklch(1 0 0 / calc(var(--depth) * 0.5)), #0000 );
    box-shadow: 0 2px 3px -1px currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 2px 3px -1px color-mix(in oklab, currentColor calc(var(--depth) * 100%), #0000);
    }
  }
  .status\! {
    display: inline-block !important;
    aspect-ratio: 1 / 1 !important;
    width: calc(0.25rem * 2) !important;
    height: calc(0.25rem * 2) !important;
    border-radius: var(--radius-selector) !important;
    background-color: color-mix(in srgb, var(--color-base-content) 20%, transparent) !important;
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-base-content) 20%, transparent) !important;
    }
    background-position: center !important;
    background-repeat: no-repeat !important;
    vertical-align: middle !important;
    color: color-mix(in srgb, #000 30%, transparent) !important;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in srgb, #000 30%, transparent) !important;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-black) 30%, transparent) !important;
      }
    }
    background-image: radial-gradient( circle at 35% 30%, oklch(1 0 0 / calc(var(--depth) * 0.5)), #0000 ) !important;
    box-shadow: 0 2px 3px -1px currentColor !important;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 2px 3px -1px color-mix(in oklab, currentColor calc(var(--depth) * 100%), #0000) !important;
    }
  }
  .badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
  }
  .kbd {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-field);
    background-color: var(--color-base-200);
    vertical-align: middle;
    padding-left: 0.5em;
    padding-right: 0.5em;
    border: var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border: var(--border) solid color-mix(in srgb, var(--color-base-content) 20%, #0000);
    }
    border-bottom: calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-bottom: calc(var(--border) + 1px) solid color-mix(in srgb, var(--color-base-content) 20%, #0000);
    }
    --size: calc(var(--size-selector, 0.25rem) * 6);
    font-size: 0.875rem;
    height: var(--size);
    min-width: var(--size);
  }
  .tabs {
    display: flex;
    flex-wrap: wrap;
    --tabs-height: auto;
    --tabs-direction: row;
    height: var(--tabs-height);
    flex-direction: var(--tabs-direction);
  }
  .navbar {
    display: flex;
    width: 100%;
    align-items: center;
    padding: 0.5rem;
    min-height: 4rem;
  }
  .footer {
    display: grid;
    width: 100%;
    grid-auto-flow: row;
    place-items: start;
    column-gap: calc(0.25rem * 4);
    row-gap: calc(0.25rem * 10);
    font-size: 0.875rem;
    line-height: 1.25rem;
    & > * {
      display: grid;
      place-items: start;
      gap: calc(0.25rem * 2);
    }
    &.footer-center {
      grid-auto-flow: column dense;
      place-items: center;
      text-align: center;
      & > * {
        place-items: center;
      }
    }
  }
  .stat {
    display: inline-grid;
    width: 100%;
    column-gap: calc(0.25rem * 4);
    padding-inline: calc(0.25rem * 6);
    padding-block: calc(0.25rem * 4);
    grid-template-columns: repeat(1, 1fr);
    &:not(:last-child) {
      border-inline-end: var(--border) dashed currentColor;
      @supports (color: color-mix(in lab, red, red)) {
        border-inline-end: var(--border) dashed color-mix(in oklab, currentColor 10%, #0000);
      }
      border-block-end: none;
    }
  }
  .card-body {
    display: flex;
    flex: auto;
    flex-direction: column;
    gap: calc(0.25rem * 2);
    padding: var(--card-p, 1.5rem);
    font-size: var(--card-fs, 0.875rem);
    :where(p) {
      flex-grow: 1;
    }
  }
  .alert {
    display: grid;
    align-items: center;
    gap: calc(0.25rem * 4);
    border-radius: var(--radius-box);
    padding-inline: calc(0.25rem * 4);
    padding-block: calc(0.25rem * 3);
    color: var(--color-base-content);
    background-color: var(--alert-color, var(--color-base-200));
    justify-content: start;
    justify-items: start;
    grid-auto-flow: column;
    grid-template-columns: auto;
    text-align: start;
    border: var(--border) solid var(--color-base-200);
    font-size: 0.875rem;
    line-height: 1.25rem;
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    box-shadow: 0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * 0.08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * 0.08));
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * 0.08)) inset, 0 1px color-mix( in oklab, color-mix(in oklab, #000 20%, var(--alert-color, var(--color-base-200))) calc(var(--depth) * 20%), #0000 ), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * 0.08));
    }
    &:has(:nth-child(2)) {
      grid-template-columns: auto minmax(auto, 1fr);
    }
    &.alert-outline {
      background-color: transparent;
      color: var(--alert-color);
      box-shadow: none;
      background-image: none;
    }
    &.alert-dash {
      background-color: transparent;
      color: var(--alert-color);
      border-style: dashed;
      box-shadow: none;
      background-image: none;
    }
    &.alert-soft {
      color: var(--alert-color, var(--color-base-content));
      background: var(--alert-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background: color-mix( in oklab, var(--alert-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--alert-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--alert-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      box-shadow: none;
      background-image: none;
    }
  }
  .fieldset {
    display: grid;
    gap: calc(0.25rem * 1.5);
    padding-block: calc(0.25rem * 1);
    font-size: 0.75rem;
    grid-template-columns: 1fr;
    grid-auto-rows: max-content;
  }
  .card-title {
    display: flex;
    align-items: center;
    gap: calc(0.25rem * 2);
    font-size: var(--cardtitle-fs, 1.125rem);
    font-weight: 600;
  }
  .join {
    display: inline-flex;
    align-items: stretch;
    --join-ss: 0;
    --join-se: 0;
    --join-es: 0;
    --join-ee: 0;
    :where(.join-item) {
      border-start-start-radius: var(--join-ss, 0);
      border-start-end-radius: var(--join-se, 0);
      border-end-start-radius: var(--join-es, 0);
      border-end-end-radius: var(--join-ee, 0);
      * {
        --join-ss: var(--radius-field);
        --join-se: var(--radius-field);
        --join-es: var(--radius-field);
        --join-ee: var(--radius-field);
      }
    }
    > .join-item:where(:first-child) {
      --join-ss: var(--radius-field);
      --join-se: 0;
      --join-es: var(--radius-field);
      --join-ee: 0;
    }
    :first-child:not(:last-child) {
      :where(.join-item) {
        --join-ss: var(--radius-field);
        --join-se: 0;
        --join-es: var(--radius-field);
        --join-ee: 0;
      }
    }
    > .join-item:where(:last-child) {
      --join-ss: 0;
      --join-se: var(--radius-field);
      --join-es: 0;
      --join-ee: var(--radius-field);
    }
    :last-child:not(:first-child) {
      :where(.join-item) {
        --join-ss: 0;
        --join-se: var(--radius-field);
        --join-es: 0;
        --join-ee: var(--radius-field);
      }
    }
    > .join-item:where(:only-child) {
      --join-ss: var(--radius-field);
      --join-se: var(--radius-field);
      --join-es: var(--radius-field);
      --join-ee: var(--radius-field);
    }
    :only-child {
      :where(.join-item) {
        --join-ss: var(--radius-field);
        --join-se: var(--radius-field);
        --join-es: var(--radius-field);
        --join-ee: var(--radius-field);
      }
    }
  }
  .join\! {
    display: inline-flex !important;
    align-items: stretch !important;
    --join-ss: 0 !important;
    --join-se: 0 !important;
    --join-es: 0 !important;
    --join-ee: 0 !important;
    :where(.join-item) {
      border-start-start-radius: var(--join-ss, 0) !important;
      border-start-end-radius: var(--join-se, 0) !important;
      border-end-start-radius: var(--join-es, 0) !important;
      border-end-end-radius: var(--join-ee, 0) !important;
      * {
        --join-ss: var(--radius-field) !important;
        --join-se: var(--radius-field) !important;
        --join-es: var(--radius-field) !important;
        --join-ee: var(--radius-field) !important;
      }
    }
    > .join-item:where(:first-child) {
      --join-ss: var(--radius-field) !important;
      --join-se: 0 !important;
      --join-es: var(--radius-field) !important;
      --join-ee: 0 !important;
    }
    :first-child:not(:last-child) {
      :where(.join-item) {
        --join-ss: var(--radius-field) !important;
        --join-se: 0 !important;
        --join-es: var(--radius-field) !important;
        --join-ee: 0 !important;
      }
    }
    > .join-item:where(:last-child) {
      --join-ss: 0 !important;
      --join-se: var(--radius-field) !important;
      --join-es: 0 !important;
      --join-ee: var(--radius-field) !important;
    }
    :last-child:not(:first-child) {
      :where(.join-item) {
        --join-ss: 0 !important;
        --join-se: var(--radius-field) !important;
        --join-es: 0 !important;
        --join-ee: var(--radius-field) !important;
      }
    }
    > .join-item:where(:only-child) {
      --join-ss: var(--radius-field) !important;
      --join-se: var(--radius-field) !important;
      --join-es: var(--radius-field) !important;
      --join-ee: var(--radius-field) !important;
    }
    :only-child {
      :where(.join-item) {
        --join-ss: var(--radius-field) !important;
        --join-se: var(--radius-field) !important;
        --join-es: var(--radius-field) !important;
        --join-ee: var(--radius-field) !important;
      }
    }
  }
  .chat {
    display: grid;
    column-gap: calc(0.25rem * 3);
    padding-block: calc(0.25rem * 1);
  }
  .prose {
    :root & {
      --tw-prose-body: color-mix(in srgb, var(--color-base-content) 80%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-body: color-mix(in oklab, var(--color-base-content) 80%, #0000);
      }
      --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: color-mix(in srgb, var(--color-base-content) 50%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-bullets: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --tw-prose-hr: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-hr: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-quotes: var(--color-base-content);
      --tw-prose-quote-borders: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-quote-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-captions: color-mix(in srgb, var(--color-base-content) 50%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-captions: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --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: color-mix(in srgb, var(--color-base-content) 50%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-th-borders: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --tw-prose-td-borders: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-td-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-kbd: color-mix(in srgb, var(--color-base-content) 80%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-kbd: color-mix(in oklab, var(--color-base-content) 80%, #0000);
      }
      :where(code):not(pre > code) {
        background-color: var(--color-base-200);
        border-radius: var(--radius-selector);
        border: var(--border) solid var(--color-base-300);
        padding-inline: 0.5em;
        font-weight: inherit;
        &:before, &:after {
          display: none;
        }
      }
    }
  }
  .\!mask {
    display: inline-block !important;
    vertical-align: middle !important;
    mask-size: contain !important;
    mask-repeat: no-repeat !important;
    mask-position: center !important;
  }
  .mask {
    display: inline-block;
    vertical-align: middle;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
  }
  .mask\! {
    display: inline-block !important;
    vertical-align: middle !important;
    mask-size: contain !important;
    mask-repeat: no-repeat !important;
    mask-position: center !important;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-table {
    display: inline-table;
  }
  .table {
    display: table;
  }
  .table\! {
    display: table !important;
  }
  .h-1 {
    height: calc(var(--spacing) * 1);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .w-1 {
    width: calc(var(--spacing) * 1);
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .shrink {
    flex-shrink: 1;
  }
  .grow {
    flex-grow: 1;
  }
  .transform {
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }
  .skeleton {
    border-radius: var(--radius-box);
    background-color: var(--color-base-300);
    @media (prefers-reduced-motion: reduce) {
      transition-duration: 15s;
    }
    will-change: background-position;
    animation: skeleton 1.8s ease-in-out infinite;
    background-image: linear-gradient( 105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100% );
    background-size: 200% auto;
    background-repeat: no-repeat;
    background-position-x: -50%;
  }
  .link {
    cursor: pointer;
    text-decoration-line: underline;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }
  }
  .link\! {
    cursor: pointer !important;
    text-decoration-line: underline !important;
    &:focus {
      --tw-outline-style: none !important;
      outline-style: none !important;
      @media (forced-colors: active) {
        outline: 2px solid transparent !important;
        outline-offset: 2px !important;
      }
    }
    &:focus-visible {
      outline: 2px solid currentColor !important;
      outline-offset: 2px !important;
    }
  }
  .resize {
    resize: both;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .glass {
    border: none;
    backdrop-filter: blur(var(--glass-blur, 40px));
    background-color: #0000;
    background-image: linear-gradient( 135deg, oklch(100% 0 0 / var(--glass-opacity, 30%)) 0%, oklch(0% 0 0 / 0%) 100% ), linear-gradient( var(--glass-reflect-degree, 100deg), oklch(100% 0 0 / var(--glass-reflect-opacity, 5%)) 25%, oklch(0% 0 0 / 0%) 25% );
    box-shadow: 0 0 0 1px oklch(100% 0 0 / var(--glass-border-opacity, 20%)) inset, 0 0 0 2px oklch(0% 0 0 / 5%);
    text-shadow: 0 1px oklch(0% 0 0 / var(--glass-text-shadow-opacity, 5%));
  }
  .to-\[\`Vec\`\] {
    --tw-gradient-to: `Vec`;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-7 {
    padding: calc(var(--spacing) * 7);
  }
  .p-24 {
    padding: calc(var(--spacing) * 24);
  }
  .p-25 {
    padding: calc(var(--spacing) * 25);
  }
  .p-52 {
    padding: calc(var(--spacing) * 52);
  }
  .p-116 {
    padding: calc(var(--spacing) * 116);
  }
  .p-121 {
    padding: calc(var(--spacing) * 121);
  }
  .p-128 {
    padding: calc(var(--spacing) * 128);
  }
  .p-129 {
    padding: calc(var(--spacing) * 129);
  }
  .p-149 {
    padding: calc(var(--spacing) * 149);
  }
  .p-150 {
    padding: calc(var(--spacing) * 150);
  }
  .p-16494 {
    padding: calc(var(--spacing) * 16494);
  }
  .p-16495 {
    padding: calc(var(--spacing) * 16495);
  }
  .text-center {
    text-align: center;
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .sepia {
    --tw-sepia: sepia(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .\!filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,) !important;
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter\! {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,) !important;
  }
  .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;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .btn-primary {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .select-all {
    -webkit-user-select: all;
    user-select: all;
  }
  .\[cargo\:rerun-if-changed\] {
    cargo: rerun-if-changed;
  }
  .\[cargo\:rustc-env\] {
    cargo: rustc-env;
  }
}
button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  height: auto;
  text-transform: none;
  border-color: var(--color-primary);
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  &:hover {
    @media (hover: hover) {
      border-color: var(--color-secondary);
    }
  }
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-secondary);
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-secondary-content);
    }
  }
}
@layer components {
  .btn-primary {
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: var(--color-primary-content);
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-secondary);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-secondary);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-secondary-content);
      }
    }
  }
  .btn-secondary {
    border-color: var(--color-secondary);
    background-color: var(--color-secondary);
    color: var(--color-secondary-content);
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-primary);
      }
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary-content);
      }
    }
  }
  .btn-tertiary {
    border-color: var(--color-accent);
    background-color: var(--color-accent);
    color: var(--color-accent-content);
    &:hover {
      @media (hover: hover) {
        --tw-brightness: brightness(90%);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
      }
    }
  }
  .btn-sm {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .btn-lg {
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .btn-material {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    border-radius: 0.25rem;
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
    text-transform: uppercase;
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: var(--color-primary-content);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
    &:active {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .btn-gradient {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    height: auto;
    text-transform: none;
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
    --tw-gradient-from: var(--color-primary);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    --tw-gradient-to: var(--color-secondary);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    color: var(--color-primary-content);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-brightness: brightness(90%);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
      }
    }
  }
}
body {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  background-color: var(--color-base-100);
  color: var(--color-base-content);
}
@screen sm {
  body {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
h1 {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
h2 {
  margin-bottom: calc(var(--spacing) * 5);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
h3 {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
h4 {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
h5 {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
h6 {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
a {
  color: var(--color-primary);
  text-decoration-line: none;
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
ul, ol {
  list-style-position: inside;
}
img {
  height: auto;
  max-width: 100%;
}
.advertisement {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  position: relative;
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 8);
  width: 100%;
  overflow: hidden;
  background-color: var(--color-base-100);
  text-align: center;
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  &--fading {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    opacity: 0%;
  }
  &:has(.buy-me-coffee) {
    max-width: var(--container-sm);
    padding: calc(var(--spacing) * 4);
  }
  &:has(.gumroad-subscribe-ad) {
    max-width: var(--container-sm);
    padding: calc(var(--spacing) * 4);
  }
  &:has(.video) {
    max-width: var(--container-lg);
    padding: calc(var(--spacing) * 4);
  }
  &:has(.adsbygoogle) {
    max-width: 100%;
    padding: calc(var(--spacing) * 0);
  }
}
.advertisement__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-300);
  background-color: color-mix(in srgb, var(--color-base-200) 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-base-200) 50%, transparent);
  }
  padding: calc(var(--spacing) * 3);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.advertisement__label {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  --tw-tracking: var(--tracking-wider);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
}
.advertisement__timer {
  margin-left: calc(var(--spacing) * 3);
  height: calc(var(--spacing) * 1);
  max-width: calc(var(--spacing) * 16);
  flex: 1;
  overflow: hidden;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-base-300);
}
.advertisement__timer-bar {
  height: 100%;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary);
  animation: advertisement-timer 20s linear infinite;
}
@keyframes advertisement-timer {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}
.advertisement__message {
  margin-bottom: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 4);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, var(--color-warning) 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-warning) 20%, transparent);
  }
  background-color: color-mix(in srgb, var(--color-warning) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
  }
}
.advertisement__container {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--spacing) * 4);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  &:has(.adsbygoogle) {
    min-height: calc(var(--spacing) * 80);
    width: 100%;
    padding: calc(var(--spacing) * 0);
    .adsbygoogle {
      display: block;
      height: calc(var(--spacing) * 80);
      width: 100%;
    }
  }
  &:has(.video) {
    padding: calc(var(--spacing) * 2);
  }
}
.advertisement--loading {
  display: flex;
  min-height: calc(var(--spacing) * 80);
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  &::after {
    content: "";
    pointer-events: none;
    display: inline-block;
    aspect-ratio: 1 / 1;
    background-color: currentColor;
    vertical-align: middle;
    width: calc(var(--size-selector, 0.25rem) * 6);
    mask-size: 100%;
    mask-repeat: no-repeat;
    mask-position: center;
    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");
    width: calc(var(--size-selector, 0.25rem) * 6);
    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");
  }
}
.advertisement:hover {
  --tw-translate-y: -2px;
  translate: var(--tw-translate-x) var(--tw-translate-y);
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
@screen sm {
  .advertisement {
    margin-block: calc(var(--spacing) * 6);
    &:has(.buy-me-coffee) {
      max-width: calc(var(--spacing) * 72);
    }
    &:has(.gumroad-subscribe-ad) {
      max-width: calc(var(--spacing) * 72);
    }
    &:has(.video) {
      max-width: var(--container-md);
    }
    &:has(.adsbygoogle) {
      min-height: calc(var(--spacing) * 70);
    }
  }
  .advertisement__container {
    padding: calc(var(--spacing) * 3);
    &:has(.adsbygoogle) {
      min-height: calc(var(--spacing) * 70);
      .adsbygoogle {
        min-height: calc(var(--spacing) * 70);
      }
    }
  }
  .advertisement__info {
    padding: calc(var(--spacing) * 2);
  }
  .advertisement--loading {
    min-height: calc(var(--spacing) * 70);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}
@screen xs {
  .advertisement {
    margin-inline: calc(var(--spacing) * 4);
    margin-block: calc(var(--spacing) * 4);
    &:has(.buy-me-coffee), &:has(.gumroad-subscribe-ad) {
      max-width: 100%;
    }
  }
}
``` ### `buy_me_coffee.css` ```css .buy-me-coffee {
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  & a {
    display: block;
    text-decoration-line: none;
  }
  & img {
    display: block;
    height: auto;
    max-width: 100%;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    border-radius: var(--radius-lg);
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  &:hover {
    --tw-translate-y: -4px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    & img {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  &:active {
    --tw-translate-y: -1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    & img {
      --tw-scale-x: 102%;
      --tw-scale-y: 102%;
      --tw-scale-z: 102%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
}
@screen sm {
  .buy-me-coffee {
    & img {
      max-width: calc(var(--spacing) * 60);
    }
  }
}
@screen xs {
  .buy-me-coffee {
    & img {
      max-width: calc(var(--spacing) * 48);
    }
  }
}
``` ### `gumroad_subscribe.css` ```css .gumroad-subscribe-ad {
  display: flex;
  flex-direction: column;
  align-items: center;
  --tw-gradient-position: to bottom right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: var(--color-base-100);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-to: var(--color-base-200);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 4);
  max-width: var(--container-sm);
  border-radius: var(--radius-xl);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 500ms;
  transition-duration: 500ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  animation: gumroad-subscribe-ad-slide-in 0.6s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
@keyframes gumroad-subscribe-ad-slide-in {
  0% {
    transform: scale(0.9) translateY(20px);
    opacity: 0;
  }
  100% {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
}
.gumroad-subscribe-ad__message {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-subscribe-ad__cta {
  margin-bottom: calc(var(--spacing) * 6);
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
}
.gumroad-subscribe-ad__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  margin-bottom: calc(var(--spacing) * 3);
  border-radius: calc(infinity * 1px);
  padding-inline: calc(var(--spacing) * 8);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --fontsize: 1.125rem;
  --btn-p: 1.25rem;
  --size: calc(var(--size-field, 0.25rem) * 12);
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  &:active {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  &:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
}
.gumroad-subscribe-ad__button:hover {
  --btn-color: var(--color-accent);
  --btn-fg: var(--color-accent-content);
}
.gumroad-subscribe-ad__note {
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-subscribe-ad:hover {
  --tw-scale-x: 102%;
  --tw-scale-y: 102%;
  --tw-scale-z: 102%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .gumroad-subscribe-ad__message {
    color: var(--color-accent);
  }
}
@screen sm {
  .gumroad-subscribe-ad {
    max-width: calc(var(--spacing) * 72);
    padding: calc(var(--spacing) * 5);
  }
  .gumroad-subscribe-ad__button {
    padding-inline: calc(var(--spacing) * 6);
    --fontsize: 0.875rem;
    --btn-p: 1rem;
    --size: calc(var(--size-field, 0.25rem) * 10);
  }
}
@screen xs {
  .gumroad-subscribe-ad {
    margin-inline: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 4);
  }
}
.blog-ad {
  --tw-gradient-position: to bottom right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: var(--color-base-100);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-to: var(--color-base-200);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 4);
  max-width: var(--container-sm);
  border-radius: var(--radius-xl);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 500ms;
  transition-duration: 500ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  animation: blog-ad-fade-in 0.8s ease-out;
}
@keyframes blog-ad-fade-in {
  0% {
    transform: translateY(20px) scale(0.95);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}
.blog-ad__header {
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.blog-ad__icon {
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  padding: calc(var(--spacing) * 2);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.blog-ad__title {
  flex: 1;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.blog-ad__image {
  margin-bottom: calc(var(--spacing) * 4);
  overflow: hidden;
  border-radius: var(--radius-lg);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  & img {
    height: calc(var(--spacing) * 32);
    width: 100%;
    object-fit: cover;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
}
.blog-ad__content {
  margin-bottom: calc(var(--spacing) * 5);
}
.blog-ad__preview {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.blog-ad__actions {
  margin-bottom: calc(var(--spacing) * 3);
}
.blog-ad__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  width: 100%;
  max-width: calc(0.25rem * 64);
  border-radius: calc(infinity * 1px);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  &:active {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  &:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
}
.blog-ad__button:hover {
  --btn-color: var(--color-accent);
  --btn-fg: var(--color-accent-content);
  .blog-ad__arrow {
    --tw-translate-x: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}
.blog-ad__arrow {
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.blog-ad__note {
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.blog-ad:hover {
  --tw-scale-x: 102%;
  --tw-scale-y: 102%;
  --tw-scale-z: 102%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  border-color: color-mix(in srgb, var(--color-primary) 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-primary) 30%, transparent);
  }
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .blog-ad__title {
    color: var(--color-accent);
  }
  .blog-ad__icon {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .blog-ad__image img {
    --tw-scale-x: 105%;
    --tw-scale-y: 105%;
    --tw-scale-z: 105%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
}
@screen sm {
  .blog-ad {
    max-width: calc(var(--spacing) * 80);
    padding: calc(var(--spacing) * 5);
  }
  .blog-ad__button {
    --fontsize: 0.875rem;
    --btn-p: 1rem;
    --size: calc(var(--size-field, 0.25rem) * 10);
  }
  .blog-ad__image {
    & img {
      height: calc(var(--spacing) * 28);
    }
  }
}
@screen xs {
  .blog-ad {
    margin-inline: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 4);
  }
  .blog-ad__image {
    & img {
      height: calc(var(--spacing) * 24);
    }
  }
}
.buy-me-coffee {
  & a {
    display: block;
    text-decoration-line: none;
  }
  & img {
    display: block;
    height: auto;
    max-width: 100%;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  &:hover {
    --tw-translate-y: -2px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    & img {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
}
@media (max-width: 640px) {
  .buy-me-coffee {
    position: absolute;
    right: calc(var(--spacing) * 6);
    bottom: calc(var(--spacing) * 6);
    & img {
      max-width: 180px;
    }
  }
}
.gumroad-subscribe-ad {
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 8);
  display: flex;
  max-width: var(--container-xs);
  flex-direction: column;
  align-items: center;
  border-radius: var(--radius-xl);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 8);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  animation: gumroad-subscribe-ad-pop 0.7s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
@keyframes gumroad-subscribe-ad-pop {
  0% {
    transform: scale(0.8) translateY(30px);
    opacity: 0;
  }
  100% {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
}
.gumroad-subscribe-ad__message {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-base-content);
}
.gumroad-subscribe-ad__cta {
  margin-bottom: calc(var(--spacing) * 5);
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
}
.gumroad-subscribe-ad__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  margin-bottom: calc(var(--spacing) * 2);
  border-radius: var(--radius-lg);
  padding-inline: calc(var(--spacing) * 6);
  padding-block: calc(var(--spacing) * 3);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
  transition: background 0.2s, transform 0.2s;
}
.gumroad-subscribe-ad__button:hover, .gumroad-subscribe-ad__button:focus {
  --btn-color: var(--color-accent);
  --btn-fg: var(--color-accent-content);
  transform: translateY(-2px) scale(1.04);
}
.gumroad-subscribe-ad__note {
  margin-top: calc(var(--spacing) * 1);
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.gumroad-product-ad {
  --tw-gradient-position: to bottom right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: var(--color-base-100);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-via: var(--color-base-100);
  --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-via-stops);
  --tw-gradient-to: color-mix(in srgb, var(--color-accent) 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-gradient-to: color-mix(in oklab, var(--color-accent) 5%, transparent);
  }
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  position: relative;
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 4);
  max-width: var(--container-sm);
  border-radius: var(--radius-xl);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 500ms;
  transition-duration: 500ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  overflow: hidden;
  animation: gumroad-product-ad-slide-up 0.8s ease-out;
}
@keyframes gumroad-product-ad-slide-up {
  0% {
    transform: translateY(30px) scale(0.95);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}
.gumroad-product-ad__badge {
  position: absolute;
  top: calc(var(--spacing) * -2);
  right: calc(var(--spacing) * -2);
  z-index: 10;
}
.gumroad-product-ad__discount {
  border-radius: calc(infinity * 1px);
  background-color: var(--color-error);
  padding-inline: calc(var(--spacing) * 3);
  padding-block: calc(var(--spacing) * 1);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-error-content);
  rotate: 12deg;
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  animation: gumroad-product-ad-pulse 2s ease-in-out infinite;
}
@keyframes gumroad-product-ad-pulse {
  0%, 100% {
    transform: rotate(12deg) scale(1);
  }
  50% {
    transform: rotate(12deg) scale(1.05);
  }
}
.gumroad-product-ad__header {
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.gumroad-product-ad__icon {
  border-radius: calc(infinity * 1px);
  background-color: color-mix(in srgb, var(--color-accent) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-accent) 10%, transparent);
  }
  padding: calc(var(--spacing) * 2);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-product-ad__title {
  flex: 1;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-accent);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-product-ad__image {
  margin-bottom: calc(var(--spacing) * 4);
  overflow: hidden;
  border-radius: var(--radius-lg);
  background-color: var(--color-base-200);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  & img {
    height: calc(var(--spacing) * 36);
    width: 100%;
    object-fit: cover;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
}
.gumroad-product-ad__content {
  margin-bottom: calc(var(--spacing) * 5);
}
.gumroad-product-ad__description {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-product-ad__price {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-success);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.gumroad-product-ad__actions {
  margin-bottom: calc(var(--spacing) * 4);
}
.gumroad-product-ad__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  width: 100%;
  max-width: calc(0.25rem * 64);
  border-radius: calc(infinity * 1px);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  --btn-color: var(--color-accent);
  --btn-fg: var(--color-accent-content);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-out);
  transition-timing-function: var(--ease-out);
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-scale-x: 105%;
      --tw-scale-y: 105%;
      --tw-scale-z: 105%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  &:active {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  &:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
  color: var(--color-accent-content);
}
.gumroad-product-ad__button:hover {
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
  .gumroad-product-ad__arrow {
    --tw-translate-x: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}
.gumroad-product-ad__arrow {
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-product-ad__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: color-mix(in srgb, var(--color-base-300) 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-base-300) 50%, transparent);
  }
  padding-top: calc(var(--spacing) * 3);
}
.gumroad-product-ad__powered {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gumroad-product-ad__secure {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 1);
}
.gumroad-product-ad:hover {
  --tw-scale-x: 102%;
  --tw-scale-y: 102%;
  --tw-scale-z: 102%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  border-color: color-mix(in srgb, var(--color-accent) 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-accent) 30%, transparent);
  }
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .gumroad-product-ad__title {
    color: var(--color-primary);
  }
  .gumroad-product-ad__icon {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    background-color: color-mix(in srgb, var(--color-accent) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-accent) 20%, transparent);
    }
  }
  .gumroad-product-ad__image img {
    --tw-scale-x: 105%;
    --tw-scale-y: 105%;
    --tw-scale-z: 105%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .gumroad-product-ad__powered {
    color: var(--color-accent);
  }
}
@screen sm {
  .gumroad-product-ad {
    max-width: calc(var(--spacing) * 80);
    padding: calc(var(--spacing) * 5);
  }
  .gumroad-product-ad__button {
    --fontsize: 0.875rem;
    --btn-p: 1rem;
    --size: calc(var(--size-field, 0.25rem) * 10);
  }
  .gumroad-product-ad__image {
    & img {
      height: calc(var(--spacing) * 32);
    }
  }
}
@screen xs {
  .gumroad-product-ad {
    margin-inline: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 4);
  }
  .gumroad-product-ad__image {
    & img {
      height: calc(var(--spacing) * 28);
    }
  }
  .gumroad-product-ad__footer {
    flex-direction: column;
    gap: calc(var(--spacing) * 1);
    text-align: center;
  }
}
.average-time-taken {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  border-radius: var(--radius-xl);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .average-time-taken__header {
    margin-bottom: calc(var(--spacing) * 6);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .average-time-taken__title {
    margin: calc(var(--spacing) * 0);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .average-time-taken__trend {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .average-time-taken__trend--improving {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
    color: var(--color-success);
  }
  .average-time-taken__trend--declining {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
    color: var(--color-error);
  }
  .average-time-taken__trend--stable {
    background-color: color-mix(in srgb, var(--color-info) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-info) 10%, transparent);
    }
    color: var(--color-info);
  }
  .average-time-taken__trend-icon {
    &.fa-arrow-up {
      color: var(--color-success);
    }
    &.fa-arrow-down {
      color: var(--color-error);
    }
    &.fa-arrows-left-right {
      color: var(--color-info);
    }
  }
  .average-time-taken__content {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 6);
  }
  .average-time-taken__value-container {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .average-time-taken__value {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .average-time-taken__value-number {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-base-content);
  }
  .average-time-taken__value-label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .average-time-taken__gauge {
    height: calc(var(--spacing) * 2);
    width: 100%;
    overflow: hidden;
    border-radius: 0.25rem;
    background-color: var(--color-base-200);
  }
  .average-time-taken__gauge-fill {
    height: 100%;
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    background: linear-gradient( 90deg, oklch(var(--p)) 0%, oklch(var(--su)) 100% );
  }
  .average-time-taken__details {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .average-time-taken__description {
    margin: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .average-time-taken__thresholds {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .average-time-taken__threshold {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .average-time-taken__threshold-marker {
    border-radius: 0.25rem;
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .average-time-taken__threshold-marker--fast {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
    color: var(--color-success);
  }
  .average-time-taken__threshold-marker--medium {
    background-color: color-mix(in srgb, var(--color-warning) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
    }
    color: var(--color-warning);
  }
  .average-time-taken__threshold-marker--slow {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
    color: var(--color-error);
  }
  .average-time-taken__threshold-label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
}
.success-rate {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  border-radius: var(--radius-xl);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .success-rate__header {
    margin-bottom: calc(var(--spacing) * 6);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .success-rate__title {
    margin: calc(var(--spacing) * 0);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .success-rate__trend {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .success-rate__trend--improving {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
    color: var(--color-success);
  }
  .success-rate__trend--declining {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
    color: var(--color-error);
  }
  .success-rate__trend--stable {
    background-color: color-mix(in srgb, var(--color-info) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-info) 10%, transparent);
    }
    color: var(--color-info);
  }
  .success-rate__content {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 6);
  }
  .success-rate__value-container {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .success-rate__value {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .success-rate__percentage {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-base-content);
  }
  .success-rate__label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .success-rate__gauge {
    height: calc(var(--spacing) * 2);
    width: 100%;
    overflow: hidden;
    border-radius: 0.25rem;
    background-color: var(--color-base-200);
  }
  .success-rate__gauge-fill {
    height: 100%;
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    background: linear-gradient( 90deg, oklch(var(--p)) 0%, oklch(var(--su)) 100% );
  }
  .success-rate__details {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .success-rate__description {
    margin: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .success-rate__thresholds {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .success-rate__threshold {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 3);
  }
  .success-rate__threshold-marker {
    border-radius: 0.25rem;
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .success-rate__threshold-marker--high {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
    color: var(--color-success);
  }
  .success-rate__threshold-marker--medium {
    background-color: color-mix(in srgb, var(--color-warning) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
    }
    color: var(--color-warning);
  }
  .success-rate__threshold-marker--low {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
    color: var(--color-error);
  }
  .success-rate__threshold-label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
}
.app-dependencies {
  padding: calc(var(--spacing) * 4);
  .app-dependencies__header {
    margin-bottom: calc(var(--spacing) * 2);
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .app-dependencies__toggle {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentColor;
        --btn-fg: currentColor;
      }
    }
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .app-dependencies__count {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .app-dependencies__licenses {
    margin-bottom: calc(var(--spacing) * 4);
    display: flex;
    flex-wrap: wrap;
    gap: calc(var(--spacing) * 1);
  }
  .app-dependencies__search {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    margin-bottom: calc(var(--spacing) * 4);
    width: 100%;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .app-dependencies__list {
    display: flex;
    max-height: 400px;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    overflow-y: auto;
  }
  .app-dependencies__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-base-200);
    padding: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-200);
      }
    }
  }
  .app-dependencies__name {
    margin-right: calc(var(--spacing) * 4);
  }
  .app-dependencies__item-licenses {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .license-group {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    &:not(:last-child)::after {
      content: "OR";
      margin-inline: calc(var(--spacing) * 1);
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
    }
  }
  .license-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
    border-color: var(--color-base-200);
    background-color: var(--color-base-200);
    color: var(--color-base-content);
    background-image: none;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    &--small {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: calc(0.25rem * 2);
      border-radius: var(--radius-selector);
      vertical-align: middle;
      color: var(--badge-fg);
      border: var(--border) solid var(--badge-color, var(--color-base-200));
      font-size: 0.875rem;
      width: fit-content;
      padding-inline: calc(0.25rem * 3 - var(--border));
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
      background-color: var(--badge-bg);
      --badge-bg: var(--badge-color, var(--color-base-100));
      --badge-fg: var(--color-base-content);
      --size: calc(var(--size-selector, 0.25rem) * 6);
      height: var(--size);
      &.badge-outline {
        --badge-fg: var(--badge-color);
        --badge-bg: #0000;
        background-image: none;
      }
      &.badge-dash {
        --badge-fg: var(--badge-color);
        --badge-bg: #0000;
        border-style: dashed;
        background-image: none;
      }
      &.badge-soft {
        color: var(--badge-color, var(--color-base-content));
        background-color: var(--badge-color, var(--color-base-content));
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
        }
        border-color: var(--badge-color, var(--color-base-content));
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
        }
        background-image: none;
      }
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
      background-image: none;
      --size: calc(var(--size-selector, 0.25rem) * 5);
      font-size: 0.75rem;
      padding-inline: calc(0.25rem * 2.5 - var(--border));
    }
    &--requirement {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: calc(0.25rem * 2);
      border-radius: var(--radius-selector);
      vertical-align: middle;
      color: var(--badge-fg);
      border: var(--border) solid var(--badge-color, var(--color-base-200));
      font-size: 0.875rem;
      width: fit-content;
      padding-inline: calc(0.25rem * 3 - var(--border));
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
      background-color: var(--badge-bg);
      --badge-bg: var(--badge-color, var(--color-base-100));
      --badge-fg: var(--color-base-content);
      --size: calc(var(--size-selector, 0.25rem) * 6);
      height: var(--size);
      &.badge-outline {
        --badge-fg: var(--badge-color);
        --badge-bg: #0000;
        background-image: none;
      }
      &.badge-dash {
        --badge-fg: var(--badge-color);
        --badge-bg: #0000;
        border-style: dashed;
        background-image: none;
      }
      &.badge-soft {
        color: var(--badge-color, var(--color-base-content));
        background-color: var(--badge-color, var(--color-base-content));
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
        }
        border-color: var(--badge-color, var(--color-base-content));
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
        }
        background-image: none;
      }
    }
  }
}
.app-version {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  max-width: 400px;
  border-radius: var(--radius-md);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 4);
  font-family: var(--font-mono);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .app-version__main {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .app-version__version, .app-version__build {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
  }
  .app-version__details {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-base-300);
    padding-top: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .app-version__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 4);
  }
  .app-version__label {
    display: flex;
    min-width: 100px;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .app-version__value {
    overflow: hidden;
    text-align: right;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    text-overflow: ellipsis;
    color: var(--color-base-content);
  }
}
@screen sm {
  .app-version {
    width: 100%;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    .app-version__main {
      gap: calc(var(--spacing) * 1);
    }
    .app-version__label {
      min-width: 80px;
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
    .app-version__value {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
}
.badge__content {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  background-color: var(--color-primary);
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  color: var(--color-primary-content);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  position: relative;
  right: calc(var(--spacing) * 8);
  z-index: 50;
  cursor: pointer;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.badge__content:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.badge__label {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.badge__tooltip {
  position: relative;
  display: inline-block;
  --tt-bg: var(--color-neutral);
  --tt-off: calc(100% + 0.5rem);
  --tt-tail: calc(100% + 1px + 0.25rem);
  > :where(.tooltip-content), &[data-tip]:before {
    position: absolute;
    max-width: 20rem;
    border-radius: var(--radius-field);
    padding-inline: calc(0.25rem * 2);
    padding-block: calc(0.25rem * 1);
    text-align: center;
    white-space: normal;
    color: var(--color-neutral-content);
    opacity: 0%;
    font-size: 0.875rem;
    line-height: 1.25em;
    transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
    background-color: var(--tt-bg);
    width: max-content;
    pointer-events: none;
    z-index: 1;
    --tw-content: attr(data-tip);
    content: var(--tw-content);
  }
  &:after {
    position: absolute;
    position: absolute;
    opacity: 0%;
    background-color: var(--tt-bg);
    transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 75ms;
    content: "";
    pointer-events: none;
    width: 0.625rem;
    height: 0.25rem;
    display: block;
    mask-repeat: no-repeat;
    mask-position: -1px 0;
    --mask-tooltip: url("data:image/svg+xml,%3Csvg width='10' height='4' viewBox='0 0 8 4' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.500009 1C3.5 1 3.00001 4 5.00001 4C7 4 6.5 1 9.5 1C10 1 10 0.499897 10 0H0C-1.99338e-08 0.5 0 1 0.500009 1Z' fill='black'/%3E%3C/svg%3E%0A");
    mask-image: var(--mask-tooltip);
  }
  &.tooltip-open, &[data-tip]:hover, &:hover, &:has(:focus-visible) {
    > .tooltip-content, &[data-tip]:before, &:after {
      opacity: 100%;
      --tt-pos: 0rem;
      transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0s, transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) 0ms;
    }
  }
  > .tooltip-content, &[data-tip]:before {
    transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
    inset: auto auto var(--tt-off) 50%;
  }
  &:after {
    transform: translateX(-50%) translateY(var(--tt-pos, 0.25rem));
    inset: auto auto var(--tt-tail) 50%;
  }
  position: absolute;
  > .tooltip-content, &[data-tip]:before {
    transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem));
    inset: var(--tt-off) auto auto 50%;
  }
  &:after {
    transform: translateX(-50%) translateY(var(--tt-pos, -0.25rem)) rotate(180deg);
    inset: var(--tt-tail) auto auto 50%;
  }
  bottom: calc(var(--spacing) * -2);
  left: calc(1/2 * 100%);
  width: 150px;
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  background-color: var(--color-primary);
  color: var(--color-primary-content);
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 2);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  visibility: hidden;
  --tw-translate-y: calc(var(--spacing) * -2);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  opacity: 0%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  z-index: 100;
  --tw-translate-x: calc(calc(1/2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  pointer-events: none;
}
.badge__content:hover .badge__tooltip {
  visibility: visible;
  --tw-translate-y: calc(var(--spacing) * 0);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  opacity: 100%;
}
@media (max-width: 639px) {
  .badge__content {
    display: none;
  }
}
.chat-content {
  width: 300px;
  max-width: 90%;
  min-width: max-content;
  .chat__bubble {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    white-space: nowrap;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .chat__bubble-icon {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .chat__bubble-text {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .chat__content {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
    background-color: var(--color-base-100);
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    display: flex;
    height: 400px;
    flex-direction: column;
    overflow: hidden;
  }
  .chat__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-base-300);
  }
  .chat__header-title {
    overflow: hidden;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .chat__header-close {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    border-radius: calc(infinity * 1px);
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentColor;
        --btn-fg: currentColor;
      }
    }
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .chat__messages {
    flex: 1;
    overflow-y: auto;
    padding: calc(var(--spacing) * 4);
    padding-bottom: 76px;
    .chat-comp {
      display: flex;
      flex-direction: column;
      gap: calc(var(--spacing) * 4);
    }
    .message-comp {
      width: 100%;
      max-width: 80%;
    }
    .message-comp:nth-child(odd) {
      align-self: flex-end;
    }
    .message-comp:nth-child(even) {
      align-self: flex-start;
    }
    .message-header {
      margin-bottom: calc(var(--spacing) * 1);
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding-inline: calc(var(--spacing) * 2);
    }
    .message-sender {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
      color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
      }
    }
    .message-timestamp {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
      color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
      }
    }
    .message-comp:nth-child(odd) .message-content {
      position: relative;
      display: block;
      width: fit-content;
      border-radius: var(--radius-field);
      background-color: var(--color-base-300);
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 2);
      color: var(--color-base-content);
      grid-row-end: 3;
      min-height: 2rem;
      min-width: 2.5rem;
      max-width: 90%;
      &:before {
        position: absolute;
        bottom: calc(0.25rem * 0);
        height: calc(0.25rem * 3);
        width: calc(0.25rem * 3);
        background-color: inherit;
        content: "";
        mask-repeat: no-repeat;
        mask-image: var(--mask-chat);
        mask-position: 0px -1px;
        mask-size: 13px;
      }
      background-color: var(--color-primary);
      color: var(--color-primary-content);
    }
    .message-comp:nth-child(even) .message-content {
      position: relative;
      display: block;
      width: fit-content;
      border-radius: var(--radius-field);
      background-color: var(--color-base-300);
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 2);
      color: var(--color-base-content);
      grid-row-end: 3;
      min-height: 2rem;
      min-width: 2.5rem;
      max-width: 90%;
      &:before {
        position: absolute;
        bottom: calc(0.25rem * 0);
        height: calc(0.25rem * 3);
        width: calc(0.25rem * 3);
        background-color: inherit;
        content: "";
        mask-repeat: no-repeat;
        mask-image: var(--mask-chat);
        mask-position: 0px -1px;
        mask-size: 13px;
      }
      background-color: var(--color-secondary);
      color: var(--color-secondary-content);
    }
  }
  .input-form {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 4);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-base-300);
    background-color: var(--color-base-100);
    position: absolute;
    right: calc(var(--spacing) * 0);
    bottom: calc(var(--spacing) * 0);
    left: calc(var(--spacing) * 0);
  }
  .input-field {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    flex: 1;
  }
  .send-button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    border-radius: calc(infinity * 1px);
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  &.chat--expanded {
    .chat__bubble {
      display: none;
    }
    .chat__content {
      display: flex;
    }
  }
  @screen sm {
    width: calc(var(--spacing) * 20);
    .chat__bubble-text {
      margin: calc(var(--spacing) * 0);
      width: calc(var(--spacing) * 0);
      overflow: hidden;
      opacity: 0%;
    }
    .chat__bubble:hover .chat__bubble-text {
      margin-left: calc(var(--spacing) * 2);
      width: auto;
      opacity: 100%;
    }
    &.chat--expanded {
      width: 280px;
      .chat__bubble {
        display: none;
      }
    }
  }
}
.challenge-actions {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-top: calc(var(--spacing) * 8);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  width: 100%;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  .challenge-actions__buttons {
    gap: calc(var(--spacing) * 4);
  }
  .challenge-actions__button--next {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .challenge-actions__button--previous {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentColor;
        --btn-fg: currentColor;
      }
    }
  }
  .challenge-actions__button--help {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    &:not( .btn-active, :hover, :active:focus, :focus-visible, :disabled, [disabled], .btn-disabled, :checked ) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-fg: var(--btn-color);
      --btn-border: var(--btn-color);
      --btn-noise: none;
    }
  }
  @screen sm {
    .challenge-actions__button--next {
      --fontsize: 0.75rem;
      --btn-p: 0.75rem;
      --size: calc(var(--size-field, 0.25rem) * 8);
    }
    .challenge-actions__button--previous {
      --fontsize: 0.75rem;
      --btn-p: 0.75rem;
      --size: calc(var(--size-field, 0.25rem) * 8);
    }
    .challenge-actions__button--help {
      --fontsize: 0.75rem;
      --btn-p: 0.75rem;
      --size: calc(var(--size-field, 0.25rem) * 8);
    }
  }
}
.challenge {
  display: flex;
  width: 100%;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
}
.challenge__header {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: calc(var(--spacing) * 4);
  margin-bottom: calc(var(--spacing) * 6);
}
.challenge__header .challenge-info {
  flex-grow: 1;
}
.challenge__header .challenge-timer {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: calc(var(--spacing) * 1);
  min-width: 120px;
}
.challenge-config {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  z-index: 20;
  background-color: var(--color-base-300);
  display: flex;
  height: auto;
  width: 100%;
  flex-grow: 1;
  flex-direction: column;
}
.contextual-choice {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.contextual-choice__progress {
  margin-bottom: calc(var(--spacing) * 6);
}
.contextual-choice__item {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  text-align: center;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-base-content);
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.contextual-choice__item span {
  display: inline;
}
.contextual-choice__select {
  border: var(--border) solid #0000;
  position: relative;
  display: inline-flex;
  flex-shrink: 1;
  appearance: none;
  align-items: center;
  gap: calc(0.25rem * 1.5);
  background-color: var(--color-base-100);
  padding-inline-start: calc(0.25rem * 4);
  padding-inline-end: calc(0.25rem * 7);
  vertical-align: middle;
  width: clamp(3rem, 20rem, 100%);
  height: var(--size);
  font-size: 0.875rem;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  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-size: 4px 4px, 4px 4px;
  background-repeat: no-repeat;
  text-overflow: ellipsis;
  box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
  @supports (color: color-mix(in lab, red, red)) {
    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) * 0.1)) inset;
  }
  border-color: var(--input-color);
  --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
  @supports (color: color-mix(in lab, red, red)) {
    --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
  }
  --size: calc(var(--size-field, 0.25rem) * 10);
  [dir="rtl"] & {
    background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
  }
  select {
    margin-inline-start: calc(0.25rem * -4);
    margin-inline-end: calc(0.25rem * -7);
    width: calc(100% + 2.75rem);
    appearance: none;
    padding-inline-start: calc(0.25rem * 4);
    padding-inline-end: calc(0.25rem * 7);
    height: calc(100% - 2px);
    background: inherit;
    border-radius: inherit;
    border-style: none;
    &:focus, &:focus-within {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:not(:last-child) {
      margin-inline-end: calc(0.25rem * -5.5);
      background-image: none;
    }
  }
  &:focus, &:focus-within {
    --input-color: var(--color-base-content);
    box-shadow: 0 1px var(--input-color);
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
    }
    outline: 2px solid var(--input-color);
    outline-offset: 2px;
  }
  &:has(> select[disabled]), &:is(:disabled, [disabled]) {
    cursor: not-allowed;
    border-color: var(--color-base-200);
    background-color: var(--color-base-200);
    color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
    }
    &::placeholder {
      color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
      }
    }
  }
  &:has(> select[disabled]) > select[disabled] {
    cursor: not-allowed;
  }
  &, &:focus, &:focus-within {
    --input-color: var(--color-primary);
  }
  margin-inline: calc(var(--spacing) * 1);
  display: inline-block;
  min-width: 160px;
  border-radius: var(--radius-sm);
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-primary);
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 1);
  cursor: pointer;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  text-align: center;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.contextual-choice__select:hover, .contextual-choice__select:focus {
  border-color: color-mix(in srgb, var(--color-primary) 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-primary) 90%, transparent);
  }
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-shadow-color: color-mix(in srgb, var(--color-primary) 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-shadow-color: color-mix(in oklab, color-mix(in oklab, var(--color-primary) 20%, transparent) var(--tw-shadow-alpha), transparent);
  }
}
.contextual-choice__select:disabled {
  cursor: not-allowed;
  background-color: var(--color-base-200);
  opacity: 70%;
}
.contextual-choice__select option {
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 1);
}
.contextual-choice__help {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  border-color: var(--color-info);
  animation: slideInHelp 0.3s ease-out;
}
.contextual-choice__help-title {
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.contextual-choice__help-text {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.contextual-choice__help-hints-title {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.contextual-choice__help-hint {
  margin-bottom: calc(var(--spacing) * 1);
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
}
.contextual-choice__help-hint strong {
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
}
@keyframes slideInHelp {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes selectPulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
.contextual-choice__select:focus {
  animation: selectPulse 0.3s ease;
}
@screen sm {
  .contextual-choice {
    padding: calc(var(--spacing) * 4);
  }
  .contextual-choice__item {
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .contextual-choice__select {
    min-width: 120px;
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .contextual-choice__help {
    padding: calc(var(--spacing) * 3);
  }
  .contextual-choice__help-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .contextual-choice__help-text, .contextual-choice__help-hints-title, .contextual-choice__help-hint {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.gap-fill {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.gap-fill__sentence {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  text-align: center;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
  color: var(--color-base-content);
}
.gap-fill__gap {
  margin-inline: calc(var(--spacing) * 1);
  display: inline-block;
  min-width: 80px;
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 1);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 2px;
  border-color: var(--color-primary);
  color: var(--color-primary);
  cursor: pointer;
  text-align: center;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.gap-fill__gap:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
}
.gap-fill__gap--selected {
  background-color: var(--color-primary);
  color: var(--color-primary-content);
}
.gap-fill__gap--correct {
  border-color: var(--color-success);
  color: var(--color-success);
}
.gap-fill__gap--incorrect {
  border-color: var(--color-error);
  color: var(--color-error);
}
.gap-fill__options {
  margin-top: calc(var(--spacing) * 6);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
.gap-fill__option {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 2);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  cursor: pointer;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.gap-fill__option:hover {
  --tw-scale-x: 105%;
  --tw-scale-y: 105%;
  --tw-scale-z: 105%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  background-color: var(--color-primary);
  color: var(--color-primary-content);
}
.gap-fill__option--selected {
  background-color: var(--color-primary);
  color: var(--color-primary-content);
}
.gap-fill__hints {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-top: calc(var(--spacing) * 6);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  border-color: var(--color-info);
}
.gap-fill__hints-title {
  margin-bottom: calc(var(--spacing) * 2);
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.gap-fill__hints-list {
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
}
.gap-fill__translation {
  text-align: center;
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
  margin-top: calc(var(--spacing) * 4);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding-top: calc(var(--spacing) * 4);
}
@screen sm {
  .gap-fill {
    padding: calc(var(--spacing) * 4);
  }
  .gap-fill__sentence {
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .gap-fill__gap {
    min-width: 60px;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .gap-fill__option {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.gap-fill-result__title {
  margin-bottom: calc(var(--spacing) * 6);
}
.gap-fill-result__table {
  font-size: 0.875rem;
  position: relative;
  width: 100%;
  border-radius: var(--radius-box);
  text-align: left;
  &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    text-align: right;
  }
  tr.row-hover {
    &, &:nth-child(even) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-base-200);
        }
      }
    }
  }
  :where(th, td) {
    padding-inline: calc(0.25rem * 4);
    padding-block: calc(0.25rem * 3);
    vertical-align: middle;
  }
  :where(thead, tfoot) {
    white-space: nowrap;
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
    font-size: 0.875rem;
    font-weight: 600;
  }
  :where(tfoot) {
    border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
    }
  }
  :where(.table-pin-rows thead tr) {
    position: sticky;
    top: calc(0.25rem * 0);
    z-index: 1;
    background-color: var(--color-base-100);
  }
  :where(.table-pin-rows tfoot tr) {
    position: sticky;
    bottom: calc(0.25rem * 0);
    z-index: 1;
    background-color: var(--color-base-100);
  }
  :where(.table-pin-cols tr th) {
    position: sticky;
    right: calc(0.25rem * 0);
    left: calc(0.25rem * 0);
    background-color: var(--color-base-100);
  }
  :where(thead tr, tbody tr:not(:last-child)) {
    border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
    }
  }
  display: table;
  width: 100%;
  tbody {
    tr {
      &:nth-child(even) {
        background-color: var(--color-base-200);
        :where(.table-pin-cols tr th) {
          background-color: var(--color-base-200);
        }
      }
      &.row-hover {
        &, &:nth-child(even) {
          &:hover {
            @media (hover: hover) {
              background-color: var(--color-base-300);
            }
          }
        }
      }
    }
  }
}
.gap-fill-result__header {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-300);
  background-color: var(--color-base-200);
}
.gap-fill-result__header-cell {
  padding: calc(var(--spacing) * 4);
  text-align: left;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.gap-fill-result__row {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-200);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.gap-fill-result__row--correct:hover {
  background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
  }
}
.gap-fill-result__row--incorrect:hover {
  background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
  }
}
.gap-fill-result__cell {
  padding: calc(var(--spacing) * 4);
  white-space: normal;
}
.gap-fill-result__cell--correct {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-success);
}
.gap-fill-result__cell--incorrect {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-error);
}
.challenge-info {
  > .collapse-title:after {
    position: absolute;
    display: block;
    height: 0.5rem;
    width: 0.5rem;
    transform: translateY(-100%) rotate(45deg);
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 0.2s;
    top: 1.9rem;
    inset-inline-end: 1.4rem;
    content: "";
    transform-origin: 75% 75%;
    box-shadow: 2px 2px;
    pointer-events: none;
  }
  &:not(td, tr, colgroup) {
    visibility: visible;
  }
  position: relative;
  display: grid;
  overflow: hidden;
  border-radius: var(--radius-box, 1rem);
  width: 100%;
  grid-template-rows: max-content 0fr;
  transition: grid-template-rows 0.2s;
  > input:is([type="checkbox"], [type="radio"]) {
    grid-column-start: 1;
    grid-row-start: 1;
    appearance: none;
    opacity: 0;
    z-index: 1;
    width: 100%;
    padding: 1rem;
    padding-inline-end: 3rem;
    min-height: 3.75rem;
    transition: background-color 0.2s ease-out;
  }
  &:is([open], :focus:not(.collapse-close)), &:not(.collapse-close):has(> input:is([type="checkbox"], [type="radio"]):checked) {
    grid-template-rows: max-content 1fr;
  }
  &:is([open], :focus:not(.collapse-close)) > .collapse-content, &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
    visibility: visible;
    min-height: fit-content;
  }
  &:focus-visible, &:has(> input:is([type="checkbox"], [type="radio"]):focus-visible) {
    outline-color: var(--color-base-content);
    outline-style: solid;
    outline-width: 2px;
    outline-offset: 2px;
  }
  &:not(.collapse-close) {
    > input[type="checkbox"], > input[type="radio"]:not(:checked), > .collapse-title {
      cursor: pointer;
    }
  }
  &:focus:not(.collapse-close, .collapse[open]) > .collapse-title {
    cursor: unset;
  }
  &:is([open], :focus:not(.collapse-close)) > :where(.collapse-content), &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
    padding-bottom: 1rem;
    transition: padding 0.2s ease-out, background-color 0.2s ease-out;
  }
  &:is([open]) {
    &.collapse-arrow {
      > .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
  }
  &.collapse-open {
    &.collapse-arrow {
      > .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &.collapse-plus {
      > .collapse-title:after {
        content: "−";
      }
    }
  }
  &.collapse-arrow:focus:not(.collapse-close) {
    > .collapse-title:after {
      transform: translateY(-50%) rotate(225deg);
    }
  }
  &.collapse-arrow:not(.collapse-close) {
    > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
      transform: translateY(-50%) rotate(225deg);
    }
  }
  &[open] {
    &.collapse-plus {
      > .collapse-title:after {
        content: "−";
      }
    }
  }
  &.collapse-plus:focus:not(.collapse-close) {
    > .collapse-title:after {
      content: "−";
    }
  }
  &.collapse-plus:not(.collapse-close) {
    > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
      content: "−";
    }
  }
  &:is(details) {
    width: 100%;
    & summary {
      position: relative;
      display: block;
      &::-webkit-details-marker {
        display: none;
      }
    }
  }
  &:is(details) summary {
    outline: none;
  }
  visibility: collapse;
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.challenge-info__title {
  grid-column-start: 1;
  grid-row-start: 1;
  position: relative;
  width: 100%;
  padding: 1rem;
  padding-inline-end: 3rem;
  min-height: 3.75rem;
  transition: background-color 0.2s ease-out;
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.challenge-info__description {
  flex: 1;
}
.challenge-info__meta {
  margin-top: auto;
}
.challenge-info__tasks, .challenge-info__unlock-points {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding-top: calc(var(--spacing) * 2);
}
.challenge-info__tasks-title, .challenge-info__unlock-points-title {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
}
.challenge-info__tasks-text, .challenge-info__unlock-points-text {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
@screen md {
  .challenge-info {
    min-width: 250px;
  }
}
@screen sm {
  .challenge-info {
    min-width: 150px;
  }
  .challenge-info__description {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .challenge-info__tasks, .challenge-info__unlock-points {
    padding-top: calc(var(--spacing) * 2);
  }
  .challenge-info__tasks-title, .challenge-info__unlock-points-title {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .challenge-info__tasks-text, .challenge-info__unlock-points-text {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
}
.informative {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    width: 100%;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
}
.multiple-choice {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
  .progress {
    width: 100%;
  }
  .multiple-choice-options {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(var(--spacing) * 4);
  }
  .multiple-choice-option {
    max-width: 200px;
    border-radius: var(--radius-sm);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.multiple-choice-4 {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.multiple-choice-4__content {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
}
.multiple-choice-4 .progress {
  width: 100%;
}
.multiple-choice-4 .multiple-choice-options {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
}
.multiple-choice-4 .multiple-choice-option span {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 2);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  max-width: 240px;
  min-width: 50px;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  -webkit-hyphens: auto;
  hyphens: auto;
}
.multiple-choice-4 .multiple-choice-option span:hover {
  z-index: 30;
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  background-color: var(--color-primary);
  color: var(--color-primary-content);
}
@media (max-width: 640px) {
  .multiple-choice-4 {
    padding: calc(var(--spacing) * 4);
  }
  .multiple-choice-4 .question {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .multiple-choice-4 .multiple-choice-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(var(--spacing) * 2);
  }
}
.multiple-choice-circle {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.multiple-choice-circle .progress {
  width: 100%;
}
.multiple-choice-circle__content {
  position: relative;
  min-height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.multiple-choice-circle .question {
  position: absolute;
  z-index: 10;
  width: fit-content;
  max-width: 90%;
}
.multiple-choice-circle .multiple-choice-options {
  position: absolute;
  inset: calc(var(--spacing) * 0);
  display: flex;
  align-items: center;
  justify-content: center;
}
.multiple-choice-circle .multiple-choice-option {
  position: absolute;
  z-index: 50;
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  min-height: 70px;
  min-width: 70px;
  transform-origin: center;
}
.multiple-choice-circle .multiple-choice-option:nth-child(1) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(0deg) translateX(180px) rotate(0deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(2) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(45deg) translateX(180px) rotate(-45deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(3) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(90deg) translateX(180px) rotate(-90deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(4) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(135deg) translateX(180px) rotate(-135deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(5) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(180deg) translateX(180px) rotate(-180deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(6) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(225deg) translateX(180px) rotate(-225deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(7) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(270deg) translateX(180px) rotate(-270deg);
}
.multiple-choice-circle .multiple-choice-option:nth-child(8) {
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  transform: translate(-50%, -50%) rotate(315deg) translateX(180px) rotate(-315deg);
}
@screen sm {
  .multiple-choice-circle {
    padding: calc(var(--spacing) * 4);
  }
  .multiple-choice-circle__content {
    min-height: 300px;
  }
  .multiple-choice-circle .question {
    width: 250px;
  }
  .multiple-choice-circle .multiple-choice-option span {
    min-height: 50px;
    max-width: 100px;
    min-width: 50px;
    padding: calc(var(--spacing) * 1);
    padding-inline: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(1) {
    transform: translate(-50%, -50%) rotate(0deg) translateX(140px) rotate(0deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(2) {
    transform: translate(-50%, -50%) rotate(45deg) translateX(140px) rotate(-45deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(3) {
    transform: translate(-50%, -50%) rotate(90deg) translateX(140px) rotate(-90deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(4) {
    transform: translate(-50%, -50%) rotate(135deg) translateX(140px) rotate(-135deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(5) {
    transform: translate(-50%, -50%) rotate(180deg) translateX(140px) rotate(-180deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(6) {
    transform: translate(-50%, -50%) rotate(225deg) translateX(140px) rotate(-225deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(7) {
    transform: translate(-50%, -50%) rotate(270deg) translateX(140px) rotate(-270deg);
  }
  .multiple-choice-circle .multiple-choice-option:nth-child(8) {
    transform: translate(-50%, -50%) rotate(315deg) translateX(140px) rotate(-315deg);
  }
}
.multiple-choice-result {
  .multiple-choice-result__title {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .multiple-choice-result__table {
    font-size: 0.875rem;
    position: relative;
    width: 100%;
    border-radius: var(--radius-box);
    text-align: left;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right;
    }
    tr.row-hover {
      &, &:nth-child(even) {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-base-200);
          }
        }
      }
    }
    :where(th, td) {
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 3);
      vertical-align: middle;
    }
    :where(thead, tfoot) {
      white-space: nowrap;
      color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
      font-size: 0.875rem;
      font-weight: 600;
    }
    :where(tfoot) {
      border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    :where(.table-pin-rows thead tr) {
      position: sticky;
      top: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-rows tfoot tr) {
      position: sticky;
      bottom: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-cols tr th) {
      position: sticky;
      right: calc(0.25rem * 0);
      left: calc(0.25rem * 0);
      background-color: var(--color-base-100);
    }
    :where(thead tr, tbody tr:not(:last-child)) {
      border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    display: table;
    width: 100%;
    tbody {
      tr {
        &:nth-child(even) {
          background-color: var(--color-base-200);
          :where(.table-pin-cols tr th) {
            background-color: var(--color-base-200);
          }
        }
        &.row-hover {
          &, &:nth-child(even) {
            &:hover {
              @media (hover: hover) {
                background-color: var(--color-base-300);
              }
            }
          }
        }
      }
    }
  }
  .multiple-choice-result__header {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-base-300);
    background-color: var(--color-base-200);
  }
  .multiple-choice-result__header-cell {
    padding: calc(var(--spacing) * 4);
    text-align: left;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-base-content);
  }
  .multiple-choice-result__row {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-base-200);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .multiple-choice-result__row--correct:hover {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
  }
  .multiple-choice-result__row--incorrect:hover {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
  }
  .multiple-choice-result__cell {
    padding: calc(var(--spacing) * 4);
    white-space: normal;
  }
  .multiple-choice-result__cell--correct {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-success);
  }
  .multiple-choice-result__cell--incorrect {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-error);
  }
}
.multiple-choice-option span {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 2);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  max-width: 240px;
  min-width: 50px;
  cursor: pointer;
  border-radius: calc(infinity * 1px);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  -webkit-hyphens: auto;
  hyphens: auto;
}
.multiple-choice-option span:hover {
  z-index: 30;
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  background-color: var(--color-primary);
  color: var(--color-primary-content);
}
.ordering {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 800px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.ordering__title {
  margin-bottom: calc(var(--spacing) * 6);
  text-align: center;
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-base-content);
}
.ordering__elements {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ordering__elements-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 0);
  touch-action: none;
  user-select: none;
}
.ordering__element {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  position: relative;
  z-index: 10;
  cursor: move;
  margin: calc(var(--spacing) * 0);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  touch-action: none;
  user-select: none;
}
.ordering__element:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  background-color: var(--color-base-300);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ordering__element--dragging {
  z-index: 50;
  --tw-scale-x: 95%;
  --tw-scale-y: 95%;
  --tw-scale-z: 95%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  cursor: grabbing;
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  opacity: 50%;
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ordering__element:not(.ordering__element--dragging) {
  cursor: grab;
}
.ordering__element--over {
  border-style: var(--tw-border-style);
  border-width: 2px;
  --tw-border-style: dashed;
  border-style: dashed;
  border-color: var(--color-primary);
}
@media (hover: none) {
  .ordering__element:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
    }
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
}
.ordering__drop-indicator {
  position: relative;
  height: calc(var(--spacing) * 1);
  background-color: transparent;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.ordering__drop-indicator::after {
  content: "";
  position: absolute;
  top: calc(1/2 * 100%);
  right: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  height: calc(var(--spacing) * 0.5);
  background-color: var(--color-primary);
  --tw-scale-x: 0%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.ordering__drop-indicator--active {
  height: calc(var(--spacing) * 4);
}
.ordering__drop-indicator--active::after {
  --tw-scale-x: 100%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.ordering__drop-indicator--active::before {
  content: "";
  position: absolute;
  top: calc(1/2 * 100%);
  left: calc(1/2 * 100%);
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  border-radius: calc(infinity * 1px);
  background-color: var(--color-primary);
  --tw-translate-x: calc(calc(1/2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-translate-y: calc(calc(1/2 * 100%) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
}
@media (hover: none) {
  .ordering__drop-indicator {
    height: calc(var(--spacing) * 4);
    background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
    }
  }
  .ordering__drop-indicator--active {
    background-color: color-mix(in srgb, var(--color-success) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 20%, transparent);
    }
  }
}
@screen sm {
  .ordering {
    padding: calc(var(--spacing) * 4);
  }
  .ordering__title {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .ordering__element {
    min-height: calc(var(--spacing) * 8);
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.ordering-result {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-top: calc(var(--spacing) * 8);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ordering-result__title {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-base-content);
}
.ordering-result__table {
  font-size: 0.875rem;
  position: relative;
  width: 100%;
  border-radius: var(--radius-box);
  text-align: left;
  &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    text-align: right;
  }
  tr.row-hover {
    &, &:nth-child(even) {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-base-200);
        }
      }
    }
  }
  :where(th, td) {
    padding-inline: calc(0.25rem * 4);
    padding-block: calc(0.25rem * 3);
    vertical-align: middle;
  }
  :where(thead, tfoot) {
    white-space: nowrap;
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
    font-size: 0.875rem;
    font-weight: 600;
  }
  :where(tfoot) {
    border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
    }
  }
  :where(.table-pin-rows thead tr) {
    position: sticky;
    top: calc(0.25rem * 0);
    z-index: 1;
    background-color: var(--color-base-100);
  }
  :where(.table-pin-rows tfoot tr) {
    position: sticky;
    bottom: calc(0.25rem * 0);
    z-index: 1;
    background-color: var(--color-base-100);
  }
  :where(.table-pin-cols tr th) {
    position: sticky;
    right: calc(0.25rem * 0);
    left: calc(0.25rem * 0);
    background-color: var(--color-base-100);
  }
  :where(thead tr, tbody tr:not(:last-child)) {
    border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
    }
  }
  display: table;
  width: 100%;
  border-collapse: separate;
  --tw-border-spacing-x: calc(var(--spacing) * 0);
  --tw-border-spacing-y: calc(var(--spacing) * 0);
  border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
  tbody {
    tr {
      &:nth-child(even) {
        background-color: var(--color-base-200);
        :where(.table-pin-cols tr th) {
          background-color: var(--color-base-200);
        }
      }
      &.row-hover {
        &, &:nth-child(even) {
          &:hover {
            @media (hover: hover) {
              background-color: var(--color-base-300);
            }
          }
        }
      }
    }
  }
}
.ordering-result__header {
  background-color: var(--color-primary);
}
.ordering-result__header-cell {
  padding: calc(var(--spacing) * 4);
  text-align: left;
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary-content);
}
.ordering-result__row {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.ordering-result__row--correct:hover {
  background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
  }
}
.ordering-result__row--incorrect:hover {
  background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
  }
}
.ordering-result__cell {
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-300);
  padding: calc(var(--spacing) * 4);
  white-space: normal;
}
.ordering-result__cell--correct {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-success);
}
.ordering-result__cell--incorrect {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-error);
}
.ordering-result__correct-answer {
  margin-top: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
}
@screen sm {
  .ordering-result__title {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .ordering-result__header-cell, .ordering-result__cell {
    padding: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .ordering-result__correct-answer {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}
.placeholder {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-inline: auto;
  max-width: 800px;
  border-radius: var(--radius-lg);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 8);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.placeholder__header {
  margin-bottom: calc(var(--spacing) * 8);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  text-align: center;
}
.placeholder__title {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
}
.placeholder__type {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  border-radius: calc(infinity * 1px);
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  --badge-color: var(--color-primary);
  --badge-fg: var(--color-primary-content);
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.placeholder__type i {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.placeholder__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 6);
}
.placeholder__media {
  margin-bottom: calc(var(--spacing) * 6);
  min-height: 200px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.placeholder__icon-image {
  display: inline-block;
  font-size: var(--text-6xl);
  line-height: var(--tw-leading, var(--text-6xl--line-height));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.placeholder__icon-image:hover {
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  color: color-mix(in srgb, var(--color-primary) 90%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-primary) 90%, transparent);
  }
}
.placeholder__default-icon {
  display: inline-block;
  font-size: var(--text-6xl);
  line-height: var(--tw-leading, var(--text-6xl--line-height));
  color: var(--color-primary);
  opacity: 70%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.placeholder__image {
  height: auto;
  width: 100%;
  max-width: 300px;
  border-radius: var(--radius-lg);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  object-fit: cover;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.placeholder__image:hover {
  --tw-translate-y: calc(5px * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.placeholder__info {
  text-align: center;
}
.placeholder__description {
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  margin: calc(var(--spacing) * 0);
  margin-inline: auto;
  max-width: 600px;
}
.placeholder__meta {
  margin-top: calc(var(--spacing) * 4);
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
.placeholder__time {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  border-radius: calc(infinity * 1px);
  border-color: var(--color-base-200);
  background-color: var(--color-base-200);
  color: var(--color-base-content);
  background-image: none;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  display: inline-flex;
  align-items: center;
  gap: calc(var(--spacing) * 1);
}
.placeholder__time i {
  color: var(--color-primary);
}
.placeholder__text {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  width: 100%;
  border-radius: var(--radius-md);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.placeholder__text h1 {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
}
.placeholder__actions {
  margin-top: calc(var(--spacing) * 8);
  text-align: center;
}
.placeholder__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  --fontsize: 1.125rem;
  --btn-p: 1.25rem;
  --size: calc(var(--size-field, 0.25rem) * 12);
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
}
.placeholder--coming-soon .placeholder__type {
  background-color: var(--color-primary);
}
.placeholder--coming-soon .placeholder__icon-image, .placeholder--coming-soon .placeholder__image {
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-primary);
}
.placeholder--planned .placeholder__type {
  background-color: var(--color-info);
}
.placeholder--planned .placeholder__icon-image, .placeholder--planned .placeholder__image {
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-info);
}
.placeholder--under-development .placeholder__type {
  background-color: var(--color-warning);
}
.placeholder--under-development .placeholder__icon-image, .placeholder--under-development .placeholder__image {
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-warning);
}
@screen sm {
  .placeholder {
    padding: calc(var(--spacing) * 6);
  }
  .placeholder__title {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .placeholder__type {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .placeholder__type i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .placeholder__icon-image, .placeholder__default-icon {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .placeholder__description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .placeholder__text {
    padding: calc(var(--spacing) * 4);
  }
  .placeholder__text h1 {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .placeholder__button {
    --fontsize: 0.875rem;
    --btn-p: 1rem;
    --size: calc(var(--size-field, 0.25rem) * 10);
  }
  .placeholder__media {
    min-height: 150px;
  }
  .placeholder__image {
    max-width: 200px;
  }
}
.question {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 2);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.question__title {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
}
.question__icon {
  font-size: var(--text-5xl);
  line-height: var(--tw-leading, var(--text-5xl--line-height));
  background: linear-gradient(45deg, oklch(var(--p)), oklch(var(--s)));
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.question__icon:hover {
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.question__image {
  margin-inline: auto;
  margin-block: calc(var(--spacing) * 4);
  height: auto;
  max-width: 200px;
  border-radius: var(--radius-lg);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.question__image:hover {
  --tw-scale-x: 105%;
  --tw-scale-y: 105%;
  --tw-scale-z: 105%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.question__text {
  text-align: center;
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
  padding-inline: calc(var(--spacing) * 4);
  --tw-leading: var(--leading-relaxed);
  line-height: var(--leading-relaxed);
}
.question__help {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  width: 100%;
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  border-color: var(--color-info);
  animation: slideIn 0.3s ease-out;
}
.question__help-text {
  text-align: center;
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
}
.question__help-translation {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding-top: calc(var(--spacing) * 4);
  opacity: 80%;
  transition-property: opacity;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.question__help-translation:hover {
  opacity: 100%;
}
@screen sm {
  .question {
    padding: calc(var(--spacing) * 1);
  }
  .question__title {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .question__icon {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .question__image {
    max-width: 150px;
  }
  .question__text {
    padding: calc(var(--spacing) * 0);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .question__help {
    padding: calc(var(--spacing) * 2);
  }
  .question__help-text {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.challenge-rating {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  gap: calc(var(--spacing) * 1);
  border-color: var(--color-warning);
  background-color: var(--color-base-100);
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  color: var(--color-base-content);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
}
.challenge-rating:hover {
  --tw-scale-x: 105%;
  --tw-scale-y: 105%;
  --tw-scale-z: 105%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  background-color: color-mix(in srgb, var(--color-warning) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
  }
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.challenge-rating__star {
  display: inline-block;
  vertical-align: middle;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  height: calc(var(--spacing) * 4);
  width: calc(var(--spacing) * 4);
  background-color: var(--color-warning);
  mask-image: url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 153.044-58.779 26.243 7.02-63.513L.894 68.481l63.117-13.01L96 0l31.989 55.472 63.117 13.01-43.347 47.292 7.02 63.513z' fill-rule='evenodd'/%3e%3c/svg%3e");
  font-size: 0;
  display: inline-block;
}
@screen sm {
  .challenge-rating {
    --size: calc(var(--size-selector, 0.25rem) * 6);
    font-size: 0.875rem;
    padding-inline: calc(0.25rem * 3 - var(--border));
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
  }
  .challenge-rating__star {
    height: calc(var(--spacing) * 3);
    width: calc(var(--spacing) * 3);
  }
}
.result-summary {
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  background-color: var(--color-base-100);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  margin-block: calc(var(--spacing) * 4);
  width: 100%;
}
.result-summary__header {
  display: flex;
  cursor: pointer;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  padding-inline: calc(var(--spacing) * 4);
  padding-block: calc(var(--spacing) * 3);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  list-style-type: none;
}
.result-summary[open] .result-summary__content {
  background-color: var(--color-base-100);
  color: var(--color-base-content);
  padding: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 0);
  padding-bottom: calc(var(--spacing) * 6);
}
.result-summary[open] .result-summary__header {
  margin-bottom: calc(var(--spacing) * 4);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-200);
}
.result-summary__header--excellent {
  border-color: var(--color-success);
  background-color: color-mix(in srgb, var(--color-success) 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-success) 5%, transparent);
  }
  color: var(--color-success);
}
.result-summary__header--good {
  border-color: var(--color-info);
  background-color: color-mix(in srgb, var(--color-info) 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-info) 5%, transparent);
  }
  color: var(--color-info);
}
.result-summary__header--fair {
  border-color: var(--color-warning);
  background-color: color-mix(in srgb, var(--color-warning) 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-warning) 5%, transparent);
  }
  color: var(--color-warning);
}
.result-summary__header--needs-improvement {
  border-color: var(--color-error);
  background-color: color-mix(in srgb, var(--color-error) 5%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-error) 5%, transparent);
  }
  color: var(--color-error);
}
.result-summary__performance {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.result-summary__score {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.result-summary__text {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.result-summary__content {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
}
.result-summary__title {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-base-content);
  margin-bottom: calc(var(--spacing) * 4);
}
.result-summary__timer {
  margin-bottom: calc(var(--spacing) * 2);
  display: flex;
  justify-content: flex-end;
}
.result-summary__congratulation {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: var(--color-success);
  font-style: italic;
  margin-block: calc(var(--spacing) * 4);
}
.result-summary__message {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
  font-style: italic;
  margin-top: calc(var(--spacing) * 2);
}
.result-summary__details {
  margin-top: calc(var(--spacing) * 4);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding-top: calc(var(--spacing) * 3);
}
.result-summary__challenge-name {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.result-summary summary::marker, .result-summary summary::-webkit-details-marker {
  display: none;
}
.result-summary summary::after {
  content: "▼";
  margin-left: auto;
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  opacity: 70%;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
}
.result-summary[open] summary::after {
  rotate: 180deg;
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
}
@media (max-width: 640px) {
  .result-summary__title {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .result-summary__score {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .result-summary__text {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.challenge-review {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  h3 {
    margin-bottom: calc(var(--spacing) * 2);
    display: flex;
    align-items: center;
    gap: calc(0.25rem * 2);
    font-size: var(--cardtitle-fs, 1.125rem);
    font-weight: 600;
    color: var(--color-primary);
    &::after {
      content: var(--tw-content);
      margin-top: calc(var(--spacing) * 2);
    }
    &::after {
      content: var(--tw-content);
      display: block;
    }
    &::after {
      content: var(--tw-content);
      height: calc(var(--spacing) * 1);
    }
    &::after {
      content: var(--tw-content);
      width: calc(var(--spacing) * 16);
    }
    &::after {
      content: var(--tw-content);
      background-color: color-mix(in srgb, var(--color-primary) 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-primary) 30%, transparent);
      }
    }
    &::after {
      content: var(--tw-content);
      --tw-content: '';
      content: var(--tw-content);
    }
  }
  .rating-stars {
    margin-block: calc(var(--spacing) * 4);
    justify-content: center;
  }
  .challenge-review__comment-input {
    width: 100%;
  }
  .challenge-review__comment-input input {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    width: 100%;
    &:focus {
      border-color: var(--color-primary);
    }
    &:focus {
      outline-color: var(--color-primary);
    }
  }
  button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    margin-top: calc(var(--spacing) * 2);
    width: 100%;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      border-color: var(--color-base-300);
    }
    &:disabled {
      background-color: var(--color-base-300);
    }
    &:disabled {
      color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
      }
    }
  }
  p {
    margin-top: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 2);
    text-align: center;
    color: var(--color-success);
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: color-mix(in srgb, var(--color-success) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-success) 20%, transparent);
    }
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
  }
  @screen sm {
    padding: calc(var(--spacing) * 4);
    h3 {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
    .challenge-review__comment-input input {
      --size: calc(var(--size-field, 0.25rem) * 8);
      font-size: 0.75rem;
      &[type="number"] {
        &::-webkit-inner-spin-button {
          margin-block: calc(0.25rem * -2);
          margin-inline-end: calc(0.25rem * -3);
        }
      }
    }
    button {
      --fontsize: 0.75rem;
      --btn-p: 0.75rem;
      --size: calc(var(--size-field, 0.25rem) * 8);
    }
  }
}
.sort-table {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 6);
  margin-inline: auto;
  max-width: 800px;
}
.sort-table__title {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
}
.sort-table__description {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.sort-table__table {
  width: 100%;
  border-collapse: separate;
  --tw-border-spacing-x: calc(var(--spacing) * 0);
  --tw-border-spacing-y: calc(var(--spacing) * 0);
  border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
  overflow: hidden;
  border-radius: var(--radius-md);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.sort-table__header {
  background-color: var(--color-primary);
}
.sort-table__header-cell {
  padding: calc(var(--spacing) * 2);
  text-align: left;
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  color: var(--color-primary-content);
  font-family: var(--font-sans);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.sort-table__body-row {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.sort-table__body-row:nth-child(even) {
  background-color: var(--color-base-100);
}
.sort-table__body-row:nth-child(odd) {
  background-color: var(--color-base-200);
}
.sort-table__body-row:hover, .sort-table__body-row--selected {
  background-color: var(--color-base-300);
}
.sort-table__body-cell {
  padding: calc(var(--spacing) * 2);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  color: var(--color-base-content);
  border-bottom-style: var(--tw-border-style);
  border-bottom-width: 1px;
  border-color: var(--color-base-300);
  cursor: move;
  -webkit-user-select: none;
  user-select: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.sort-table__body-cell:hover {
  background-color: var(--color-base-200);
}
.sort-table__body-cell--selected {
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  color: var(--color-base-content);
}
.sort-table__body-cell--dragging {
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  opacity: 50%;
}
.sort-table__actions {
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 4);
}
.sort-table__actions-button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  --fontsize: 1.125rem;
  --btn-p: 1.25rem;
  --size: calc(var(--size-field, 0.25rem) * 12);
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
}
@screen sm {
  .sort-table {
    gap: calc(var(--spacing) * 4);
    padding: calc(var(--spacing) * 4);
  }
  .sort-table__title {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .sort-table__description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .sort-table__table {
    border-radius: var(--radius-sm);
  }
  .sort-table__header-cell {
    padding: calc(var(--spacing) * 1);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .sort-table__body-cell {
    padding: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .sort-table__actions-button {
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
}
.vocabulary {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: calc(var(--spacing) * 8);
  margin-inline: auto;
  width: fit-content;
  max-width: 1400px;
  min-width: 400px;
  padding: calc(var(--spacing) * 8);
}
.vocabulary__header {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  text-align: center;
}
.vocabulary__title {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 3);
}
.vocabulary__challenge-icon {
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
}
.vocabulary__challenge-icon img {
  max-height: 48px;
  max-width: 48px;
  object-fit: contain;
  border-radius: var(--radius-lg);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  margin-inline: auto;
}
.vocabulary__description {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-leading: var(--leading-normal);
  line-height: var(--leading-normal);
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  max-width: 600px;
}
.vocabulary__content {
  width: 100%;
}
.vocabulary__empty {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 8);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  text-align: center;
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  border-style: var(--tw-border-style);
  border-width: 2px;
  --tw-border-style: dashed;
  border-style: dashed;
  border-color: var(--color-base-300);
}
.vocabulary__help {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-left-style: var(--tw-border-style);
  border-left-width: 4px;
  border-color: var(--color-info);
  animation: slideInHelp 0.3s ease-out;
}
.vocabulary__help-title {
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-base-content);
}
.vocabulary__help-text {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
}
.vocabulary__help-navigation {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding-top: calc(var(--spacing) * 3);
}
.vocabulary__help-navigation p {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
  font-style: italic;
}
.vocabulary__help-debug {
  margin-top: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  background-color: var(--color-base-300);
  padding: calc(var(--spacing) * 3);
}
.vocabulary__help-debug p {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
  }
}
.vocabulary-grid {
  display: grid;
  width: 100%;
  gap: calc(var(--spacing) * 4);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  @media (width >= 40rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 48rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 64rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.vocabulary-card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  position: relative;
  display: flex;
  height: 100%;
  flex-direction: column;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
  }
  min-height: 280px;
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  overflow: hidden;
}
.vocabulary-card__read-button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  border-radius: calc(infinity * 1px);
  padding-inline: calc(0.25rem * 0);
  width: var(--size);
  height: var(--size);
  &:not(.btn-active, :hover, :active:focus, :focus-visible) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-border: #0000;
    --btn-noise: none;
    &:not(:disabled, [disabled], .btn-disabled) {
      outline-color: currentColor;
      --btn-fg: currentColor;
    }
  }
  --fontsize: 0.75rem;
  --btn-p: 0.75rem;
  --size: calc(var(--size-field, 0.25rem) * 8);
  position: absolute;
  top: calc(var(--spacing) * 2);
  right: calc(var(--spacing) * 2);
  z-index: 20;
  opacity: 0%;
  &:hover {
    @media (hover: hover) {
      opacity: 100%;
    }
  }
  &:focus {
    opacity: 100%;
  }
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  color: var(--color-primary);
  &:hover {
    @media (hover: hover) {
      background-color: var(--color-primary);
    }
  }
  &:hover {
    @media (hover: hover) {
      color: var(--color-primary-content);
    }
  }
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  &:hover {
    @media (hover: hover) {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
  background-color: color-mix(in srgb, var(--color-base-100) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-base-100) 80%, transparent);
  }
  --tw-backdrop-blur: blur(var(--blur-sm));
  -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
}
.vocabulary-card__read-button i {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.vocabulary-card:hover .vocabulary-card__read-button {
  opacity: 100%;
}
.vocabulary-card__read-button:focus {
  opacity: 100%;
  --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);
  --tw-ring-color: var(--color-primary);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
}
.vocabulary-card__read-button:active {
  --tw-scale-x: 95%;
  --tw-scale-y: 95%;
  --tw-scale-z: 95%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  animation: pulse-read 0.3s ease;
}
.vocabulary-card__header {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 120px;
  flex-shrink: 0;
  padding: calc(var(--spacing) * 0);
  position: relative;
  overflow: hidden;
  --tw-gradient-position: to bottom right in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: var(--color-base-200);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-to: var(--color-base-300);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
}
.vocabulary-card__icon {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  color: var(--color-primary);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  position: absolute;
  inset: calc(var(--spacing) * 0);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}
.vocabulary-card__icon i {
  --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.15)));
  --tw-drop-shadow: drop-shadow(var(--drop-shadow-sm));
  filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.vocabulary-card__icon:hover i {
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  color: color-mix(in srgb, var(--color-primary) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-primary) 80%, transparent);
  }
}
.vocabulary-card__icon-image {
  height: 100%;
  width: 100%;
  object-fit: cover;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  position: absolute;
  inset: calc(var(--spacing) * 0);
  background-color: var(--color-base-200);
  background-image: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.4), transparent );
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}
.vocabulary-card__icon-image:hover {
  --tw-scale-x: 105%;
  --tw-scale-y: 105%;
  --tw-scale-z: 105%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.vocabulary-card__icon-image[src] {
  animation: none;
  background-color: transparent;
}
.vocabulary-card__header::after {
  content: "";
  position: absolute;
  inset: calc(var(--spacing) * 0);
  --tw-gradient-position: to top in oklab;
  background-image: linear-gradient(var(--tw-gradient-stops));
  --tw-gradient-from: color-mix(in srgb, #000 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    --tw-gradient-from: color-mix(in oklab, var(--color-black) 20%, transparent);
  }
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  --tw-gradient-via: transparent;
  --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-via-stops);
  --tw-gradient-to: transparent;
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  pointer-events: none;
  z-index: 5;
}
.vocabulary-card__icon-image:not([src]), .vocabulary-card__icon-image[src=""] {
  background-color: var(--color-base-300);
  display: flex;
  align-items: center;
  justify-content: center;
  color: color-mix(in srgb, var(--color-base-content) 30%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 30%, transparent);
  }
  position: relative;
}
.vocabulary-card__icon-image:not([src])::before, .vocabulary-card__icon-image[src=""]::before {
  content: "📷";
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  position: absolute;
  inset: calc(var(--spacing) * 0);
  display: flex;
  align-items: center;
  justify-content: center;
}
.vocabulary-card__content {
  flex-grow: 1;
  padding: calc(var(--spacing) * 4);
  padding-top: calc(var(--spacing) * 3);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  z-index: 10;
  background-color: var(--color-base-100);
}
.vocabulary-card__text {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-base-content);
  margin-bottom: calc(var(--spacing) * 2);
  --tw-leading: var(--leading-tight);
  line-height: var(--leading-tight);
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}
.vocabulary-card__translation {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
  margin-bottom: calc(var(--spacing) * 2);
  font-style: italic;
  overflow-wrap: break-word;
}
.vocabulary-card__phonetic {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
  }
  border-radius: calc(infinity * 1px);
  background-color: var(--color-base-200);
  padding-inline: calc(var(--spacing) * 2);
  padding-block: calc(var(--spacing) * 1);
  font-family: var(--font-mono);
  margin-bottom: calc(var(--spacing) * 2);
  display: inline-block;
}
.vocabulary-grid--single {
  margin-inline: auto;
  max-width: 300px;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.vocabulary-grid--double {
  margin-inline: auto;
  max-width: 700px;
  @media (width >= 64rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.vocabulary-grid--triple {
  margin-inline: auto;
  max-width: 1000px;
  @media (width >= 64rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.vocabulary-grid--quad {
  margin-inline: auto;
  max-width: 700px;
  @media (width >= 64rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.vocabulary-grid--five {
  margin-inline: auto;
  max-width: 1300px;
  @media (width >= 80rem) {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
@keyframes slideInHelp {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pulse-read {
  0% {
    transform: scale(1.1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1.1);
  }
}
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
@screen sm {
  .vocabulary {
    gap: calc(var(--spacing) * 6);
    padding: calc(var(--spacing) * 4);
  }
  .vocabulary__header {
    padding: calc(var(--spacing) * 4);
  }
  .vocabulary__title {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .vocabulary__challenge-icon {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .vocabulary__challenge-icon img {
    max-height: 36px;
    max-width: 36px;
  }
  .vocabulary__description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .vocabulary-grid {
    gap: calc(var(--spacing) * 3);
  }
  .vocabulary-card {
    min-height: 240px;
  }
  .vocabulary-card__header {
    min-height: 100px;
  }
  .vocabulary-card__icon {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .vocabulary-card__icon-image:not([src])::before, .vocabulary-card__icon-image[src=""]::before {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .vocabulary-card__text {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .vocabulary-card__translation {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .vocabulary-card__phonetic {
    padding-inline: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .vocabulary-card__read-button {
    top: calc(var(--spacing) * 1);
    right: calc(var(--spacing) * 1);
    --fontsize: 0.6875rem;
    --btn-p: 0.5rem;
    --size: calc(var(--size-field, 0.25rem) * 6);
  }
  .vocabulary-card__read-button i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .vocabulary__help {
    padding: calc(var(--spacing) * 4);
  }
  .vocabulary__help-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .vocabulary__help-text {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
@screen md {
  .vocabulary-card__text {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .vocabulary-card__translation {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .vocabulary-card__read-button {
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .vocabulary-card__read-button i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .vocabulary-card__header {
    min-height: 110px;
  }
}
@screen lg {
  .vocabulary-grid {
    gap: calc(var(--spacing) * 5);
  }
  .vocabulary-card {
    min-height: 320px;
  }
  .vocabulary-card__header {
    min-height: 140px;
  }
  .vocabulary-card__icon {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .vocabulary-card__icon-image:not([src])::before, .vocabulary-card__icon-image[src=""]::before {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .vocabulary__challenge-icon img {
    max-height: 60px;
    max-width: 60px;
  }
  .vocabulary-card__text {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .vocabulary-card__translation {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
@screen xl {
  .vocabulary {
    gap: calc(var(--spacing) * 10);
  }
  .vocabulary-grid {
    gap: calc(var(--spacing) * 6);
  }
  .vocabulary-card {
    min-height: 340px;
  }
  .vocabulary-card__header {
    min-height: 160px;
  }
  .vocabulary-card__text {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .vocabulary-card__read-button {
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
}
@media (prefers-contrast: high) {
  .vocabulary-card {
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
    }
  }
  .vocabulary-card__text {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .vocabulary-card__read-button {
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--color-primary);
    opacity: 100%;
  }
  .vocabulary-card__header::after {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
    --tw-gradient-from: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
    --tw-gradient-via: color-mix(in srgb, #000 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 20%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
}
@media (prefers-reduced-motion: reduce) {
  .vocabulary-card, .vocabulary-card__icon, .vocabulary-card__icon-image, .vocabulary-card__read-button {
    transition-property: none;
  }
  .vocabulary-card:hover {
    transform: none;
  }
  .vocabulary-card__icon-image:hover {
    --tw-scale-x: 100%;
    --tw-scale-y: 100%;
    --tw-scale-z: 100%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .vocabulary-card__read-button {
    opacity: 100%;
  }
  .vocabulary__help {
    animation: none;
  }
  .vocabulary-card__icon-image {
    animation-play-state: paused !important;
  }
}
@media print {
  .vocabulary-card__read-button {
    display: none;
  }
  .vocabulary-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: calc(var(--spacing) * 4);
  }
  .vocabulary-card {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-gray-300);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    break-inside: avoid;
  }
  .vocabulary-card__header::after {
    display: none;
  }
}
@media (hover: none) and (pointer: coarse) {
  .vocabulary-card__read-button {
    opacity: 100%;
  }
}
.achievement {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  position: relative;
  max-width: 250px;
  border-radius: var(--radius-2xl);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.achievement:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.achievement:hover::after {
  --tw-translate-x: calc(var(--spacing) * 0);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-translate-y: calc(var(--spacing) * 0);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  opacity: 100%;
}
.achievement__icon {
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  height: calc(var(--spacing) * 20);
  width: calc(var(--spacing) * 20);
  align-items: center;
  justify-content: center;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.achievement__icon img {
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
}
.achievement:hover .achievement__icon {
  --tw-scale-x: 110%;
  --tw-scale-y: 110%;
  --tw-scale-z: 110%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.achievement::before {
  content: "";
  position: absolute;
  inset: calc(var(--spacing) * 0);
  z-index: calc(10 * -1);
  border-radius: var(--radius-md);
  background: linear-gradient( 135deg, oklch(var(--b1) / 1) 0%, oklch(var(--b2) / 1) 100% );
}
.achievement::after {
  content: "🏆";
  position: absolute;
  top: calc(var(--spacing) * -2.5);
  right: calc(var(--spacing) * -2.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  border-radius: calc(infinity * 1px);
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --badge-color: var(--color-secondary);
  --badge-fg: var(--color-secondary-content);
  --tw-translate-x: calc(var(--spacing) * 2.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  --tw-translate-y: calc(var(--spacing) * -2.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  opacity: 0%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.achievements {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-inline: auto;
  max-width: 800px;
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 8);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.achievements__title {
  color: var(--color-primary);
}
.achievements__container {
  margin-bottom: calc(var(--spacing) * 8);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 8);
}
.achievements__achievements-list, .achievements__certificates-list {
  flex: 1;
}
.achievements__subtitle {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  color: var(--color-primary);
}
.achievements__achievement-grid {
  display: grid;
  gap: calc(var(--spacing) * 4);
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
.achievements__list {
  display: flex;
  list-style-type: none;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 0);
}
.achievements__certificate-item {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.achievements__certificate-item--selected {
  --tw-shadow: 0 0 10px var(--tw-shadow-color, rgba(var(--p),0.2));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.achievements__certificate-summary {
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  padding: calc(var(--spacing) * 4);
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.achievements__certificate-summary:hover {
  background-color: var(--color-base-200);
}
.achievements__date {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.achievements__name {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-primary);
}
.achievements__performance {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-success);
}
.achievements__certificate-details {
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-300);
  padding: calc(var(--spacing) * 4);
}
@screen sm {
  .achievements {
    padding: calc(var(--spacing) * 4);
  }
  .achievements__title {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .achievements__container {
    gap: calc(var(--spacing) * 4);
  }
  .achievements__certificate-summary {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(var(--spacing) * 1);
    padding: calc(var(--spacing) * 2);
  }
  .achievements__achievement-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: calc(var(--spacing) * 2);
  }
}
.certificate__image-container {
  margin-top: calc(var(--spacing) * 8);
  display: flex;
  align-items: center;
  justify-content: center;
}
.certificate__image {
  height: auto;
  max-width: 100%;
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-100);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.certificate__image:hover {
  scale: 1.02;
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.certificate__image-error {
  padding: calc(var(--spacing) * 4);
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  color: var(--color-error);
  border-radius: var(--radius-sm);
  background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
  }
}
@screen sm {
  .certificate__image-container {
    margin-top: calc(var(--spacing) * 6);
  }
  .certificate__image-error {
    padding: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.domain-selector {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.domain-selector__select {
  border: var(--border) solid #0000;
  position: relative;
  display: inline-flex;
  flex-shrink: 1;
  appearance: none;
  align-items: center;
  gap: calc(0.25rem * 1.5);
  background-color: var(--color-base-100);
  padding-inline-start: calc(0.25rem * 4);
  padding-inline-end: calc(0.25rem * 7);
  vertical-align: middle;
  width: clamp(3rem, 20rem, 100%);
  height: var(--size);
  font-size: 0.875rem;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  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-size: 4px 4px, 4px 4px;
  background-repeat: no-repeat;
  text-overflow: ellipsis;
  box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
  @supports (color: color-mix(in lab, red, red)) {
    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) * 0.1)) inset;
  }
  border-color: var(--input-color);
  --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
  @supports (color: color-mix(in lab, red, red)) {
    --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
  }
  --size: calc(var(--size-field, 0.25rem) * 10);
  [dir="rtl"] & {
    background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
  }
  select {
    margin-inline-start: calc(0.25rem * -4);
    margin-inline-end: calc(0.25rem * -7);
    width: calc(100% + 2.75rem);
    appearance: none;
    padding-inline-start: calc(0.25rem * 4);
    padding-inline-end: calc(0.25rem * 7);
    height: calc(100% - 2px);
    background: inherit;
    border-radius: inherit;
    border-style: none;
    &:focus, &:focus-within {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:not(:last-child) {
      margin-inline-end: calc(0.25rem * -5.5);
      background-image: none;
    }
  }
  &:focus, &:focus-within {
    --input-color: var(--color-base-content);
    box-shadow: 0 1px var(--input-color);
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
    }
    outline: 2px solid var(--input-color);
    outline-offset: 2px;
  }
  &:has(> select[disabled]), &:is(:disabled, [disabled]) {
    cursor: not-allowed;
    border-color: var(--color-base-200);
    background-color: var(--color-base-200);
    color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
    }
    &::placeholder {
      color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
      }
    }
  }
  &:has(> select[disabled]) > select[disabled] {
    cursor: not-allowed;
  }
  width: 100%;
  max-width: 300px;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.domain-selector__select:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  &, &:focus, &:focus-within {
    --input-color: var(--color-primary);
  }
}
.domain-selector__option {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 2);
  padding: calc(var(--spacing) * 2);
}
.domain-selector__option[selected] {
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-primary);
}
@screen sm {
  .domain-selector__select {
    max-width: 200px;
    --size: calc(var(--size-field, 0.25rem) * 8);
    font-size: 0.75rem;
  }
}
.domain-selector-cards {
  width: 100%;
}
.domain-selector-cards__grid {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: calc(var(--spacing) * 4);
  @media (width >= 40rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 48rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.domain-selector-cards__card {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  background-color: var(--color-base-100);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  cursor: pointer;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.domain-selector-cards__card:hover {
  --tw-translate-y: calc(var(--spacing) * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  border-color: var(--color-primary);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.domain-selector-cards__card--active {
  border-color: var(--color-primary);
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
}
.domain-selector-cards__card-body {
  display: flex;
  flex: auto;
  flex-direction: column;
  gap: calc(0.25rem * 2);
  padding: var(--card-p, 1.5rem);
  font-size: var(--card-fs, 0.875rem);
  :where(p) {
    flex-grow: 1;
  }
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: calc(var(--spacing) * 4);
}
.domain-selector-cards__icon {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
}
.domain-selector-cards__name {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}
.domain-selector-cards__description {
  margin-top: calc(var(--spacing) * 2);
  text-align: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
}
.domain-selector-buttons {
  display: inline-flex;
  align-items: stretch;
  --join-ss: 0;
  --join-se: 0;
  --join-es: 0;
  --join-ee: 0;
  :where(.join-item) {
    border-start-start-radius: var(--join-ss, 0);
    border-start-end-radius: var(--join-se, 0);
    border-end-start-radius: var(--join-es, 0);
    border-end-end-radius: var(--join-ee, 0);
    * {
      --join-ss: var(--radius-field);
      --join-se: var(--radius-field);
      --join-es: var(--radius-field);
      --join-ee: var(--radius-field);
    }
  }
  > .join-item:where(:first-child) {
    --join-ss: var(--radius-field);
    --join-se: 0;
    --join-es: var(--radius-field);
    --join-ee: 0;
  }
  :first-child:not(:last-child) {
    :where(.join-item) {
      --join-ss: var(--radius-field);
      --join-se: 0;
      --join-es: var(--radius-field);
      --join-ee: 0;
    }
  }
  > .join-item:where(:last-child) {
    --join-ss: 0;
    --join-se: var(--radius-field);
    --join-es: 0;
    --join-ee: var(--radius-field);
  }
  :last-child:not(:first-child) {
    :where(.join-item) {
      --join-ss: 0;
      --join-se: var(--radius-field);
      --join-es: 0;
      --join-ee: var(--radius-field);
    }
  }
  > .join-item:where(:only-child) {
    --join-ss: var(--radius-field);
    --join-se: var(--radius-field);
    --join-es: var(--radius-field);
    --join-ee: var(--radius-field);
  }
  :only-child {
    :where(.join-item) {
      --join-ss: var(--radius-field);
      --join-se: var(--radius-field);
      --join-es: var(--radius-field);
      --join-ee: var(--radius-field);
    }
  }
  flex-wrap: wrap;
}
.domain-selector-buttons__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  &:where(*:not(:first-child)) {
    margin-inline-start: calc(var(--border, 1px) * -1);
    margin-block-start: 0;
  }
  gap: calc(var(--spacing) * 2);
  &:not( .btn-active, :hover, :active:focus, :focus-visible, :disabled, [disabled], .btn-disabled, :checked ) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-fg: var(--btn-color);
    --btn-border: var(--btn-color);
    --btn-noise: none;
  }
}
.domain-selector-buttons__button:hover {
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
}
.domain-selector-buttons__button--active {
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
}
.domain-selector-buttons__icon {
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.domain-selector-buttons__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100px;
}
@screen sm {
  .domain-selector-buttons {
    flex-direction: row;
    flex-wrap: nowrap;
  }
  .domain-selector-buttons__button {
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
}
.domain-selector-pills {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 2);
}
.domain-selector-pills__pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  cursor: pointer;
  gap: calc(var(--spacing) * 1);
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  &:hover {
    @media (hover: hover) {
      --badge-color: var(--color-primary);
      --badge-fg: var(--color-primary-content);
    }
  }
}
.domain-selector-pills__pill--active {
  --badge-color: var(--color-primary);
  --badge-fg: var(--color-primary-content);
}
.domain-selector-pills__icon {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.domain-selector-pills__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 80px;
}
@screen sm {
  .domain-selector-pills__name {
    max-width: 120px;
  }
}
.feedback {
  z-index: 30;
  .feedback__bubble {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .feedback__bubble-icon {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    border-radius: calc(infinity * 1px);
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentColor;
        --btn-fg: currentColor;
      }
    }
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .feedback__bubble-text {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .feedback__content {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
    position: relative;
    display: none;
    max-width: 300px;
    background-color: var(--color-base-100);
    padding: calc(var(--spacing) * 6);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .feedback--expanded .feedback__content {
    display: block;
  }
  .feedback__title {
    margin-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .feedback__close {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    position: absolute;
    top: calc(var(--spacing) * 2);
    right: calc(var(--spacing) * 2);
    border-radius: calc(infinity * 1px);
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentColor;
        --btn-fg: currentColor;
      }
    }
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .feedback--expanded .feedback__bubble {
    display: none;
  }
  @screen sm {
    .feedback__bubble {
      padding-inline: calc(var(--spacing) * 2);
      padding-block: calc(var(--spacing) * 1);
    }
    .feedback__bubble-icon {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
    .feedback__content {
      max-width: 250px;
      padding: calc(var(--spacing) * 2);
    }
    .feedback__title {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
}
.gdrive-backup {
  padding: calc(var(--spacing) * 4);
  .gdrive-backup__error {
    margin-bottom: calc(var(--spacing) * 4);
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-md);
    padding: calc(var(--spacing) * 4);
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
    color: var(--color-error-content);
  }
  .gdrive-backup__error i {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .gdrive-backup__loading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 6);
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .gdrive-backup__loading i {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .gdrive-backup__content {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 6);
  }
  .gdrive-backup__button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    gap: calc(var(--spacing) * 2);
    align-self: flex-end;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .gdrive-backup__button:hover {
    --tw-translate-y: calc(var(--spacing) * -0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .gdrive-backup__button:active {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .gdrive-backup__button i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .gdrive-backup__list {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }
  .gdrive-backup__item {
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 4);
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-base-300);
    background-color: var(--color-base-100);
    padding: calc(var(--spacing) * 4);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .gdrive-backup__item:hover {
    --tw-translate-y: calc(var(--spacing) * -0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    background-color: var(--color-base-200);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .gdrive-backup__item i {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .gdrive-backup__item-content {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 6);
  }
  .gdrive-backup__item-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-family: var(--font-sans);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-base-content);
  }
  .gdrive-backup__item-date {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    white-space: nowrap;
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
}
.leaderboard {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-inline: auto;
  width: 100%;
  max-width: 800px;
  background-color: var(--color-base-100);
  .leaderboard__table {
    font-size: 0.875rem;
    position: relative;
    width: 100%;
    border-radius: var(--radius-box);
    text-align: left;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right;
    }
    tr.row-hover {
      &, &:nth-child(even) {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-base-200);
          }
        }
      }
    }
    :where(th, td) {
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 3);
      vertical-align: middle;
    }
    :where(thead, tfoot) {
      white-space: nowrap;
      color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
      font-size: 0.875rem;
      font-weight: 600;
    }
    :where(tfoot) {
      border-top: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    :where(.table-pin-rows thead tr) {
      position: sticky;
      top: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-rows tfoot tr) {
      position: sticky;
      bottom: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-cols tr th) {
      position: sticky;
      right: calc(0.25rem * 0);
      left: calc(0.25rem * 0);
      background-color: var(--color-base-100);
    }
    :where(thead tr, tbody tr:not(:last-child)) {
      border-bottom: var(--border) solid color-mix(in srgb, var(--color-base-content) 5%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    display: table;
    width: 100%;
    table-layout: fixed;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .leaderboard__header {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-base-300);
    background-color: var(--color-base-100);
  }
  .leaderboard__header th {
    padding: calc(var(--spacing) * 2);
    text-align: left;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .leaderboard__row {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-200);
      }
    }
  }
  .leaderboard__row:nth-child(even) .leaderboard__cell {
    background-color: var(--color-base-200);
  }
  .leaderboard__row:hover .leaderboard__cell {
    background-color: var(--color-base-300);
  }
  .leaderboard__row--highlighted .leaderboard__cell {
    background-color: var(--color-primary);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-primary-content);
  }
  .leaderboard__row--highlighted:hover .leaderboard__cell {
    background-color: color-mix(in srgb, var(--color-primary) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary) 90%, transparent);
    }
  }
  .leaderboard__row--highlighted .timer {
    color: color-mix(in srgb, var(--color-primary-content) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-primary-content) 90%, transparent);
    }
  }
  .leaderboard__cell {
    padding: calc(var(--spacing) * 2);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .leaderboard__cell--rank {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0);
    text-align: center;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-primary);
  }
  .leaderboard__cell--name {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
  }
  .leaderboard__cell--performance {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    text-align: right;
  }
  .leaderboard__cell--time {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    text-align: right;
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .leaderboard .timer {
    margin-bottom: calc(var(--spacing) * 0);
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }
  .leaderboard .timer__title {
    display: none;
  }
  .leaderboard__container {
    overflow-x: auto;
    padding-inline: calc(var(--spacing) * 4);
  }
  @screen sm {
    .leaderboard__table {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
    .leaderboard .timer {
      gap: calc(var(--spacing) * 0);
    }
    .leaderboard__container {
      padding-inline: calc(var(--spacing) * 2);
    }
  }
  @media (max-width: 360px) {
    .leaderboard__table {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .leaderboard__cell {
      padding: calc(var(--spacing) * 1);
    }
    .leaderboard__cell:not(.leaderboard__cell--rank):not( .leaderboard__cell--time ) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
}
.logo {
  display: flex;
  align-items: center;
  & img {
    object-fit: contain;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    &:hover {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
      transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
    }
  }
}
.cart__badge {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  position: relative;
  border-radius: calc(infinity * 1px);
  padding-inline: calc(0.25rem * 0);
  width: var(--size);
  height: var(--size);
  border-radius: calc(infinity * 1px);
  --fontsize: 1.125rem;
  --btn-p: 1.25rem;
  --size: calc(var(--size-field, 0.25rem) * 12);
  --btn-color: var(--color-secondary);
  --btn-fg: var(--color-secondary-content);
  transition-property: box-shadow;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.cart__badge:hover {
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.cart__badge:active {
  --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.cart__icon {
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  color: var(--color-secondary-content);
}
.cart__counter {
  position: absolute;
  top: calc(var(--spacing) * -2);
  right: calc(var(--spacing) * -2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  --size: calc(var(--size-selector, 0.25rem) * 7);
  font-size: 1rem;
  padding-inline: calc(0.25rem * 3.5 - var(--border));
  color: var(--color-error-content);
  --badge-color: var(--color-error);
  --badge-fg: var(--color-error-content);
  height: calc(var(--spacing) * 6);
  min-width: 1.5rem;
  border-radius: calc(infinity * 1px);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.product {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  &:hover {
    @media (hover: hover) {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
  width: 100%;
}
.product-content {
  display: flex;
  flex: auto;
  flex-direction: column;
  gap: calc(0.25rem * 2);
  padding: var(--card-p, 1.5rem);
  font-size: var(--card-fs, 0.875rem);
  :where(p) {
    flex-grow: 1;
  }
  padding: calc(var(--spacing) * 6);
}
.product__header {
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.product__title {
  display: flex;
  align-items: center;
  gap: calc(0.25rem * 2);
  font-size: var(--cardtitle-fs, 1.125rem);
  font-weight: 600;
}
.product__image {
  margin-bottom: calc(var(--spacing) * 4);
  height: calc(var(--spacing) * 48);
  width: 100%;
  border-radius: var(--radius-lg);
  object-fit: cover;
}
.product__icon {
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  color: var(--color-primary);
}
.product__description {
  margin-bottom: calc(var(--spacing) * 6);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: color-mix(in srgb, var(--color-base-content) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 80%, transparent);
  }
}
.product__tags {
  margin-bottom: calc(var(--spacing) * 4);
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: calc(0.25rem * 2);
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: calc(var(--spacing) * 2);
}
.product__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  &:hover {
    @media (hover: hover) {
      --badge-color: var(--color-primary);
      --badge-fg: var(--color-primary-content);
    }
  }
  cursor: pointer;
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.product__footer {
  margin-top: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: calc(0.25rem * 2);
  align-items: center;
  justify-content: space-between;
  padding-top: calc(var(--spacing) * 4);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--color-base-200);
}
.product__price {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 1);
}
.product__price-label {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.product__price-value {
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
@screen sm {
  .product__price-value {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
}
.product__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  --btn-color: var(--color-primary);
  --btn-fg: var(--color-primary-content);
}
.product--highlighted {
  border-style: var(--tw-border-style);
  border-width: 2px;
  border-color: var(--color-primary);
  position: relative;
  overflow: hidden;
}
.product--highlighted::before {
  content: "Featured";
  position: absolute;
  top: calc(var(--spacing) * 2);
  right: calc(var(--spacing) * 2);
  z-index: 10;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 2);
  border-radius: var(--radius-selector);
  vertical-align: middle;
  color: var(--badge-fg);
  border: var(--border) solid var(--badge-color, var(--color-base-200));
  font-size: 0.875rem;
  width: fit-content;
  padding-inline: calc(0.25rem * 3 - var(--border));
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--fx-noise);
  background-color: var(--badge-bg);
  --badge-bg: var(--badge-color, var(--color-base-100));
  --badge-fg: var(--color-base-content);
  --size: calc(var(--size-selector, 0.25rem) * 6);
  height: var(--size);
  &.badge-outline {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
  }
  &.badge-dash {
    --badge-fg: var(--badge-color);
    --badge-bg: #0000;
    border-style: dashed;
    background-image: none;
  }
  &.badge-soft {
    color: var(--badge-color, var(--color-base-content));
    background-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
    }
    border-color: var(--badge-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
    }
    background-image: none;
  }
  --badge-color: var(--color-primary);
  --badge-fg: var(--color-primary-content);
}
.product--highlighted .product__title {
  color: var(--color-primary);
}
.product--highlighted .product-content {
  background-color: color-mix(in srgb, var(--color-base-100) 95%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-base-100) 95%, transparent);
  }
}
@screen sm {
  .product {
    width: 100%;
  }
  .product-content {
    padding: calc(var(--spacing) * 4);
  }
  .product__image {
    height: calc(var(--spacing) * 32);
  }
  .product__footer {
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .product__button {
    width: 100%;
  }
}
.product-catalog {
  display: grid;
  gap: calc(var(--spacing) * 6);
  padding: calc(var(--spacing) * 4);
  width: 100%;
  max-width: 1400px;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  @screen sm {
    grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
  }
  @screen md {
    padding: calc(var(--spacing) * 6);
  }
  @screen lg {
    padding: calc(var(--spacing) * 8);
  }
}
@media (max-width: 639px) {
  .product-catalog {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: calc(var(--spacing) * 4);
    padding: calc(var(--spacing) * 2);
    min-width: 0;
  }
}
.shopping-cart {
  display: grid;
  align-items: flex-start;
  gap: calc(var(--spacing) * 4);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  @media (width >= 40rem) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (width >= 64rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 80rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.token-selector {
  margin-top: calc(var(--spacing) * 4);
}
.token-selector__list {
  display: flex;
  max-height: 200px;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  overflow-y: auto;
  border-radius: var(--radius-md);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 2);
}
.token-selector__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  width: 100%;
  justify-content: flex-start;
  text-transform: none;
  &:not(.btn-active, :hover, :active:focus, :focus-visible) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-border: #0000;
    --btn-noise: none;
    &:not(:disabled, [disabled], .btn-disabled) {
      outline-color: currentColor;
      --btn-fg: currentColor;
    }
  }
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  background-color: var(--color-base-100);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.token-selector__button:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  background-color: var(--color-base-200);
}
.token-selector__button.selected {
  border-color: var(--color-primary);
  background-color: var(--color-base-100);
}
.token-display {
  display: flex;
  width: 100%;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.token-display__image {
  height: calc(var(--spacing) * 8);
  width: calc(var(--spacing) * 8);
  overflow: hidden;
  border-radius: calc(infinity * 1px);
}
.token-display__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.token-display__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.token-display__name {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.token-display__symbol {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
.token-display__balance {
  margin-left: auto;
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-base-content);
}
.token-selector {
  margin-top: calc(var(--spacing) * 4);
}
.token-selector__list {
  display: flex;
  max-height: 200px;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  overflow-y: auto;
  border-radius: var(--radius-md);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 2);
}
.token-selector__button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  width: 100%;
  justify-content: flex-start;
  text-transform: none;
  &:not(.btn-active, :hover, :active:focus, :focus-visible) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-border: #0000;
    --btn-noise: none;
    &:not(:disabled, [disabled], .btn-disabled) {
      outline-color: currentColor;
      --btn-fg: currentColor;
    }
  }
  border-radius: var(--radius-md);
  border-style: var(--tw-border-style);
  border-width: 1px;
  border-color: var(--color-base-300);
  background-color: var(--color-base-100);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.token-selector__button:hover {
  --tw-translate-y: calc(var(--spacing) * -0.5);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  border-color: var(--color-primary);
  background-color: var(--color-base-200);
}
.token-selector__button:active {
  --tw-translate-y: calc(var(--spacing) * 0);
  translate: var(--tw-translate-x) var(--tw-translate-y);
}
.token-selector__button.selected {
  border-color: var(--color-primary);
  background-color: var(--color-base-200);
}
.token-selector__button.selected .token-selector__name, .token-selector__button.selected .token-selector__symbol {
  color: var(--color-primary);
}
.token-selector__token-display {
  display: flex;
  width: 100%;
  align-items: center;
  gap: calc(var(--spacing) * 2);
}
.token-selector__image {
  height: calc(var(--spacing) * 8);
  width: calc(var(--spacing) * 8);
  flex-shrink: 0;
  overflow: hidden;
  border-radius: calc(infinity * 1px);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 0.5);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
}
.token-selector__image img {
  height: calc(100% - 4px);
  width: calc(100% - 4px);
  border-radius: calc(infinity * 1px);
  object-fit: contain;
}
.token-selector__info {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
}
.token-selector__name {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-content);
}
.token-selector__symbol {
  font-size: var(--text-xs);
  line-height: var(--tw-leading, var(--text-xs--line-height));
  color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
  }
}
@screen sm {
  .token-selector__name {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .token-selector__symbol {
    font-size: 0.625rem;
  }
  .token-selector__image {
    height: calc(var(--spacing) * 7);
    width: calc(var(--spacing) * 7);
    padding: calc(var(--spacing) * 0);
  }
  .token-selector__image img {
    height: calc(100% - 2px);
    width: calc(100% - 2px);
  }
  .token-selector__button {
    padding: calc(var(--spacing) * 1);
  }
}
.wallet {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  .wallet__container {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
    margin-inline: auto;
    width: 100%;
    max-width: 400px;
    border-radius: var(--radius-lg);
    background-color: var(--color-base-100);
    padding: calc(var(--spacing) * 4);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .wallet__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1);
  }
  .wallet__header-title {
    margin: calc(var(--spacing) * 0);
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-primary);
  }
  .wallet__network-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    --badge-color: var(--color-warning);
    --badge-fg: var(--color-warning-content);
  }
  .wallet__content {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
  .wallet__status {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-md);
    background-color: var(--color-base-200);
    padding: calc(var(--spacing) * 4);
  }
  .wallet__balance {
    text-align: center;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    color: var(--color-base-content);
    border-radius: 0.25rem;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-base-300);
    background-color: var(--color-base-100);
    padding: calc(var(--spacing) * 2);
  }
  .wallet__disconnect {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    width: 100%;
    --btn-color: var(--color-error);
    --btn-fg: var(--color-error-content);
  }
  .wallet__connect-wrapper {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .wallet__connect-list {
    display: flex;
    width: 100%;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 2);
  }
  .wallet__connect-button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    width: 100%;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-md);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    & img {
      height: calc(var(--spacing) * 6);
      width: calc(var(--spacing) * 6);
      border-radius: calc(infinity * 1px);
      object-fit: cover;
    }
    & i {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    &:hover {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:active {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .wallet__payment-button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    width: 100%;
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      --tw-translate-y: calc(var(--spacing) * -0.5);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:active {
      --tw-translate-y: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &.loading {
      cursor: wait;
      opacity: 70%;
    }
    &:disabled {
      cursor: not-allowed;
      background-color: var(--color-base-300);
      color: color-mix(in srgb, var(--color-base-content) 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
      }
      transform: none;
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .wallet__connected-message {
    text-align: center;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-success);
    border-radius: var(--radius-md);
    background-color: var(--color-base-200);
    padding: calc(var(--spacing) * 2);
  }
  .address-display {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
  }
  .address-display__text {
    flex: 1;
    font-family: var(--font-mono);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    word-break: break-all;
    color: var(--color-base-content);
  }
  .address-display__button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    height: calc(var(--spacing) * 8);
    width: calc(var(--spacing) * 8);
    padding: calc(var(--spacing) * 1);
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
    --btn-color: var(--color-secondary);
    --btn-fg: var(--color-secondary-content);
    display: grid;
    place-items: center;
    & i {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  @screen sm {
    .wallet__container {
      margin: calc(var(--spacing) * 2);
      max-width: none;
    }
    .wallet__header-title {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
    .wallet__payment-button {
      padding: calc(var(--spacing) * 2);
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
}
.navigation-wrapper {
  position: fixed;
  bottom: calc(var(--spacing) * 0);
  left: calc(var(--spacing) * 0);
  z-index: 50;
  width: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--color-base-200);
}
.navigation {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-around;
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  padding-bottom: env(safe-area-inset-bottom, 0);
}
.navigation .nav-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  --tw-border-style: none;
  border-style: none;
  background-color: transparent;
  padding: calc(var(--spacing) * 2);
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
  cursor: pointer;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.navigation .nav-group.active {
  --tw-translate-y: calc(5px * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  color: var(--color-primary);
}
.navigation .nav-group:hover {
  --tw-translate-y: calc(5px * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  color: color-mix(in srgb, var(--color-primary) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-primary) 80%, transparent);
  }
}
.navigation .nav-group i {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.navigation .nav-group span {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.navigation a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: calc(var(--spacing) * 2);
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  cursor: pointer;
}
.navigation a:hover {
  --tw-translate-y: calc(5px * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
  color: color-mix(in srgb, var(--color-primary) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-primary) 80%, transparent);
  }
}
.navigation a i {
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
}
.navigation a span {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.navigation .nav-extra-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--spacing) * 2);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  cursor: pointer;
}
.navigation .nav-extra-inline:hover {
  --tw-translate-y: calc(5px * -1);
  translate: var(--tw-translate-x) var(--tw-translate-y);
}
.navigation .nav-extra-inline:active {
  --tw-scale-x: 95%;
  --tw-scale-y: 95%;
  --tw-scale-z: 95%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.navigation-dropdown {
  position: absolute;
  bottom: 100%;
  left: calc(var(--spacing) * 0);
  width: calc(4/5 * 100%);
  max-width: var(--container-xs);
  padding: calc(var(--spacing) * 2);
  border-top-left-radius: var(--radius-2xl);
  border-top-right-radius: var(--radius-2xl);
  background-color: var(--color-base-200);
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  z-index: 60;
  animation: slideUp 0.3s ease;
}
.navigation-dropdown nav {
  display: flex;
  flex-direction: column;
}
.navigation-dropdown a {
  display: flex;
  flex-direction: row;
  align-items: center;
  border-radius: var(--radius-lg);
  padding: calc(var(--spacing) * 2);
  color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
  }
  text-decoration-line: none;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
}
.navigation-dropdown a i {
  margin-right: calc(var(--spacing) * 2);
  margin-bottom: calc(var(--spacing) * 0);
  font-size: var(--text-lg);
  line-height: var(--tw-leading, var(--text-lg--line-height));
}
.navigation-dropdown a:hover {
  --tw-translate-x: 5px;
  translate: var(--tw-translate-x) var(--tw-translate-y);
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
  color: color-mix(in srgb, var(--color-primary) 80%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    color: color-mix(in oklab, var(--color-primary) 80%, transparent);
  }
}
.navigation-dropdown .nav-item-component {
  display: flex;
  align-items: center;
  padding: calc(var(--spacing) * 2);
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  cursor: pointer;
  border-radius: var(--radius-lg);
}
.navigation-dropdown .nav-item-component:hover {
  background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 10%, transparent);
  }
}
.navigation-dropdown .nav-item-component:active {
  --tw-scale-x: 95%;
  --tw-scale-y: 95%;
  --tw-scale-z: 95%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  background-color: color-mix(in srgb, var(--color-primary) 20%, transparent);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
  }
}
.nav-item-error {
  padding: calc(var(--spacing) * 2);
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  color: var(--color-error);
}
@keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@screen sm {
  .navigation .nav-group i, .navigation a i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .navigation .nav-group span, .navigation a span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}
@screen md {
  .navigation .nav-group i, .navigation a i {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .navigation .nav-group span, .navigation a span {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}
.profile-config {
  display: flex;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  padding: calc(var(--spacing) * 2);
  & h2 {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  }
  & label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
    }
  }
  & input {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    --size: calc(var(--size-field, 0.25rem) * 8);
    font-size: 0.75rem;
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -2);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    max-width: var(--container-xs);
    min-width: 200px;
  }
  & button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
}
.profile-points {
  position: relative;
  .profile-points__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
    background-color: var(--color-base-100);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1);
    padding: calc(var(--spacing) * 3);
    transition: all 0.3s ease;
    min-width: min-content;
    height: auto;
  }
  .profile-points__badge-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--spacing) * 0.5);
  }
  .profile-points__icon {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    color: var(--color-primary);
  }
  .profile-points__initial {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .profile-points__points {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: color-mix(in srgb, var(--color-base-content) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .profile-points__expanded {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
    display: none;
    min-width: max-content;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    background-color: var(--color-base-100);
    padding: calc(var(--spacing) * 2);
    white-space: nowrap;
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    flex-direction: row;
    .profile-points__badge-top {
      flex-direction: row;
      gap: calc(var(--spacing) * 2);
    }
  }
  @keyframes slideIn {
    from {
      opacity: 0;
      transform: translateX(-10px);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @screen sm {
    .profile-points__badge {
      --tw-scale-x: 90%;
      --tw-scale-y: 90%;
      --tw-scale-z: 90%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
    .profile-points--expanded .profile-points__badge {
      display: none;
    }
    .profile-points--expanded .profile-points__expanded {
      display: flex;
      animation: slideIn 0.3s ease;
    }
  }
}
@media (hover: hover) {
  .profile-points:hover .profile-points__badge {
    display: none;
  }
  .profile-points:hover .profile-points__expanded {
    display: flex;
    animation: slideIn 0.3s ease;
  }
  .profile-points:hover .profile-points__points {
    color: var(--color-primary);
  }
}
.progress-bar {
  height: calc(var(--spacing) * 12);
  width: 100%;
}
.progress-bar__fill {
  position: relative;
  height: calc(0.25rem * 2);
  width: 100%;
  appearance: none;
  overflow: hidden;
  border-radius: var(--radius-box);
  background-color: currentColor;
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, currentColor 20%, transparent);
  }
  color: var(--color-base-content);
  &:indeterminate {
    background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
    background-size: 200%;
    background-position-x: 15%;
    animation: progress 5s ease-in-out infinite;
    @supports (-moz-appearance: none) {
      &::-moz-progress-bar {
        background-color: transparent;
        background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
        background-size: 200%;
        background-position-x: 15%;
        animation: progress 5s ease-in-out infinite;
      }
    }
  }
  @supports (-moz-appearance: none) {
    &::-moz-progress-bar {
      border-radius: var(--radius-box);
      background-color: currentColor;
    }
  }
  @supports (-webkit-appearance: none) {
    &::-webkit-progress-bar {
      border-radius: var(--radius-box);
      background-color: transparent;
    }
    &::-webkit-progress-value {
      border-radius: var(--radius-box);
      background-color: currentColor;
    }
  }
  color: var(--color-primary);
}
.progress-bar__label {
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  color: var(--color-base-100);
}
.progress-bar::before {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
  content: attr(aria-valuenow);
}
@screen sm {
  .progress-bar {
    height: calc(var(--spacing) * 8);
  }
  .progress-bar__fill {
    --tw-leading: calc(var(--spacing) * 8);
    line-height: calc(var(--spacing) * 8);
  }
  .progress-bar__label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
}
.rating-stars {
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 1);
  .rating-stars__star {
    display: inline-block;
    vertical-align: middle;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    cursor: pointer;
    mask-image: url("data:image/svg+xml,%3csvg width='192' height='180' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='m96 153.044-58.779 26.243 7.02-63.513L.894 68.481l63.117-13.01L96 0l31.989 55.472 63.117 13.01-43.347 47.292 7.02 63.513z' fill-rule='evenodd'/%3e%3c/svg%3e");
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    min-height: 2rem;
    min-width: 1rem;
    font-size: 0;
    display: inline-block;
  }
  .rating-stars__star:hover {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    background-color: var(--color-warning);
  }
  .rating-stars__star--full {
    background-color: var(--color-primary);
  }
  .rating-stars__star--half {
    background-color: var(--color-warning);
    mask-size: 200%;
    mask-position: left;
    mask-position: left;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      mask-position: right;
    }
  }
  .rating-stars__star--empty {
    background-color: var(--color-base-300);
  }
}
@screen sm {
  .rating-stars {
    .rating-stars__star {
      min-height: 1.5rem;
      min-width: 0.75rem;
    }
  }
}
.select-design button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  gap: calc(var(--spacing) * 2);
  &:not(.btn-active, :hover, :active:focus, :focus-visible) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-border: #0000;
    --btn-noise: none;
    &:not(:disabled, [disabled], .btn-disabled) {
      outline-color: currentColor;
      --btn-fg: currentColor;
    }
  }
  & i {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  &:hover i {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
}
.select-language {
  position: relative;
  margin: calc(var(--spacing) * 2);
  & p {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--color-primary);
  }
  & select {
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    background-color: var(--color-base-100);
    padding-inline-start: calc(0.25rem * 4);
    padding-inline-end: calc(0.25rem * 7);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    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-size: 4px 4px, 4px 4px;
    background-repeat: no-repeat;
    text-overflow: ellipsis;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    border-color: var(--input-color);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    [dir="rtl"] & {
      background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
    }
    select {
      margin-inline-start: calc(0.25rem * -4);
      margin-inline-end: calc(0.25rem * -7);
      width: calc(100% + 2.75rem);
      appearance: none;
      padding-inline-start: calc(0.25rem * 4);
      padding-inline-end: calc(0.25rem * 7);
      height: calc(100% - 2px);
      background: inherit;
      border-radius: inherit;
      border-style: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * -5.5);
        background-image: none;
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }
    &:has(> select[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    &:has(> select[disabled]) > select[disabled] {
      cursor: not-allowed;
    }
    display: inline-block;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --size: calc(var(--size-field, 0.25rem) * 10);
    font-size: 0.875rem;
    appearance: none;
    padding-right: calc(var(--spacing) * 10);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 0.5rem center;
    background-repeat: no-repeat;
    background-size: 1.5em 1.5em;
  }
}
.language-flags {
  margin-block: calc(var(--spacing) * 2);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(var(--spacing) * 1);
  & span {
    cursor: pointer;
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    &:hover {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }
}
@screen sm {
  .select-language select {
    padding: calc(var(--spacing) * 1);
    padding-inline: calc(var(--spacing) * 2);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
}
.select-level {
  position: relative;
  margin: calc(var(--spacing) * 2);
  display: flex;
  justify-content: center;
  & select {
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    background-color: var(--color-base-100);
    padding-inline-start: calc(0.25rem * 4);
    padding-inline-end: calc(0.25rem * 7);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    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-size: 4px 4px, 4px 4px;
    background-repeat: no-repeat;
    text-overflow: ellipsis;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    border-color: var(--input-color);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    [dir="rtl"] & {
      background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
    }
    select {
      margin-inline-start: calc(0.25rem * -4);
      margin-inline-end: calc(0.25rem * -7);
      width: calc(100% + 2.75rem);
      appearance: none;
      padding-inline-start: calc(0.25rem * 4);
      padding-inline-end: calc(0.25rem * 7);
      height: calc(100% - 2px);
      background: inherit;
      border-radius: inherit;
      border-style: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * -5.5);
        background-image: none;
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
    }
    &:has(> select[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    &:has(> select[disabled]) > select[disabled] {
      cursor: not-allowed;
    }
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    appearance: none;
    padding-right: calc(var(--spacing) * 10);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 0.5rem center;
    background-repeat: no-repeat;
    background-size: 1.5em 1.5em;
  }
}
@screen sm {
  .select-level select {
    padding: calc(var(--spacing) * 1);
    padding-right: calc(var(--spacing) * 12);
    padding-left: calc(var(--spacing) * 2);
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.select-theme button {
  :where(&) {
    width: unset;
  }
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: calc(0.25rem * 1.5);
  text-align: center;
  vertical-align: middle;
  outline-offset: 2px;
  webkit-user-select: none;
  user-select: none;
  padding-inline: var(--btn-p);
  color: var(--btn-fg);
  --tw-prose-links: var(--btn-fg);
  height: var(--size);
  font-size: var(--fontsize, 0.875rem);
  font-weight: 600;
  outline-color: var(--btn-color, var(--color-base-content));
  transition-property: color, background-color, border-color, box-shadow;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 0.2s;
  border-start-start-radius: var(--join-ss, var(--radius-field));
  border-start-end-radius: var(--join-se, var(--radius-field));
  border-end-start-radius: var(--join-es, var(--radius-field));
  border-end-end-radius: var(--join-ee, var(--radius-field));
  background-color: var(--btn-bg);
  background-size: auto, calc(var(--noise) * 100%);
  background-image: none, var(--btn-noise);
  border-width: var(--border);
  border-style: solid;
  border-color: var(--btn-border);
  text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
  box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
  --size: calc(var(--size-field, 0.25rem) * 10);
  --btn-bg: var(--btn-color, var(--color-base-200));
  --btn-fg: var(--color-base-content);
  --btn-p: 1rem;
  --btn-border: var(--btn-bg);
  @supports (color: color-mix(in lab, red, red)) {
    --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
  }
  --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-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-noise: var(--fx-noise);
  .prose & {
    text-decoration-line: none;
  }
  @media (hover: hover) {
    &:hover {
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
    }
  }
  &:focus-visible {
    outline-width: 2px;
    outline-style: solid;
  }
  &:active:not(.btn-active) {
    translate: 0 0.5px;
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
    }
    --btn-border: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
  }
  &:is(:disabled, [disabled], .btn-disabled) {
    &:not(.btn-link, .btn-ghost) {
      background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      box-shadow: none;
    }
    pointer-events: none;
    --btn-border: #0000;
    --btn-noise: none;
    --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
    }
    @media (hover: hover) {
      &:hover {
        pointer-events: none;
        background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
        }
        --btn-border: #0000;
        --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
        @supports (color: color-mix(in lab, red, red)) {
          --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
        }
      }
    }
  }
  &:is(input[type="checkbox"], input[type="radio"]) {
    appearance: none;
    &::after {
      content: attr(aria-label);
    }
  }
  &:where(input:checked:not(.filter .btn)) {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
    isolation: isolate;
  }
  gap: calc(var(--spacing) * 2);
  &:not(.btn-active, :hover, :active:focus, :focus-visible) {
    --btn-shadow: "";
    --btn-bg: #0000;
    --btn-border: #0000;
    --btn-noise: none;
    &:not(:disabled, [disabled], .btn-disabled) {
      outline-color: currentColor;
      --btn-fg: currentColor;
    }
  }
  & i {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  &:hover i {
    rotate: 180deg;
  }
}
.settings {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  & button {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
}
.share-page {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  margin-inline: auto;
  display: flex;
  max-width: var(--container-md);
  flex-direction: column;
  align-items: center;
  gap: calc(var(--spacing) * 4);
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .share-page__input {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      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) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: color-mix(in srgb, var(--color-base-content) 20%, #0000);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="date"]) {
      display: inline-block;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: color-mix(in srgb, var(--color-base-content) 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: color-mix(in srgb, var(--color-base-content) 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    width: 100%;
    text-align: center;
    &:focus {
      border-color: var(--color-primary);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, var(--color-primary) 20%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .share-page__message {
    margin-top: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-success);
  }
}
.social-links {
  display: flex;
  justify-content: center;
  gap: calc(var(--spacing) * 2);
  & a {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  & a:hover {
    --tw-scale-x: 150%;
    --tw-scale-y: 150%;
    --tw-scale-z: 150%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
  }
}
.swipe {
  position: relative;
  display: flex;
  height: 100%;
  min-height: 300px;
  width: 100%;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  touch-action: none;
  user-select: none;
  .swipe__content {
    position: relative;
    display: flex;
    width: 100%;
    max-width: 300px;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1;
    transition: transform 0.1s ease;
    will-change: transform;
  }
  .swipe__content:active {
    transition: none;
  }
  .swipe__content--dragging {
    transition: none;
  }
  .swipe__hints {
    pointer-events: none;
    position: absolute;
    inset: calc(var(--spacing) * 0);
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .swipe__hint {
    position: absolute;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    background-color: var(--color-base-100);
    --size: calc(var(--size-selector, 0.25rem) * 7);
    font-size: 1rem;
    padding-inline: calc(0.25rem * 3.5 - var(--border));
    opacity: 70%;
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition: all 0.3s ease;
  }
  .swipe__hint i {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    transition: all 0.3s ease;
  }
  .swipe__hint:hover {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    opacity: 100%;
  }
  .swipe__hint--left {
    top: calc(1/2 * 100%);
    left: calc(var(--spacing) * 4);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .swipe__hint--left i {
    color: var(--color-error);
  }
  .swipe__hint--left:hover {
    background-color: color-mix(in srgb, var(--color-error) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
  }
  .swipe__hint--right {
    top: calc(1/2 * 100%);
    right: calc(var(--spacing) * 4);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .swipe__hint--right i {
    color: var(--color-success);
  }
  .swipe__hint--right:hover {
    background-color: color-mix(in srgb, var(--color-success) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
  }
  .swipe__hint--up {
    top: calc(var(--spacing) * 4);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .swipe__hint--up i {
    color: var(--color-info);
  }
  .swipe__hint--up:hover {
    background-color: color-mix(in srgb, var(--color-info) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-info) 10%, transparent);
    }
  }
  .swipe__hint--down {
    bottom: calc(var(--spacing) * 4);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .swipe__hint--down i {
    color: var(--color-warning);
  }
  .swipe__hint--down:hover {
    background-color: color-mix(in srgb, var(--color-warning) 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
    }
  }
  .swipe__direction {
    pointer-events: none;
    position: absolute;
    inset: calc(var(--spacing) * 0);
    opacity: 0%;
    transition: opacity 0.3s ease;
  }
  .swipe__direction--left {
    background: linear-gradient( to left, transparent, oklch(var(--er) / 0.2) );
  }
  .swipe__direction--right {
    background: linear-gradient( to right, transparent, oklch(var(--su) / 0.2) );
  }
  .swipe__direction--up {
    background: linear-gradient( to top, transparent, oklch(var(--in) / 0.2) );
  }
  .swipe__direction--down {
    background: linear-gradient( to bottom, transparent, oklch(var(--wa) / 0.2) );
  }
}
@screen sm {
  .swipe {
    min-height: 250px;
  }
  .swipe__content {
    max-width: 250px;
  }
  .swipe__hint {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
    &.badge-outline {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      background-image: none;
    }
    &.badge-dash {
      --badge-fg: var(--badge-color);
      --badge-bg: #0000;
      border-style: dashed;
      background-image: none;
    }
    &.badge-soft {
      color: var(--badge-color, var(--color-base-content));
      background-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--badge-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--badge-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      background-image: none;
    }
    --size: calc(var(--size-selector, 0.25rem) * 6);
    font-size: 0.875rem;
    padding-inline: calc(0.25rem * 3 - var(--border));
  }
  .swipe__hint i {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .swipe__hint--left, .swipe__hint--right {
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .swipe__hint--up, .swipe__hint--down {
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}
.timer {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-box);
  outline-width: 2px;
  transition: outline 0.2s ease-in-out;
  outline: 0 solid #0000;
  outline-offset: 2px;
  &:focus {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  &:focus-visible {
    outline-color: currentColor;
  }
  :where(figure:first-child) {
    overflow: hidden;
    border-start-start-radius: inherit;
    border-start-end-radius: inherit;
    border-end-start-radius: unset;
    border-end-end-radius: unset;
  }
  :where(figure:last-child) {
    overflow: hidden;
    border-start-start-radius: unset;
    border-start-end-radius: unset;
    border-end-start-radius: inherit;
    border-end-end-radius: inherit;
  }
  &:where(.card-border) {
    border: var(--border) solid var(--color-base-200);
  }
  &:where(.card-dash) {
    border: var(--border) dashed var(--color-base-200);
  }
  &.image-full {
    display: grid;
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
    > .card-body {
      position: relative;
      color: var(--color-neutral-content);
    }
    :where(figure) {
      overflow: hidden;
      border-radius: inherit;
    }
    > figure img {
      height: 100%;
      object-fit: cover;
      filter: brightness(28%);
    }
  }
  figure {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
    cursor: pointer;
    user-select: none;
  }
  &:has(> :checked) {
    outline: 2px solid currentColor;
  }
  background-color: var(--color-base-100);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  position: relative;
  & .timer__title {
    position: absolute;
    top: calc(var(--spacing) * 1);
    left: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: color-mix(in srgb, var(--color-base-content) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
    }
  }
  & .timer__text {
    display: inline-flex;
    &.countdown {
      line-height: 1em;
    }
    & > * {
      display: inline-block;
      overflow-y: hidden;
      height: 1em;
      &:before {
        position: relative;
        content: "00\A 01\A 02\A 03\A 04\A 05\A 06\A 07\A 08\A 09\A 10\A 11\A 12\A 13\A 14\A 15\A 16\A 17\A 18\A 19\A 20\A 21\A 22\A 23\A 24\A 25\A 26\A 27\A 28\A 29\A 30\A 31\A 32\A 33\A 34\A 35\A 36\A 37\A 38\A 39\A 40\A 41\A 42\A 43\A 44\A 45\A 46\A 47\A 48\A 49\A 50\A 51\A 52\A 53\A 54\A 55\A 56\A 57\A 58\A 59\A 60\A 61\A 62\A 63\A 64\A 65\A 66\A 67\A 68\A 69\A 70\A 71\A 72\A 73\A 74\A 75\A 76\A 77\A 78\A 79\A 80\A 81\A 82\A 83\A 84\A 85\A 86\A 87\A 88\A 89\A 90\A 91\A 92\A 93\A 94\A 95\A 96\A 97\A 98\A 99\A";
        white-space: pre;
        top: calc(var(--value) * -1em);
        text-align: center;
        transition: all 1s cubic-bezier(1, 0, 0, 1);
      }
    }
    font-family: var(--font-mono);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: calc(var(--spacing) * 4);
  }
}
@screen sm {
  .timer {
    padding: calc(var(--spacing) * 3);
    & .timer__title {
      font-size: 10px;
    }
    & .timer__text {
      margin-top: calc(var(--spacing) * 3);
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
}
.tour-button {
  z-index: 10;
  & .tour-button__btn {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --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-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-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible {
      outline-width: 2px;
      outline-style: solid;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
}
.tour-config {
  border-radius: var(--radius-lg);
  background-color: var(--color-base-200);
  padding: calc(var(--spacing) * 4);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  & label {
    display: flex;
    cursor: pointer;
    align-items: center;
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  & input[type="checkbox"] {
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    border-radius: 0.25rem;
    color: var(--color-primary-content);
    --input-color: var(--color-primary);
    color: var(--color-primary);
    &:focus {
      border-color: var(--color-primary);
    }
    &:focus {
      --tw-ring-color: var(--color-primary);
    }
  }
}
.video {
  position: relative;
  margin-inline: auto;
  width: 100%;
  max-width: 800px;
  cursor: pointer;
  overflow: hidden;
  border-radius: var(--radius-lg);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  .video--playing {
    cursor: auto;
  }
  .video__preview {
    position: relative;
    display: flex;
    height: calc(var(--spacing) * 0);
    width: 100%;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background-color: var(--color-black);
    padding-bottom: 56.25%;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
  }
  .video__preview--hidden {
    pointer-events: none;
    visibility: hidden;
    opacity: 0%;
  }
  .video__preview-image {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }
  .video__preview-emoji {
    position: absolute;
    top: calc(1/2 * 100%);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
    color: var(--color-white);
  }
  .video__play-button {
    position: absolute;
    top: calc(1/2 * 100%);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    color: var(--color-white);
    filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.5));
    transition: transform 0.2s ease;
  }
  .video__iframe, .video__player {
    position: absolute;
    inset: calc(var(--spacing) * 0);
    z-index: 1;
    height: 100%;
    width: 100%;
    border-style: var(--tw-border-style);
    border-width: 0px;
    opacity: 100%;
    transition: opacity 0.3s ease;
  }
  .video__player {
    object-fit: cover;
  }
}
:root {
  --primary-color: #667eea;
  --primary-hover: #5568d3;
  --primary-light: rgba(102, 126, 234, 0.1);
  --secondary-color: #764ba2;
  --accent-color: #24c8db;
  --text-color: #2d3748;
  --text-light: #718096;
  --text-muted: #a0aec0;
  --bg-color: #f6f6f6;
  --card-bg: #ffffff;
  --border-color: #e2e8f0;
  --border-hover: #cbd5e0;
  --success-color: #48bb78;
  --error-color: #e53e3e;
  --warning-color: #ed8936;
  --info-color: #4299e1;
  --gradient-primary: linear-gradient(
        135deg,
        var(--primary-color),
        var(--secondary-color)
    );
  --gradient-primary-light: linear-gradient(
        135deg,
        rgba(102, 126, 234, 0.05),
        rgba(118, 75, 162, 0.05)
    );
  --gradient-overlay: linear-gradient(
        135deg,
        rgba(255, 255, 255, 0.1),
        transparent
    );
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-md: 0 6px 12px rgba(0, 0, 0, 0.12);
  --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.15);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.2);
  --shadow-glow: 0 0 20px rgba(102, 126, 234, 0.3);
  --shadow-glow-lg: 0 0 40px rgba(102, 126, 234, 0.4);
  --radius-sm: 6px;
  --radius: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  --spacing-xs: 8px;
  --spacing-sm: 16px;
  --spacing-md: 24px;
  --spacing-lg: 32px;
  --spacing-xl: 48px;
  --spacing-2xl: 64px;
  --font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
        Ubuntu, sans-serif;
  --font-mono: "Monaco", "Courier New", monospace;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 2rem;
  --font-size-4xl: 2.5rem;
  --line-height-tight: 1.2;
  --line-height-base: 1.6;
  --line-height-relaxed: 1.8;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --transition-fast: 0.15s ease;
  --transition-base: 0.3s ease;
  --transition-slow: 0.5s ease;
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
}
@media (prefers-color-scheme: dark) {
  :root {
    --text-color: #f7fafc;
    --text-light: #cbd5e0;
    --text-muted: #718096;
    --bg-color: #1a202c;
    --card-bg: #2d3748;
    --border-color: #4a5568;
    --border-hover: #718096;
    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.3);
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.4);
    --shadow: 0 4px 6px rgba(0, 0, 0, 0.5);
    --shadow-md: 0 6px 12px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.6);
    --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.7);
  }
}
@media (prefers-reduced-motion: reduce) {
  :root {
    --transition-fast: 0s;
    --transition-base: 0s;
    --transition-slow: 0s;
  }
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: var(--font-family);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  background: var(--bg-color);
  color: var(--text-color);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-text-size-adjust: 100%;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: var(--spacing-sm);
}
h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  letter-spacing: -0.02em;
}
h2 {
  font-size: clamp(1.5rem, 4vw, 2rem);
}
h3 {
  font-size: 1.25rem;
  font-weight: 600;
}
p {
  margin-bottom: var(--spacing-sm);
}
a {
  color: var(--primary-color);
  text-decoration: none;
  transition: all var(--transition-fast);
}
a:hover {
  color: var(--primary-hover);
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes slideUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes heartbeat {
  0%, 100% {
    transform: scale(1);
  }
  25% {
    transform: scale(1.1);
  }
  50% {
    transform: scale(1);
  }
  75% {
    transform: scale(1.05);
  }
}
button {
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  border: none;
  border-radius: 50px;
  transition: all var(--transition-base);
  position: relative;
  overflow: hidden;
}
.btn-primary, .start-button, .cta-button {
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  padding: 16px 48px;
  box-shadow: var(--shadow);
}
.btn-primary::before, .start-button::before, .cta-button::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  transform: translate(-50%, -50%);
  transition: width 0.6s, height 0.6s;
}
.btn-primary:hover, .start-button:hover, .cta-button:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: var(--shadow-lg), 0 8px 20px rgba(102, 126, 234, 0.4);
}
.btn-primary:hover::before, .start-button:hover::before, .cta-button:hover::before {
  width: 300px;
  height: 300px;
}
.btn-primary:active, .start-button:active, .cta-button:active {
  transform: translateY(-1px);
}
@media (max-width: 768px) {
  .btn-primary, .start-button, .cta-button {
    padding: 14px 32px;
    font-size: 1rem;
    width: 100%;
    max-width: 300px;
  }
}
.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--spacing-md);
}
@media (max-width: 768px) {
  .container {
    padding: var(--spacing-sm);
  }
}
.page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  animation: fadeIn 0.6s ease-out;
}
.page__main {
  flex: 1;
}
section {
  margin-bottom: var(--spacing-xl);
  animation: slideUp 0.6s ease-out backwards;
}
section:nth-child(1) {
  animation-delay: 0.1s;
}
section:nth-child(2) {
  animation-delay: 0.2s;
}
section:nth-child(3) {
  animation-delay: 0.3s;
}
section:nth-child(4) {
  animation-delay: 0.4s;
}
section:nth-child(5) {
  animation-delay: 0.5s;
}
section h2 {
  font-size: clamp(1.5rem, 4vw, 2rem);
  margin-bottom: var(--spacing-md);
  color: var(--text-color);
  font-weight: 700;
  text-align: center;
}
@media (max-width: 768px) {
  section {
    margin-bottom: var(--spacing-md);
  }
}
.header {
  text-align: center;
  padding: var(--spacing-xl) var(--spacing-md);
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  border-radius: var(--border-radius-lg);
  margin-bottom: var(--spacing-lg);
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-lg);
}
.header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), transparent);
  pointer-events: none;
}
.header h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  margin-bottom: var(--spacing-sm);
  font-weight: 700;
  position: relative;
  z-index: 1;
  letter-spacing: -0.02em;
}
.header__subtitle {
  font-size: clamp(1rem, 3vw, 1.25rem);
  opacity: 0.95;
  position: relative;
  z-index: 1;
  font-weight: 500;
}
@media (max-width: 768px) {
  .header {
    padding: var(--spacing-lg) var(--spacing-sm);
    margin-bottom: var(--spacing-md);
  }
}
.footer {
  background: var(--card-bg);
  border-top: 1px solid var(--border-color);
  margin-top: var(--spacing-xl);
  padding: var(--spacing-lg) var(--spacing-md);
  box-shadow: var(--shadow);
}
.footer__content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-sm);
  text-align: center;
}
.footer__text {
  font-size: 1rem;
  color: var(--text-color);
  margin: 0;
  line-height: 1.6;
}
.footer__heart {
  color: var(--error-color);
  animation: heartbeat 1.5s infinite;
  display: inline-block;
  margin: 0 2px;
  font-size: 1.1rem;
}
.footer__link {
  color: var(--primary-color);
  text-decoration: none;
  font-weight: 600;
  transition: all var(--transition-fast);
  position: relative;
}
.footer__link::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--primary-color);
  transition: width var(--transition-base);
}
.footer__link:hover {
  color: var(--primary-hover);
}
.footer__link:hover::after {
  width: 100%;
}
.footer__version {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  font-size: 0.9rem;
  color: var(--text-light);
  margin: 0;
}
.footer__version-label {
  font-weight: 500;
}
.footer__version-number {
  font-family: "Monaco", "Courier New", monospace;
  background: rgba(102, 126, 234, 0.1);
  padding: 2px 8px;
  border-radius: 4px;
  font-weight: 600;
  color: var(--primary-color);
}
.footer__links {
  display: flex;
  gap: var(--spacing-md);
  margin-top: var(--spacing-xs);
}
.footer__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(102, 126, 234, 0.1);
  color: var(--primary-color);
  text-decoration: none;
  transition: all var(--transition-base);
  font-size: 1.2rem;
}
.footer__social-link:hover {
  background: var(--primary-color);
  color: white;
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}
.footer__social-link:active {
  transform: translateY(-1px);
}
.footer__social-link i {
  transition: transform var(--transition-fast);
}
.footer__social-link:hover i {
  transform: scale(1.1);
}
@media (max-width: 768px) {
  .footer {
    padding: var(--spacing-md) var(--spacing-sm);
  }
  .footer__content {
    gap: var(--spacing-xs);
  }
  .footer__text {
    font-size: 0.9rem;
  }
  .footer__version {
    font-size: 0.85rem;
  }
  .footer__links {
    gap: var(--spacing-sm);
  }
  .footer__social-link {
    width: 36px;
    height: 36px;
    font-size: 1.1rem;
  }
}
@media (prefers-color-scheme: dark) {
  .footer {
    background: var(--card-bg);
    border-top-color: var(--border-color);
  }
  .footer__version-number {
    background: rgba(102, 126, 234, 0.2);
  }
  .footer__social-link {
    background: rgba(102, 126, 234, 0.15);
  }
  .footer__social-link:hover {
    background: var(--primary-color);
  }
}
@media print {
  .footer__links {
    display: none;
  }
  .footer__link::after {
    display: none;
  }
  .footer {
    border-top: 1px solid #000;
    box-shadow: none;
  }
}
@keyframes heartbeat {
  0%, 100% {
    transform: scale(1);
  }
  25% {
    transform: scale(1.1);
  }
  50% {
    transform: scale(1);
  }
  75% {
    transform: scale(1.05);
  }
}
@media (prefers-reduced-motion: reduce) {
  .footer__heart {
    animation: none;
  }
  .footer__social-link, .footer__link {
    transition: none;
  }
}
.card {
  background: var(--card-bg);
  padding: var(--spacing-lg);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow);
  border: 1px solid var(--border-color);
  transition: all var(--transition-base);
}
.card:hover {
  box-shadow: var(--shadow-lg);
  transform: translateY(-2px);
}
.card--centered {
  text-align: center;
}
.card h2 {
  margin-bottom: var(--spacing-sm);
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.topic-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-md);
}
.topic-card {
  background: var(--card-bg);
  padding: var(--spacing-lg);
  border-radius: var(--border-radius-lg);
  box-shadow: var(--shadow);
  text-align: center;
  transition: all var(--transition-base);
  border: 1px solid var(--border-color);
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.topic-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient( 90deg, var(--primary-color), var(--secondary-color) );
  transform: scaleX(0);
  transition: transform var(--transition-base);
}
.topic-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--shadow-lg), var(--shadow-glow);
  border-color: var(--primary-color);
}
.topic-card:hover::before {
  transform: scaleX(1);
}
.topic-card__icon {
  font-size: 3.5rem;
  margin-bottom: var(--spacing-sm);
  display: inline-block;
  transition: transform var(--transition-base);
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}
.topic-card:hover .topic-card__icon {
  transform: scale(1.1) rotate(5deg);
}
.topic-card h3 {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-xs);
  color: var(--text-color);
  font-weight: 600;
}
.topic-card p {
  color: var(--text-light);
  font-size: 0.95rem;
}
@media (max-width: 768px) {
  .topic-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-sm);
  }
}
.feature-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: var(--spacing-md);
  margin-top: var(--spacing-md);
}
.feature-item {
  background: var(--card-bg);
  padding: var(--spacing-md);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow);
  display: flex;
  align-items: center;
  gap: var(--spacing-sm);
  border: 1px solid var(--border-color);
  transition: all var(--transition-base);
}
.feature-item:hover {
  box-shadow: var(--shadow-lg);
  transform: translateX(4px);
  border-color: var(--accent-color);
}
.feature-item__icon {
  font-size: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
  height: 60px;
  background: linear-gradient( 135deg, rgba(102, 126, 234, 0.1), rgba(118, 75, 162, 0.1) );
  border-radius: var(--border-radius);
  transition: all var(--transition-base);
}
.feature-item:hover .feature-item__icon {
  background: linear-gradient( 135deg, rgba(102, 126, 234, 0.2), rgba(118, 75, 162, 0.2) );
  transform: scale(1.05);
}
.feature-item__content h3 {
  font-size: 1.1rem;
  margin-bottom: 4px;
  font-weight: 600;
  color: var(--text-color);
}
.feature-item__content p {
  color: var(--text-light);
  font-size: 0.9rem;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .feature-list {
    grid-template-columns: 1fr;
    gap: var(--spacing-sm);
  }
  .feature-item {
    flex-direction: column;
    text-align: center;
  }
}
.konnektoren-info {
  margin: var(--spacing-xl) 0;
}
.konnektoren-info__card {
  background: linear-gradient( 135deg, rgba(102, 126, 234, 0.05), rgba(118, 75, 162, 0.05) );
  border: 2px solid var(--primary-color);
  border-radius: var(--border-radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-lg);
  transition: all var(--transition-base);
}
.konnektoren-info__card:hover {
  box-shadow: var(--shadow-lg), 0 0 40px rgba(102, 126, 234, 0.2);
  transform: translateY(-2px);
}
.konnektoren-info__header {
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  padding: var(--spacing-lg);
  text-align: center;
}
.konnektoren-info__title {
  color: white;
  font-size: 1.75rem;
  font-weight: 700;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-sm);
}
.konnektoren-info__title-icon {
  font-size: 2rem;
}
.konnektoren-info__content {
  padding: var(--spacing-lg);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-md);
}
.konnektoren-info__description {
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--text-color);
  margin: 0;
}
.konnektoren-info__link {
  color: var(--primary-color);
  text-decoration: none;
  font-weight: 700;
  transition: all var(--transition-fast);
  position: relative;
  display: inline-block;
}
.konnektoren-info__link::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background: var(--primary-color);
  transition: width var(--transition-base);
}
.konnektoren-info__link:hover {
  color: var(--primary-hover);
}
.konnektoren-info__link:hover::after {
  width: 100%;
}
.konnektoren-info__features {
  background: rgba(102, 126, 234, 0.03);
  padding: var(--spacing-md);
  border-radius: var(--border-radius);
  border: 1px solid rgba(102, 126, 234, 0.1);
}
.konnektoren-info__features-title {
  font-size: 1.2rem;
  margin: 0 0 var(--spacing-sm) 0;
  color: var(--text-color);
  font-weight: 600;
}
.konnektoren-info__features-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}
.konnektoren-info__feature-item {
  padding: var(--spacing-xs) var(--spacing-sm);
  font-size: 1.05rem;
  transition: all var(--transition-fast);
  border-left: 3px solid transparent;
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
}
.konnektoren-info__feature-item:hover {
  padding-left: var(--spacing-md);
  border-left-color: var(--primary-color);
  background: rgba(102, 126, 234, 0.05);
  transform: translateX(4px);
}
.konnektoren-info__cta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: var(--spacing-md) 0;
}
.konnektoren-info__cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-xs);
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  padding: 16px 48px;
  border-radius: 50px;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.15rem;
  transition: all var(--transition-base);
  box-shadow: var(--shadow);
  position: relative;
  overflow: hidden;
  border: none;
  cursor: pointer;
}
.konnektoren-info__cta-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.2), transparent );
  transition: left 0.5s ease;
}
.konnektoren-info__cta-button:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: var(--shadow-lg), 0 8px 20px rgba(102, 126, 234, 0.4);
}
.konnektoren-info__cta-button:hover::before {
  left: 100%;
}
.konnektoren-info__cta-button:active {
  transform: translateY(-1px) scale(1.01);
}
.konnektoren-info__cta-icon {
  font-size: 1rem;
  transition: transform var(--transition-fast);
}
.konnektoren-info__cta-button:hover .konnektoren-info__cta-icon {
  transform: translateX(4px);
}
.konnektoren-info__note {
  text-align: center;
  padding: var(--spacing-sm) var(--spacing-md);
  background: linear-gradient( 135deg, rgba(102, 126, 234, 0.08), rgba(118, 75, 162, 0.08) );
  border-radius: var(--border-radius);
  border: 1px dashed var(--primary-color);
}
.konnektoren-info__note-text {
  margin: 0;
  font-style: italic;
  color: var(--text-light);
  font-size: 0.95rem;
}
.konnektoren-info__note-icon {
  margin-right: var(--spacing-xs);
}
@media (max-width: 768px) {
  .konnektoren-info__header {
    padding: var(--spacing-md);
  }
  .konnektoren-info__title {
    font-size: 1.5rem;
    flex-direction: column;
    gap: var(--spacing-xs);
  }
  .konnektoren-info__title-icon {
    font-size: 1.75rem;
  }
  .konnektoren-info__content {
    padding: var(--spacing-md);
    gap: var(--spacing-sm);
  }
  .konnektoren-info__description {
    font-size: 1rem;
  }
  .konnektoren-info__features {
    padding: var(--spacing-sm);
  }
  .konnektoren-info__feature-item {
    font-size: 1rem;
  }
  .konnektoren-info__cta-button {
    padding: 14px 32px;
    font-size: 1rem;
    width: 100%;
    max-width: 320px;
  }
}
@media (prefers-color-scheme: dark) {
  .konnektoren-info__card {
    background: linear-gradient( 135deg, rgba(102, 126, 234, 0.08), rgba(118, 75, 162, 0.08) );
  }
  .konnektoren-info__features {
    background: rgba(102, 126, 234, 0.08);
    border-color: rgba(102, 126, 234, 0.2);
  }
  .konnektoren-info__feature-item:hover {
    background: rgba(102, 126, 234, 0.12);
  }
  .konnektoren-info__note {
    background: linear-gradient( 135deg, rgba(102, 126, 234, 0.15), rgba(118, 75, 162, 0.15) );
  }
}
@media print {
  .konnektoren-info__cta-button {
    background: none;
    color: var(--text-color);
    border: 2px solid var(--primary-color);
  }
  .konnektoren-info__card:hover {
    transform: none;
  }
}
.navigation {
  background: var(--card-bg);
  box-shadow: var(--shadow);
  border-bottom: 1px solid var(--border-color);
  position: sticky;
  top: 0;
  z-index: 100;
}
.navigation__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: var(--spacing-sm) var(--spacing-md);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-md);
}
.navigation__logo {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--primary-color);
  text-decoration: none;
  transition: all var(--transition-fast);
}
.navigation__logo:hover {
  color: var(--primary-hover);
  transform: scale(1.05);
}
.navigation__links {
  display: flex;
  gap: var(--spacing-md);
  align-items: center;
}
.navigation__link {
  color: var(--text-color);
  text-decoration: none;
  font-weight: 500;
  padding: 8px 16px;
  border-radius: var(--border-radius);
  transition: all var(--transition-fast);
}
.navigation__link:hover {
  background: rgba(102, 126, 234, 0.1);
  color: var(--primary-color);
}
.navigation__link--active {
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
}
.navigation__language {
  margin-left: auto;
  position: relative;
}
.navigation__language .select-language {
  position: relative;
  display: inline-block;
}
.navigation__language .select-language p {
  margin: 0;
  font-size: 0;
  line-height: 0;
  position: relative;
}
.navigation__language .select-language select {
  display: inline-block;
  padding: 0.5rem 0.75rem;
  border-radius: var(--radius-full);
  border: 2px solid var(--border-color);
  background: var(--card-bg);
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: var(--font-weight-medium);
  transition: all var(--transition-fast);
  min-width: 100px;
}
.navigation__language .select-language select:hover {
  border-color: var(--primary-color);
  background: var(--primary-light);
}
.navigation__language .select-language select:focus {
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.navigation__language .select-language:hover::before {
  content: "Select a language";
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  transform: translateX(0);
  background: var(--text-color);
  color: white;
  padding: var(--spacing-xs) var(--spacing-sm);
  border-radius: var(--radius);
  font-size: var(--font-size-xs);
  white-space: nowrap;
  opacity: 1;
  pointer-events: none;
  z-index: var(--z-tooltip);
  box-shadow: var(--shadow-md);
  animation: tooltipFadeIn 0.2s ease-out;
}
.navigation__language .select-language:hover::after {
  content: "";
  position: absolute;
  top: calc(100% + 4px);
  right: 16px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid var(--text-color);
  z-index: var(--z-tooltip);
  animation: tooltipFadeIn 0.2s ease-out;
}
@keyframes tooltipFadeIn {
  from {
    opacity: 0;
    transform: translateY(-5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 768px) {
  .navigation__container {
    padding: var(--spacing-xs) var(--spacing-sm);
    flex-wrap: wrap;
  }
  .navigation__logo {
    font-size: 1.25rem;
  }
  .navigation__links {
    gap: var(--spacing-xs);
    flex-wrap: wrap;
  }
  .navigation__link {
    padding: 6px 12px;
    font-size: 0.9rem;
  }
  .navigation__language {
    margin-left: 0;
  }
  .navigation__language .select-language select {
    min-width: auto;
    font-size: 0.85rem;
    padding: 0.4rem 0.6rem;
  }
  .navigation__language .select-language:hover::before, .navigation__language .select-language:hover::after {
    display: none;
  }
}
@media (max-width: 1024px) and (min-width: 769px) {
  .navigation__container {
    padding: var(--spacing-sm);
  }
  .navigation__links {
    gap: var(--spacing-sm);
  }
}
.navigation__language .select-language p::before {
  content: attr(data-sr-text);
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}
@media (prefers-color-scheme: dark) {
  .navigation {
    background: var(--card-bg);
    border-bottom-color: var(--border-color);
  }
  .navigation__link:hover {
    background: rgba(102, 126, 234, 0.15);
  }
  .navigation__language .select-language select {
    background: var(--card-bg);
    border-color: var(--border-color);
    color: var(--text-color);
  }
  .navigation__language .select-language select:hover {
    background: var(--primary-light);
  }
}
@media print {
  .navigation {
    position: static;
    box-shadow: none;
    border-bottom: 1px solid #000;
  }
  .navigation__language {
    display: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .navigation__logo, .navigation__link, .navigation__language .select-language select {
    transition: none;
  }
  .navigation__language .select-language:hover::before, .navigation__language .select-language:hover::after {
    animation: none;
  }
}
.navigation__link:focus-visible, .navigation__language .select-language select:focus-visible {
  outline: 2px solid var(--primary-color);
  outline-offset: 2px;
}
@media (prefers-contrast: high) {
  .navigation {
    border-bottom-width: 2px;
  }
  .navigation__link, .navigation__language .select-language select {
    border-width: 2px;
  }
}
.challenge-effect {
  position: relative;
  width: 100%;
  min-height: 400px;
}
.challenge-effect__content {
  position: relative;
  z-index: 1;
}
.challenge-effect__blink {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: var(--z-modal);
  animation: blink 0.5s ease-in-out;
}
.challenge-effect__blink--correct {
  background-color: rgba(72, 187, 120, 0.3);
}
.challenge-effect__blink--incorrect {
  background-color: rgba(229, 62, 62, 0.3);
}
@keyframes pulse {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.05);
    opacity: 0.9;
  }
}
@keyframes blink {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}
.challenge-effect--shake {
  animation: shake 0.5s ease-in-out;
}
.challenge-effect__confetti {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: var(--z-modal);
}
.challenge-effect__progress {
  position: sticky;
  top: 0;
  background: var(--card-bg);
  padding: var(--spacing-sm);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  margin-bottom: var(--spacing-md);
  z-index: var(--z-sticky);
}
.challenge-effect__progress-bar {
  height: 8px;
  background: var(--border-color);
  border-radius: var(--radius-full);
  overflow: hidden;
}
.challenge-effect__progress-fill {
  height: 100%;
  background: var(--gradient-primary);
  transition: width var(--transition-slow);
  border-radius: var(--radius-full);
}
.challenge-effect__progress-text {
  text-align: center;
  font-size: var(--font-size-sm);
  color: var(--text-light);
  margin-top: var(--spacing-xs);
}
.challenge-effect__loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 300px;
  gap: var(--spacing-md);
}
.challenge-effect__spinner {
  width: 50px;
  height: 50px;
  border: 4px solid var(--border-color);
  border-top-color: var(--primary-color);
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 768px) {
  .challenge-effect {
    min-height: 300px;
  }
  .challenge-effect__progress {
    position: relative;
    top: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  .challenge-effect__blink, .challenge-effect--shake {
    animation: none;
  }
  .challenge-effect__spinner {
    animation-duration: 2s;
  }
}
.challenge-container {
  background: var(--card-bg);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  box-shadow: var(--shadow-md);
  border: 1px solid var(--border-color);
  transition: all var(--transition-base);
}
.challenge-container:hover {
  box-shadow: var(--shadow-lg);
}
.challenge-container__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-md);
  padding-bottom: var(--spacing-sm);
  border-bottom: 2px solid var(--border-color);
}
.challenge-container__title {
  font-size: var(--font-size-2xl);
  font-weight: var(--font-weight-bold);
  color: var(--text-color);
  margin: 0;
}
.challenge-container__badge {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  background: var(--gradient-primary-light);
  color: var(--primary-color);
  padding: var(--spacing-xs) var(--spacing-sm);
  border-radius: var(--radius-full);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
}
.challenge-container__body {
  margin-bottom: var(--spacing-md);
}
.challenge-container__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: var(--spacing-sm);
  border-top: 1px solid var(--border-color);
}
.challenge-container__actions {
  display: flex;
  gap: var(--spacing-sm);
}
.challenge-question {
  background: var(--gradient-primary-light);
  border-left: 4px solid var(--primary-color);
  padding: var(--spacing-md);
  border-radius: var(--radius);
  margin-bottom: var(--spacing-md);
}
.challenge-question__text {
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-medium);
  color: var(--text-color);
  margin-bottom: var(--spacing-sm);
}
.challenge-question__help {
  font-size: var(--font-size-sm);
  color: var(--text-light);
  font-style: italic;
}
.challenge-question__hint {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  margin-top: var(--spacing-sm);
  padding: var(--spacing-sm);
  background: rgba(255, 255, 255, 0.5);
  border-radius: var(--radius-sm);
  font-size: var(--font-size-sm);
  color: var(--info-color);
}
.challenge-options {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  margin: var(--spacing-md) 0;
}
.challenge-option {
  display: flex;
  align-items: center;
  padding: var(--spacing-md);
  background: var(--card-bg);
  border: 2px solid var(--border-color);
  border-radius: var(--radius);
  cursor: pointer;
  transition: all var(--transition-base);
  font-size: var(--font-size-base);
}
.challenge-option:hover {
  border-color: var(--primary-color);
  background: var(--primary-light);
  transform: translateX(4px);
}
.challenge-option--selected {
  border-color: var(--primary-color);
  background: var(--primary-light);
}
.challenge-option--correct {
  border-color: var(--success-color);
  background: rgba(72, 187, 120, 0.1);
}
.challenge-option--incorrect {
  border-color: var(--error-color);
  background: rgba(229, 62, 62, 0.1);
}
.challenge-option__icon {
  margin-right: var(--spacing-sm);
  font-size: var(--font-size-xl);
}
.challenge-option__text {
  flex: 1;
}
.challenge-option__indicator {
  font-size: var(--font-size-xl);
  margin-left: var(--spacing-sm);
}
.challenge-input {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  margin: var(--spacing-md) 0;
}
.challenge-input__label {
  font-weight: var(--font-weight-medium);
  color: var(--text-color);
}
.challenge-input__field {
  padding: var(--spacing-md);
  border: 2px solid var(--border-color);
  border-radius: var(--radius);
  font-size: var(--font-size-base);
  font-family: var(--font-family);
  transition: all var(--transition-fast);
}
.challenge-input__field:focus {
  outline: none;
  border-color: var(--primary-color);
  box-shadow: 0 0 0 3px var(--primary-light);
}
.challenge-input__field--correct {
  border-color: var(--success-color);
}
.challenge-input__field--incorrect {
  border-color: var(--error-color);
}
.challenge-feedback {
  padding: var(--spacing-md);
  border-radius: var(--radius);
  font-weight: var(--font-weight-medium);
  text-align: center;
  margin: var(--spacing-md) 0;
  animation: slideUp 0.3s ease-out;
}
.challenge-feedback--success {
  background: rgba(72, 187, 120, 0.1);
  color: var(--success-color);
  border: 1px solid var(--success-color);
}
.challenge-feedback--error {
  background: rgba(229, 62, 62, 0.1);
  color: var(--error-color);
  border: 1px solid var(--error-color);
}
.challenge-feedback--info {
  background: rgba(66, 153, 225, 0.1);
  color: var(--info-color);
  border: 1px solid var(--info-color);
}
.challenge-feedback--warning {
  background: rgba(237, 137, 54, 0.1);
  color: var(--warning-color);
  border: 1px solid var(--warning-color);
}
.challenge-button {
  padding: var(--spacing-sm) var(--spacing-lg);
  background: var(--gradient-primary);
  color: white;
  border: none;
  border-radius: var(--radius-full);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-base);
  cursor: pointer;
  transition: all var(--transition-base);
  box-shadow: var(--shadow);
}
.challenge-button:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}
.challenge-button:active:not(:disabled) {
  transform: translateY(0);
}
.challenge-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.challenge-button--secondary {
  background: var(--card-bg);
  color: var(--text-color);
  border: 2px solid var(--border-color);
}
.challenge-button--secondary:hover:not(:disabled) {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.challenge-timer {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  color: var(--text-color);
}
.challenge-timer__icon {
  color: var(--primary-color);
}
.challenge-timer--warning {
  color: var(--warning-color);
  animation: pulse 1s infinite;
}
.challenge-timer--danger {
  color: var(--error-color);
  animation: pulse 0.5s infinite;
}
.challenge-score {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
  padding: var(--spacing-sm) var(--spacing-md);
  background: var(--gradient-primary-light);
  border-radius: var(--radius-full);
  font-weight: var(--font-weight-semibold);
}
.challenge-score__icon {
  color: var(--primary-color);
}
@media (max-width: 768px) {
  .challenge-container {
    padding: var(--spacing-md);
  }
  .challenge-container__header {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--spacing-sm);
  }
  .challenge-container__footer {
    flex-direction: column;
    gap: var(--spacing-sm);
  }
  .challenge-options {
    gap: var(--spacing-xs);
  }
  .challenge-option {
    padding: var(--spacing-sm);
    font-size: var(--font-size-sm);
  }
}
@media print {
  .challenge-container {
    box-shadow: none;
    border: 1px solid #000;
  }
  .challenge-button, .challenge-container__actions {
    display: none;
  }
}
.challenge-results {
  background: var(--card-bg);
  border-radius: var(--radius-xl);
  padding: var(--spacing-xl);
  box-shadow: var(--shadow-xl);
  max-width: 800px;
  margin: 0 auto;
  animation: fadeIn 0.6s ease-out;
}
.challenge-results__header {
  text-align: center;
  margin-bottom: var(--spacing-xl);
}
.challenge-results__icon {
  font-size: 5rem;
  margin-bottom: var(--spacing-md);
  animation: pulse 2s infinite;
}
.challenge-results__title {
  font-size: var(--font-size-4xl);
  font-weight: var(--font-weight-bold);
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: var(--spacing-sm);
}
.challenge-results__subtitle {
  font-size: var(--font-size-lg);
  color: var(--text-light);
}
.challenge-results__performance {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--spacing-xl);
  background: var(--gradient-primary-light);
  border-radius: var(--radius-lg);
  margin-bottom: var(--spacing-lg);
}
.challenge-results__performance-label {
  font-size: var(--font-size-base);
  color: var(--text-light);
  text-transform: uppercase;
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--spacing-sm);
}
.challenge-results__performance-value {
  font-size: 4rem;
  font-weight: var(--font-weight-bold);
  background: var(--gradient-primary);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}
.challenge-results__stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: var(--spacing-md);
  margin-bottom: var(--spacing-xl);
}
.challenge-results__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--spacing-lg);
  background: var(--card-bg);
  border: 2px solid var(--border-color);
  border-radius: var(--radius-lg);
  transition: all var(--transition-base);
}
.challenge-results__stat:hover {
  border-color: var(--primary-color);
  transform: translateY(-4px);
  box-shadow: var(--shadow-md);
}
.challenge-results__stat-icon {
  font-size: 2rem;
  margin-bottom: var(--spacing-sm);
}
.challenge-results__stat-value {
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  color: var(--primary-color);
  margin-bottom: var(--spacing-xs);
}
.challenge-results__stat-label {
  font-size: var(--font-size-sm);
  color: var(--text-light);
  text-align: center;
}
.challenge-results__details {
  background: var(--gradient-primary-light);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  margin-bottom: var(--spacing-lg);
}
.challenge-results__details-title {
  font-size: var(--font-size-xl);
  font-weight: var(--font-weight-semibold);
  color: var(--text-color);
  margin-bottom: var(--spacing-md);
}
.challenge-results__question-list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  list-style: none;
  padding: 0;
  margin: 0;
}
.challenge-results__question-item {
  display: flex;
  align-items: center;
  padding: var(--spacing-md);
  background: var(--card-bg);
  border-radius: var(--radius);
  border-left: 4px solid transparent;
  transition: all var(--transition-fast);
}
.challenge-results__question-item:hover {
  transform: translateX(4px);
  box-shadow: var(--shadow);
}
.challenge-results__question-item--correct {
  border-left-color: var(--success-color);
}
.challenge-results__question-item--incorrect {
  border-left-color: var(--error-color);
}
.challenge-results__question-status {
  font-size: var(--font-size-xl);
  margin-right: var(--spacing-sm);
}
.challenge-results__question-text {
  flex: 1;
  font-size: var(--font-size-base);
  color: var(--text-color);
}
.challenge-results__actions {
  display: flex;
  justify-content: center;
  gap: var(--spacing-md);
  flex-wrap: wrap;
}
.challenge-results__button {
  padding: var(--spacing-md) var(--spacing-xl);
  border-radius: var(--radius-full);
  font-weight: var(--font-weight-semibold);
  font-size: var(--font-size-lg);
  cursor: pointer;
  transition: all var(--transition-base);
  border: none;
  box-shadow: var(--shadow);
}
.challenge-results__button--primary {
  background: var(--gradient-primary);
  color: white;
}
.challenge-results__button--primary:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow-lg);
}
.challenge-results__button--secondary {
  background: var(--card-bg);
  color: var(--text-color);
  border: 2px solid var(--border-color);
}
.challenge-results__button--secondary:hover {
  border-color: var(--primary-color);
  color: var(--primary-color);
}
.challenge-results__achievements {
  display: flex;
  justify-content: center;
  gap: var(--spacing-sm);
  margin: var(--spacing-lg) 0;
  flex-wrap: wrap;
}
.challenge-results__achievement {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--spacing-md);
  background: var(--gradient-primary-light);
  border-radius: var(--radius-lg);
  min-width: 100px;
}
.challenge-results__achievement-icon {
  font-size: 2.5rem;
  margin-bottom: var(--spacing-xs);
}
.challenge-results__achievement-label {
  font-size: var(--font-size-xs);
  color: var(--text-light);
  text-align: center;
}
@media (max-width: 768px) {
  .challenge-results {
    padding: var(--spacing-lg);
  }
  .challenge-results__performance-value {
    font-size: 3rem;
  }
  .challenge-results__stats {
    grid-template-columns: 1fr;
  }
  .challenge-results__actions {
    flex-direction: column;
  }
  .challenge-results__button {
    width: 100%;
  }
}
.home {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  animation: fadeIn 0.6s ease-out;
}
.home__main {
  flex: 1;
}
@media (prefers-color-scheme: dark) {
  .topic-card:hover, .feature-item:hover {
    box-shadow: var(--shadow-lg), 0 0 20px rgba(102, 126, 234, 0.2);
  }
}
@media print {
  .header, .footer, .cta-button, .start-button {
    background: none;
    color: black;
  }
  .topic-card, .feature-item {
    break-inside: avoid;
  }
}
.challenge-page {
  min-height: 100vh;
  padding: 2rem;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
.challenge-page__header {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2rem;
}
.challenge-page__back {
  color: white;
  text-decoration: none;
  font-weight: 600;
  transition: opacity 0.3s;
}
.challenge-page__back:hover {
  opacity: 0.8;
}
.challenge-page__title {
  color: white;
  font-size: 2rem;
  margin: 0;
}
.challenge-page__content {
  background: white;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}
.challenge-page__loading, .challenge-page__error {
  text-align: center;
  padding: 3rem;
  background: white;
  border-radius: 1rem;
}
.challenge-page__results {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 60vh;
}
.results-card {
  background: white;
  border-radius: 1rem;
  padding: 3rem;
  text-align: center;
  max-width: 600px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}
.results-card__icon {
  font-size: 4rem;
  margin-bottom: 1rem;
}
.results-card__title {
  font-size: 2rem;
  margin-bottom: 2rem;
  color: #333;
}
.results-card__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-bottom: 2rem;
}
.stat {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.stat__label {
  font-size: 0.875rem;
  color: #666;
  text-transform: uppercase;
  font-weight: 600;
}
.stat__value {
  font-size: 2rem;
  font-weight: bold;
  color: #667eea;
}
.results-card__actions {
  display: flex;
  gap: 1rem;
  justify-content: center;
}
.btn {
  padding: 0.75rem 2rem;
  border: none;
  border-radius: 0.5rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
}
.btn--primary {
  background: #667eea;
  color: white;
}
.btn--primary:hover {
  background: #5568d3;
  transform: translateY(-2px);
}
.btn--secondary {
  background: #f3f4f6;
  color: #333;
}
.btn--secondary:hover {
  background: #e5e7eb;
}
.challenges-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.challenges-page__header {
  text-align: center;
  padding: var(--spacing-xl) var(--spacing-md);
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  border-radius: var(--border-radius-lg);
  margin-bottom: var(--spacing-lg);
}
.challenges-page__title {
  font-size: clamp(2rem, 5vw, 3rem);
  margin-bottom: var(--spacing-sm);
}
.challenges-page__subtitle {
  font-size: clamp(1rem, 3vw, 1.25rem);
  opacity: 0.95;
}
.challenges-page__main {
  flex: 1;
  padding: var(--spacing-md);
}
.level-card {
  background: var(--card-bg);
  border-radius: var(--border-radius-lg);
  padding: var(--spacing-lg);
  margin-bottom: var(--spacing-lg);
  box-shadow: var(--shadow);
  border: 1px solid var(--border-color);
}
.level-card__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-md);
  padding-bottom: var(--spacing-sm);
  border-bottom: 2px solid var(--border-color);
}
.level-card__title {
  font-size: 1.5rem;
  color: var(--text-color);
  margin: 0;
}
.level-card__badge {
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  padding: 8px 16px;
  border-radius: 20px;
  font-size: 0.9rem;
  font-weight: 600;
}
.level-card__challenges {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: var(--spacing-md);
}
.challenge-card {
  background: var(--card-bg);
  border: 1px solid var(--border-color);
  border-radius: var(--border-radius);
  padding: var(--spacing-md);
  transition: all var(--transition-base);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
}
.challenge-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--primary-color);
}
.challenge-card--locked {
  opacity: 0.6;
  cursor: not-allowed;
}
.challenge-card--locked:hover {
  transform: none;
  box-shadow: var(--shadow);
}
.challenge-card__icon {
  font-size: 2rem;
  text-align: center;
  margin-bottom: var(--spacing-xs);
}
.challenge-card__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-xs);
}
.challenge-card__name {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--text-color);
  margin: 0;
  flex: 1;
}
.challenge-card__tasks {
  font-size: 0.85rem;
  color: var(--text-light);
  white-space: nowrap;
}
.challenge-card__description {
  color: var(--text-light);
  font-size: 0.95rem;
  line-height: 1.5;
  margin: 0;
}
.challenge-card__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  padding-top: var(--spacing-sm);
  border-top: 1px solid var(--border-color);
}
.challenge-card__points {
  font-size: 0.9rem;
  color: var(--primary-color);
  font-weight: 600;
}
.challenge-card__button {
  background: linear-gradient( 135deg, var(--primary-color), var(--secondary-color) );
  color: white;
  border: none;
  padding: 10px 20px;
  border-radius: 20px;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition-base);
}
.challenge-card__button:hover:not(:disabled) {
  transform: translateX(4px);
  box-shadow: var(--shadow);
}
.challenge-card__button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
@media (max-width: 768px) {
  .level-card__challenges {
    grid-template-columns: 1fr;
  }
  .level-card__header {
    flex-direction: column;
    gap: var(--spacing-sm);
    text-align: center;
  }
}
@layer base {
  :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% 0.006 285.885);
    --color-primary: oklch(45% 0.24 277.023);
    --color-primary-content: oklch(93% 0.034 272.788);
    --color-secondary: oklch(65% 0.241 354.308);
    --color-secondary-content: oklch(94% 0.028 342.258);
    --color-accent: oklch(77% 0.152 181.912);
    --color-accent-content: oklch(38% 0.063 188.416);
    --color-neutral: oklch(14% 0.005 285.823);
    --color-neutral-content: oklch(92% 0.004 286.32);
    --color-info: oklch(74% 0.16 232.661);
    --color-info-content: oklch(29% 0.066 243.157);
    --color-success: oklch(76% 0.177 163.223);
    --color-success-content: oklch(37% 0.077 168.94);
    --color-warning: oklch(82% 0.189 84.429);
    --color-warning-content: oklch(41% 0.112 45.904);
    --color-error: oklch(71% 0.194 13.428);
    --color-error-content: oklch(27% 0.105 12.094);
    --radius-selector: 0.5rem;
    --radius-field: 0.25rem;
    --radius-box: 0.5rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@layer base {
  @media (prefers-color-scheme: dark) {
    :root {
      color-scheme: dark;
      --color-base-100: oklch(25.33% 0.016 252.42);
      --color-base-200: oklch(23.26% 0.014 253.1);
      --color-base-300: oklch(21.15% 0.012 254.09);
      --color-base-content: oklch(97.807% 0.029 256.847);
      --color-primary: oklch(58% 0.233 277.117);
      --color-primary-content: oklch(96% 0.018 272.314);
      --color-secondary: oklch(65% 0.241 354.308);
      --color-secondary-content: oklch(94% 0.028 342.258);
      --color-accent: oklch(77% 0.152 181.912);
      --color-accent-content: oklch(38% 0.063 188.416);
      --color-neutral: oklch(14% 0.005 285.823);
      --color-neutral-content: oklch(92% 0.004 286.32);
      --color-info: oklch(74% 0.16 232.661);
      --color-info-content: oklch(29% 0.066 243.157);
      --color-success: oklch(76% 0.177 163.223);
      --color-success-content: oklch(37% 0.077 168.94);
      --color-warning: oklch(82% 0.189 84.429);
      --color-warning-content: oklch(41% 0.112 45.904);
      --color-error: oklch(71% 0.194 13.428);
      --color-error-content: oklch(27% 0.105 12.094);
      --radius-selector: 0.5rem;
      --radius-field: 0.25rem;
      --radius-box: 0.5rem;
      --size-selector: 0.25rem;
      --size-field: 0.25rem;
      --border: 1px;
      --depth: 1;
      --noise: 0;
    }
  }
}
@layer base {
  :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% 0.006 285.885);
    --color-primary: oklch(45% 0.24 277.023);
    --color-primary-content: oklch(93% 0.034 272.788);
    --color-secondary: oklch(65% 0.241 354.308);
    --color-secondary-content: oklch(94% 0.028 342.258);
    --color-accent: oklch(77% 0.152 181.912);
    --color-accent-content: oklch(38% 0.063 188.416);
    --color-neutral: oklch(14% 0.005 285.823);
    --color-neutral-content: oklch(92% 0.004 286.32);
    --color-info: oklch(74% 0.16 232.661);
    --color-info-content: oklch(29% 0.066 243.157);
    --color-success: oklch(76% 0.177 163.223);
    --color-success-content: oklch(37% 0.077 168.94);
    --color-warning: oklch(82% 0.189 84.429);
    --color-warning-content: oklch(41% 0.112 45.904);
    --color-error: oklch(71% 0.194 13.428);
    --color-error-content: oklch(27% 0.105 12.094);
    --radius-selector: 0.5rem;
    --radius-field: 0.25rem;
    --radius-box: 0.5rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@layer base {
  :root:has(input.theme-controller[value=dark]:checked),[data-theme=dark] {
    color-scheme: dark;
    --color-base-100: oklch(25.33% 0.016 252.42);
    --color-base-200: oklch(23.26% 0.014 253.1);
    --color-base-300: oklch(21.15% 0.012 254.09);
    --color-base-content: oklch(97.807% 0.029 256.847);
    --color-primary: oklch(58% 0.233 277.117);
    --color-primary-content: oklch(96% 0.018 272.314);
    --color-secondary: oklch(65% 0.241 354.308);
    --color-secondary-content: oklch(94% 0.028 342.258);
    --color-accent: oklch(77% 0.152 181.912);
    --color-accent-content: oklch(38% 0.063 188.416);
    --color-neutral: oklch(14% 0.005 285.823);
    --color-neutral-content: oklch(92% 0.004 286.32);
    --color-info: oklch(74% 0.16 232.661);
    --color-info-content: oklch(29% 0.066 243.157);
    --color-success: oklch(76% 0.177 163.223);
    --color-success-content: oklch(37% 0.077 168.94);
    --color-warning: oklch(82% 0.189 84.429);
    --color-warning-content: oklch(41% 0.112 45.904);
    --color-error: oklch(71% 0.194 13.428);
    --color-error-content: oklch(27% 0.105 12.094);
    --radius-selector: 0.5rem;
    --radius-field: 0.25rem;
    --radius-box: 0.5rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@layer base {
  @property --radialprogress {
    syntax: "<percentage>";
    inherits: true;
    initial-value: 0%;
  }
}
@layer base {
  :root {
    scrollbar-color: currentColor #0000;
    @supports (color: color-mix(in lab, red, red)) {
      scrollbar-color: color-mix(in oklch, currentColor 35%, #0000) #0000;
    }
  }
}
@layer base {
  :root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not([class*="drawer-open"]) > .drawer-toggle:checked ) {
    overflow: hidden;
  }
}
@layer base {
  :root, [data-theme] {
    background-color: var(--root-bg, var(--color-base-100));
    color: var(--color-base-content);
  }
}
@layer base {
  :root {
    --fx-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");
  }
  .chat {
    --mask-chat: url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");
  }
}
@layer base {
  :where( :root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not(.drawer-open) > .drawer-toggle:checked ) ) {
    scrollbar-gutter: stable;
    background-image: linear-gradient(var(--color-base-100), var(--color-base-100));
    --root-bg: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%);
    @supports (color: color-mix(in lab, red, red)) {
      --root-bg: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%);
    }
  }
  :where(.modal) {
    scrollbar-gutter: stable both-edges;
  }
}
@keyframes skeleton {
  0% {
    background-position: 150%;
  }
  100% {
    background-position: -50%;
  }
}
@keyframes progress {
  50% {
    background-position-x: -115%;
  }
}
@keyframes radio {
  0% {
    padding: 5px;
  }
  50% {
    padding: 3px;
  }
}
@keyframes dropdown {
  0% {
    opacity: 0;
  }
}
@keyframes rating {
  0%, 40% {
    scale: 1.1;
    filter: brightness(1.05) contrast(1.05);
  }
}
@keyframes toast {
  0% {
    scale: 0.9;
    opacity: 0;
  }
  100% {
    scale: 1;
    opacity: 1;
  }
}
@layer base {
  @media (prefers-color-scheme: dark) {
    :root {
      color-scheme: dark;
      --color-base-100: oklch(20% 0.02 240);
      --color-base-200: oklch(25% 0.03 240);
      --color-base-300: oklch(30% 0.04 240);
      --color-base-content: oklch(92% 0.05 240);
      --color-primary: oklch(75% 0.22 60);
      --color-primary-content: oklch(98% 0.01 60);
      --color-secondary: oklch(65% 0.27 300);
      --color-secondary-content: oklch(98% 0.01 300);
      --color-accent: oklch(70% 0.27 160);
      --color-accent-content: oklch(98% 0.01 160);
      --color-neutral: oklch(70% 0.05 240);
      --color-neutral-content: oklch(20% 0.01 240);
      --color-info: oklch(75% 0.2 220);
      --color-info-content: oklch(98% 0.01 220);
      --color-success: oklch(70% 0.25 140);
      --color-success-content: oklch(98% 0.01 140);
      --color-warning: oklch(85% 0.25 80);
      --color-warning-content: oklch(20% 0.05 80);
      --color-error: oklch(70% 0.3 30);
      --color-error-content: oklch(98% 0.01 30);
      --radius-selector: 0.5rem;
      --radius-field: 0.25rem;
      --radius-box: 0.5rem;
      --size-selector: 0.25rem;
      --size-field: 0.25rem;
      --border: 1px;
      --depth: 1;
      --noise: 0;
    }
  }
}
@layer base {
  :root:has(input.theme-controller[value=dark]:checked),[data-theme="dark"] {
    color-scheme: dark;
    --color-base-100: oklch(20% 0.02 240);
    --color-base-200: oklch(25% 0.03 240);
    --color-base-300: oklch(30% 0.04 240);
    --color-base-content: oklch(92% 0.05 240);
    --color-primary: oklch(75% 0.22 60);
    --color-primary-content: oklch(98% 0.01 60);
    --color-secondary: oklch(65% 0.27 300);
    --color-secondary-content: oklch(98% 0.01 300);
    --color-accent: oklch(70% 0.27 160);
    --color-accent-content: oklch(98% 0.01 160);
    --color-neutral: oklch(70% 0.05 240);
    --color-neutral-content: oklch(20% 0.01 240);
    --color-info: oklch(75% 0.2 220);
    --color-info-content: oklch(98% 0.01 220);
    --color-success: oklch(70% 0.25 140);
    --color-success-content: oklch(98% 0.01 140);
    --color-warning: oklch(85% 0.25 80);
    --color-warning-content: oklch(20% 0.05 80);
    --color-error: oklch(70% 0.3 30);
    --color-error-content: oklch(98% 0.01 30);
    --radius-selector: 0.5rem;
    --radius-field: 0.25rem;
    --radius-box: 0.5rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@layer base {
  :where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme="light"] {
    color-scheme: light;
    --color-base-100: oklch(97% 0.01 0);
    --color-base-200: oklch(94% 0.01 0);
    --color-base-300: oklch(91% 0.01 0);
    --color-base-content: oklch(16% 0.01 0);
    --color-primary: oklch(76% 0.19 63.82);
    --color-primary-content: oklch(100% 0 0);
    --color-secondary: oklch(51% 0.274 296.82);
    --color-secondary-content: oklch(100% 0 0);
    --color-accent: oklch(54% 0.03 0);
    --color-accent-content: oklch(100% 0 0);
    --color-neutral: oklch(54% 0.03 0);
    --color-neutral-content: oklch(100% 0 0);
    --color-info: oklch(65% 0.18 206.7);
    --color-info-content: oklch(100% 0 0);
    --color-success: oklch(63% 0.21 142.5);
    --color-success-content: oklch(100% 0 0);
    --color-warning: oklch(85% 0.2 84.4);
    --color-warning-content: oklch(16% 0.01 0);
    --color-error: oklch(60% 0.28 25.76);
    --color-error-content: oklch(100% 0 0);
    --radius-selector: 0.5rem;
    --radius-field: 0.25rem;
    --radius-box: 0.5rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
  initial-value: rotateX(0);
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
  initial-value: rotateY(0);
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
  initial-value: rotateZ(0);
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
  initial-value: skewX(0);
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
  initial-value: skewY(0);
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-border-spacing-x {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-spacing-y {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-font-weight: initial;
      --tw-rotate-x: rotateX(0);
      --tw-rotate-y: rotateY(0);
      --tw-rotate-z: rotateZ(0);
      --tw-skew-x: skewX(0);
      --tw-skew-y: skewY(0);
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-tracking: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-leading: initial;
      --tw-border-spacing-x: 0;
      --tw-border-spacing-y: 0;
      --tw-content: "";
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-space-x-reverse: 0;
    }
  }
}
