/* StageLinkDecorator.css - Fully adheres to project design system */

/* ================================
   Link Badge (New Badge Style)
   Uses project CSS variables and design standards
   ================================ */

.stage-link-badge {
    /* Styles are applied inline in StageLinkDecorator.ts for better control */
    /* This class is kept for potential future customization */
}

/* ================================
   Legacy Link Indicator (🔗 Icon) - Deprecated
   Kept for backward compatibility
   Uses project CSS variables and design standards
   ================================ */

.stage-link-indicator {
    cursor: pointer;
    margin-left: 4px;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    line-height: 1;
    font-size: 0.85em;
    opacity: 0.7;
    transition: opacity 0.2s ease;
    margin-right: 8px; /* Add space for the count badge */
}

.stage-link-indicator:hover {
    opacity: 1;
}

/* Link count number - positioned at top-right like a badge */
.stage-link-count {
    position: absolute;
    top: -6px;
    right: -8px;
    font-size: 0.75em;
    font-weight: 600;
    color: currentColor;
    opacity: 1;
    line-height: 1;
}

/* Strength-based coloring - Uses project CSS variables */
.stage-link-indicator.high-strength {
    color: var(--color-green-500, #22c55e);
}

.stage-link-indicator.medium-strength {
    color: var(--color-yellow-500, #eab308);
}

.stage-link-indicator.low-strength {
    color: var(--color-red-500, #ef4444);
}

/* ================================
   Tooltip Container
   Uses project's shadow, radius, and color tokens
   ================================ */

.stage-link-tooltip {
    position: fixed;
    z-index: 1000;
    background-color: var(--color-white, #ffffff);
    border: 1px solid var(--color-gray-200, #e5e7eb);
    border-radius: var(--radius-lg, 0.5rem);
    padding: 12px;
    box-shadow: var(--shadow-md);
    max-width: 400px;
    font-size: 14px;
    font-family: var(--font-family-sans);
}

/* Dark mode support - Uses project's dark mode variables */
.dark .stage-link-tooltip {
    background-color: var(--color-gray-800, #1f2937);
    border-color: var(--color-gray-700, #374151);
    color: var(--color-gray-100, #f3f4f6);
}

/* ================================
   Tooltip Content Structure
   ================================ */

.stage-link-tooltip-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* ================================
   Tooltip Header (Scenario ID)
   ================================ */

.stage-link-tooltip-header {
    font-weight: 600;
    color: var(--color-gray-700, #374151);
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 4px;
}

.dark .stage-link-tooltip-header {
    color: var(--color-gray-200, #e5e7eb);
}

.stage-link-tooltip-icon {
    font-size: 1.2em;
}

/* ================================
   Scenario Text
   ================================ */

.stage-link-tooltip-scenario-text {
    color: var(--color-gray-600, #4b5563);
    margin-bottom: 8px;
    line-height: 1.5;
}

.dark .stage-link-tooltip-scenario-text {
    color: var(--color-gray-300, #d1d5db);
}

/* ================================
   AI Reasoning Section
   ================================ */

.stage-link-tooltip-reasoning-header {
    font-weight: 600;
    color: var(--color-gray-700, #374151);
    margin-bottom: 4px;
    font-size: 12px;
}

.dark .stage-link-tooltip-reasoning-header {
    color: var(--color-gray-200, #e5e7eb);
}

.stage-link-tooltip-reasoning-text {
    font-size: 12px;
    color: var(--color-gray-600, #4b5563);
    line-height: 1.4;
}

.dark .stage-link-tooltip-reasoning-text {
    color: var(--color-gray-400, #9ca3af);
}

/* ================================
   Footer (Strength & Type)
   ================================ */

.stage-link-tooltip-footer {
    font-size: 12px;
    color: var(--color-gray-500, #6b7280);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.dark .stage-link-tooltip-footer {
    color: var(--color-gray-400, #9ca3af);
}

/* ================================
   Divider
   ================================ */

.stage-link-tooltip-divider {
    border: none;
    border-top: 1px solid var(--color-gray-200, #e5e7eb);
    margin: 8px 0;
}

.dark .stage-link-tooltip-divider {
    border-top-color: var(--color-gray-700, #374151);
}
/* Highlight animation for linked content
   Uses the same yellow color as feedback-highlight in TipTapMarkdown.css for consistency */
.stage-link-highlight {
    background-color: rgba(254, 240, 138, 0.5) !important; /* yellow-200 with opacity - same as feedback-highlight */
    border-radius: 4px;
    transition: background-color 0.2s ease;
    /* Don't add padding - preserve original element spacing */
}

.stage-link-highlight:hover {
    background-color: rgba(253, 224, 71, 0.8) !important; /* yellow-300 with higher opacity */
}

/* Smooth scrolling for dialog content */
.flex-1.overflow-y-auto {
    scroll-behavior: smooth;
}

/* Smooth scrolling for bottom collapsible context area */
.max-h-\[40vh\].overflow-y-auto {
    scroll-behavior: smooth;
}

/* Add subtle scrollbar styling for the bottom collapsible Fragment/Reasoning section */
.max-h-\[40vh\].overflow-y-auto::-webkit-scrollbar {
    width: 6px;
}

.max-h-\[40vh\].overflow-y-auto::-webkit-scrollbar-track {
    background: rgba(243, 244, 246, 0.5);
    border-radius: 3px;
}

.max-h-\[40vh\].overflow-y-auto::-webkit-scrollbar-thumb {
    background: rgba(156, 163, 175, 0.5);
    border-radius: 3px;
}

.max-h-\[40vh\].overflow-y-auto::-webkit-scrollbar-thumb:hover {
    background: rgba(107, 114, 128, 0.7);
}
.diff-tailwindcss-wrapper .container {
  width: 100%;
}
@media (min-width: 640px) {
  .diff-tailwindcss-wrapper .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .diff-tailwindcss-wrapper .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .diff-tailwindcss-wrapper .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .diff-tailwindcss-wrapper .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .diff-tailwindcss-wrapper .container {
    max-width: 1536px;
  }
}
.diff-tailwindcss-wrapper .invisible {
  visibility: hidden;
}
.diff-tailwindcss-wrapper .absolute {
  position: absolute;
}
.diff-tailwindcss-wrapper .relative {
  position: relative;
}
.diff-tailwindcss-wrapper .sticky {
  position: sticky;
}
.diff-tailwindcss-wrapper .left-0 {
  left: 0px;
}
.diff-tailwindcss-wrapper .left-\[100\%\] {
  left: 100%;
}
.diff-tailwindcss-wrapper .right-\[100\%\] {
  right: 100%;
}
.diff-tailwindcss-wrapper .top-0 {
  top: 0px;
}
.diff-tailwindcss-wrapper .top-\[1px\] {
  top: 1px;
}
.diff-tailwindcss-wrapper .top-\[50\%\] {
  top: 50%;
}
.diff-tailwindcss-wrapper .z-\[1\] {
  z-index: 1;
}
.diff-tailwindcss-wrapper .ml-\[-1\.5em\] {
  margin-left: -1.5em;
}
.diff-tailwindcss-wrapper .block {
  display: block;
}
.diff-tailwindcss-wrapper .inline-block {
  display: inline-block;
}
.diff-tailwindcss-wrapper .flex {
  display: flex;
}
.diff-tailwindcss-wrapper .table {
  display: table;
}
.diff-tailwindcss-wrapper .hidden {
  display: none;
}
.diff-tailwindcss-wrapper .h-\[50\%\] {
  height: 50%;
}
.diff-tailwindcss-wrapper .h-full {
  height: 100%;
}
.diff-tailwindcss-wrapper .min-h-\[28px\] {
  min-height: 28px;
}
.diff-tailwindcss-wrapper .w-\[1\%\] {
  width: 1%;
}
.diff-tailwindcss-wrapper .w-\[1\.5em\] {
  width: 1.5em;
}
.diff-tailwindcss-wrapper .w-\[1\.5px\] {
  width: 1.5px;
}
.diff-tailwindcss-wrapper .w-\[10px\] {
  width: 10px;
}
.diff-tailwindcss-wrapper .w-\[1px\] {
  width: 1px;
}
.diff-tailwindcss-wrapper .w-\[50\%\] {
  width: 50%;
}
.diff-tailwindcss-wrapper .w-full {
  width: 100%;
}
.diff-tailwindcss-wrapper .w-max {
  width: -moz-max-content;
  width: max-content;
}
.diff-tailwindcss-wrapper .min-w-\[100px\] {
  min-width: 100px;
}
.diff-tailwindcss-wrapper .min-w-\[40px\] {
  min-width: 40px;
}
.diff-tailwindcss-wrapper .min-w-full {
  min-width: 100%;
}
.diff-tailwindcss-wrapper .flex-shrink-0 {
  flex-shrink: 0;
}
.diff-tailwindcss-wrapper .shrink-0 {
  flex-shrink: 0;
}
.diff-tailwindcss-wrapper .basis-\[50\%\] {
  flex-basis: 50%;
}
.diff-tailwindcss-wrapper .table-fixed {
  table-layout: fixed;
}
.diff-tailwindcss-wrapper .border-collapse {
  border-collapse: collapse;
}
.diff-tailwindcss-wrapper .border-spacing-0 {
  --tw-border-spacing-x: 0px;
  --tw-border-spacing-y: 0px;
  border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y);
}
.diff-tailwindcss-wrapper .origin-center {
  transform-origin: center;
}
.diff-tailwindcss-wrapper .translate-x-\[-50\%\] {
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.diff-tailwindcss-wrapper .translate-x-\[50\%\] {
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.diff-tailwindcss-wrapper .translate-y-\[-50\%\] {
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.diff-tailwindcss-wrapper .cursor-pointer {
  cursor: pointer;
}
.diff-tailwindcss-wrapper .select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.diff-tailwindcss-wrapper .flex-col {
  flex-direction: column;
}
.diff-tailwindcss-wrapper .items-start {
  align-items: flex-start;
}
.diff-tailwindcss-wrapper .items-center {
  align-items: center;
}
.diff-tailwindcss-wrapper .justify-center {
  justify-content: center;
}
.diff-tailwindcss-wrapper .overflow-x-auto {
  overflow-x: auto;
}
.diff-tailwindcss-wrapper .overflow-y-hidden {
  overflow-y: hidden;
}
.diff-tailwindcss-wrapper .whitespace-nowrap {
  white-space: nowrap;
}
.diff-tailwindcss-wrapper .break-all {
  word-break: break-all;
}
.diff-tailwindcss-wrapper .rounded-\[0\.2em\] {
  border-radius: 0.2em;
}
.diff-tailwindcss-wrapper .rounded-\[2px\] {
  border-radius: 2px;
}
.diff-tailwindcss-wrapper .rounded-md {
  border-radius: 0.375rem;
}
.diff-tailwindcss-wrapper .border-l-\[1px\] {
  border-left-width: 1px;
}
.diff-tailwindcss-wrapper .fill-current {
  fill: currentColor;
}
.diff-tailwindcss-wrapper .p-0 {
  padding: 0px;
}
.diff-tailwindcss-wrapper .p-\[1px\] {
  padding: 1px;
}
.diff-tailwindcss-wrapper .px-\[10px\] {
  padding-left: 10px;
  padding-right: 10px;
}
.diff-tailwindcss-wrapper .py-\[2px\] {
  padding-top: 2px;
  padding-bottom: 2px;
}
.diff-tailwindcss-wrapper .py-\[6px\] {
  padding-top: 6px;
  padding-bottom: 6px;
}
.diff-tailwindcss-wrapper .pl-\[1\.5em\] {
  padding-left: 1.5em;
}
.diff-tailwindcss-wrapper .pl-\[10px\] {
  padding-left: 10px;
}
.diff-tailwindcss-wrapper .pl-\[2\.0em\] {
  padding-left: 2.0em;
}
.diff-tailwindcss-wrapper .pr-\[10px\] {
  padding-right: 10px;
}
.diff-tailwindcss-wrapper .text-right {
  text-align: right;
}
.diff-tailwindcss-wrapper .indent-\[0\.2em\] {
  text-indent: 0.2em;
}
.diff-tailwindcss-wrapper .align-top {
  vertical-align: top;
}
.diff-tailwindcss-wrapper .align-middle {
  vertical-align: middle;
}
.diff-tailwindcss-wrapper .text-\[1\.2em\] {
  font-size: 1.2em;
}
.diff-tailwindcss-wrapper .leading-\[1\.4\] {
  line-height: 1.4;
}
.diff-tailwindcss-wrapper .leading-\[1\.6\] {
  line-height: 1.6;
}
.diff-tailwindcss-wrapper .\!text-red-500 {
  --tw-text-opacity: 1 !important;
  color: rgb(239 68 68 / var(--tw-text-opacity, 1)) !important;
}
.diff-tailwindcss-wrapper .opacity-\[0\.5\] {
  opacity: 0.5;
}
.diff-tailwindcss-wrapper .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);
}
.diff-tailwindcss-wrapper .transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.diff-tailwindcss-wrapper * {
  box-sizing: border-box;
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-style-root {
  --diff-border--: #dedede;
  --diff-add-content--: #e6ffec;
  --diff-del-content--: #ffebe9;
  --diff-add-lineNumber--: #ccffd8;
  --diff-del-lineNumber--: #ffd7d5;
  --diff-plain-content--: #ffffff;
  --diff-expand-content--: #fafafa;
  --diff-plain-lineNumber--: #fafafa;
  --diff-expand-lineNumber--: #fafafa;
  --diff-plain-lineNumber-color--: #555555;
  --diff-expand-lineNumber-color--: #555555;
  --diff-hunk-content--: #ddf4ff;
  --diff-hunk-lineNumber--: #c7ecff;
  --diff-hunk-lineNumber-hover--: #0969da;
  --diff-add-content-highlight--: #abf2bc;
  --diff-del-content-highlight--: #ffb3ad;
  --diff-add-widget--: #0969d2;
  --diff-add-widget-color--: #ffffff;
  --diff-empty-content--: #fafafa;
  --diff-hunk-content-color--: #777777;

  color: black;
}
.diff-tailwindcss-wrapper .diff-style-root .diff-line-syntax-raw *,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw * {
  color: var(--diff-view-light, inherit);
  font-weight: var(--diff-view-light-font-weight, inherit);
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-style-root {
  --diff-border--: #3d444d;
  --diff-add-content--: #14261f;
  --diff-del-content--: #311b1f;
  --diff-add-lineNumber--: #1f4429;
  --diff-del-lineNumber--: #552527;
  --diff-plain-content--: #0d1117;
  --diff-expand-content--: #161b22;
  --diff-plain-lineNumber--: #161b22;
  --diff-expand-lineNumber--: #161b22;
  --diff-plain-lineNumber-color--: #a0aaab;
  --diff-expand-lineNumber-color--: #a0aaab;
  --diff-hunk-content--: #131d2e;
  --diff-hunk-lineNumber--: #204274;
  --diff-hunk-lineNumber-hover--: #1f6feb;
  --diff-add-content-highlight--: #1f572d;
  --diff-del-content-highlight--: #80312f;
  --diff-add-widget--: #0969d2;
  --diff-add-widget-color--: #ffffff;
  --diff-empty-content--: #161b22;
  --diff-hunk-content-color--: #9298a0;

  color: white;
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw * {
  color: var(--diff-view-dark, inherit);
  font-weight: var(--diff-view-dark-font-weight, inherit);
}
.diff-tailwindcss-wrapper table,
.diff-tailwindcss-wrapper tr,
.diff-tailwindcss-wrapper td {
  border-color: transparent;
  border-width: 0px;
  text-align: left;
}
.diff-tailwindcss-wrapper .diff-line-old-num,
.diff-tailwindcss-wrapper .diff-line-new-num,
.diff-tailwindcss-wrapper .diff-line-num {
  text-align: right;
}
.diff-tailwindcss-wrapper .diff-style-root tr {
  content-visibility: auto;
}
.diff-tailwindcss-wrapper .diff-add-widget-wrapper {
  transform-origin: center;
  transform: translateX(-50%) !important;
}
.diff-tailwindcss-wrapper .diff-line-old-content .diff-add-widget-wrapper,
.diff-tailwindcss-wrapper .diff-line-new-content .diff-add-widget-wrapper {
  transform: translateX(50%) !important;
}
.diff-tailwindcss-wrapper .diff-add-widget-wrapper:hover {
  transform: translateX(-50%) scale(1.1) !important;
}
.diff-tailwindcss-wrapper .diff-line-old-content .diff-add-widget-wrapper:hover,
.diff-tailwindcss-wrapper .diff-line-new-content .diff-add-widget-wrapper:hover {
  transform: translateX(50%) scale(1.1) !important;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip {
  position: relative;
}
.diff-tailwindcss-wrapper .diff-add-widget,
.diff-tailwindcss-wrapper .diff-widget-tooltip {
  font-family: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  font-size: 100%;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
  margin: 0;
  text-transform: none;
  border-width: 0px;
  background-color: transparent;
  background-image: none;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip::after {
  display: none;
  box-sizing: border-box;
  background-color: #555555;
  position: absolute;
  content: attr(data-title);
  font-size: 11px;
  padding: 1px 2px;
  border-radius: 4px;
  overflow: hidden;
  top: 50%;
  white-space: nowrap;
  transform: translateY(-50%);
  left: calc(100% + 8px);
  color: #ffffff;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip::before {
  display: none;
  box-sizing: border-box;
  content: "";
  position: absolute;
  top: 50%;
  left: calc(100% - 2px);
  transform: translateY(-50%);
  border: 6px solid transparent;
  border-right-color: #555555;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip:hover {
  background-color: var(--diff-hunk-lineNumber-hover--);
  color: white;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip:hover::before {
  display: block;
}
.diff-tailwindcss-wrapper .diff-widget-tooltip:hover::after {
  display: block;
}
.diff-line-extend-wrapper * {
  color: initial;
}
.diff-line-widget-wrapper * {
  color: initial;
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw pre code.hljs {
  display: block;
  overflow-x: auto;
  padding: 1em
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw code.hljs {
  padding: 3px 5px
}
/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs {
  color: #24292e;
  background: #ffffff
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-doctag,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-keyword,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-meta .hljs-keyword,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-template-tag,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-template-variable,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-type,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-variable.language_ {
  /* prettylights-syntax-keyword */
  color: #d73a49
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-title,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-title.class_,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-title.class_.inherited__,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-title.function_ {
  /* prettylights-syntax-entity */
  color: #6f42c1
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-attr,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-attribute,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-literal,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-meta,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-number,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-operator,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-variable,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-selector-attr,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-selector-class,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-selector-id {
  /* prettylights-syntax-constant */
  color: #005cc5
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-regexp,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-string,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-meta .hljs-string {
  /* prettylights-syntax-string */
  color: #032f62
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-built_in,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-symbol {
  /* prettylights-syntax-variable */
  color: #e36209
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-comment,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-code,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-formula {
  /* prettylights-syntax-comment */
  color: #6a737d
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-name,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-quote,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-selector-tag,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-selector-pseudo {
  /* prettylights-syntax-entity-tag */
  color: #22863a
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-subst {
  /* prettylights-syntax-storage-modifier-import */
  color: #24292e
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-section {
  /* prettylights-syntax-markup-heading */
  color: #005cc5;
  font-weight: bold
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-bullet {
  /* prettylights-syntax-markup-list */
  color: #735c0f
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-emphasis {
  /* prettylights-syntax-markup-italic */
  color: #24292e;
  font-style: italic
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-strong {
  /* prettylights-syntax-markup-bold */
  color: #24292e;
  font-weight: bold
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-addition {
  /* prettylights-syntax-markup-inserted */
  color: #22863a;
  background-color: #f0fff4
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-deletion {
  /* prettylights-syntax-markup-deleted */
  color: #b31d28;
  background-color: #ffeef0
}
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-char.escape_,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-link,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-params,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-property,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-punctuation,
.diff-tailwindcss-wrapper[data-theme="light"] .diff-line-syntax-raw .hljs-tag {
  /* purposely ignored */
  
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw pre code.hljs {
  display: block;
  overflow-x: auto;
  padding: 1em
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw code.hljs {
  padding: 3px 5px
}
/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs {
  color: #c9d1d9;
  background: #0d1117
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-doctag,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-keyword,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-meta .hljs-keyword,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-template-tag,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-template-variable,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-type,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-variable.language_ {
  /* prettylights-syntax-keyword */
  color: #ff7b72
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-title,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-title.class_,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-title.class_.inherited__,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-title.function_ {
  /* prettylights-syntax-entity */
  color: #d2a8ff
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-attr,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-attribute,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-literal,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-meta,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-number,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-operator,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-variable,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-selector-attr,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-selector-class,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-selector-id {
  /* prettylights-syntax-constant */
  color: #79c0ff
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-regexp,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-string,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-meta .hljs-string {
  /* prettylights-syntax-string */
  color: #a5d6ff
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-built_in,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-symbol {
  /* prettylights-syntax-variable */
  color: #ffa657
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-comment,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-code,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-formula {
  /* prettylights-syntax-comment */
  color: #8b949e
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-name,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-quote,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-selector-tag,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-selector-pseudo {
  /* prettylights-syntax-entity-tag */
  color: #7ee787
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-subst {
  /* prettylights-syntax-storage-modifier-import */
  color: #c9d1d9
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-section {
  /* prettylights-syntax-markup-heading */
  color: #1f6feb;
  font-weight: bold
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-bullet {
  /* prettylights-syntax-markup-list */
  color: #f2cc60
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-emphasis {
  /* prettylights-syntax-markup-italic */
  color: #c9d1d9;
  font-style: italic
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-strong {
  /* prettylights-syntax-markup-bold */
  color: #c9d1d9;
  font-weight: bold
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-addition {
  /* prettylights-syntax-markup-inserted */
  color: #aff5b4;
  background-color: #033a16
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-deletion {
  /* prettylights-syntax-markup-deleted */
  color: #ffdcd7;
  background-color: #67060c
}
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-char.escape_,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-link,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-params,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-property,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-punctuation,
.diff-tailwindcss-wrapper[data-theme="dark"] .diff-line-syntax-raw .hljs-tag {
  /* purposely ignored */
  
}
.diff-tailwindcss-wrapper .hover\:scale-110:hover {
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.diff-tailwindcss-wrapper .group:hover .group-hover\:visible {
  visibility: visible;
}
/* TipTap Markdown Renderer Styles */

/* Base editor styles */
.tiptap-markdown-renderer {
    outline: none;
    border: none;
}

/* Streaming logs animations */
@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Gradient fade-in animation for streaming logs (top to bottom) */
@keyframes fadeInGradient {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Streaming logs scrollbar styling */
.streaming-logs-scrollbar::-webkit-scrollbar {
    width: 4px;
}

.streaming-logs-scrollbar::-webkit-scrollbar-track {
    background: transparent;
}

.streaming-logs-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

.streaming-logs-scrollbar::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

.dark .streaming-logs-scrollbar::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.2);
}

.dark .streaming-logs-scrollbar::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.3);
}

.tiptap-markdown-container {
    width: 100%;
}

/* Comment markdown styles - smaller font sizes for comment context */
.prose-xs {
    font-size: 0.75rem;
    line-height: 1.25rem;
}

.prose-xs p {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
}

.prose-xs h1,
.prose-xs h2,
.prose-xs h3,
.prose-xs h4,
.prose-xs h5,
.prose-xs h6 {
    margin-top: 0.75em;
    margin-bottom: 0.5em;
    font-weight: 600;
}

.prose-xs h1 {
    font-size: 1em;
}

.prose-xs h2 {
    font-size: 0.9em;
}

.prose-xs h3 {
    font-size: 0.85em;
}

.prose-xs ul,
.prose-xs ol {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    padding-left: 1.25em;
}

.prose-xs li {
    margin-top: 0.25em;
    margin-bottom: 0.25em;
}

.prose-xs code {
    font-size: 0.7rem;
    padding: 0.125rem 0.25rem;
    background-color: rgba(0, 0, 0, 0.05);
    border-radius: 0.25rem;
}

.prose-xs pre {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    padding: 0.5em;
    font-size: 0.7rem;
    border-radius: 0.375rem;
    background-color: rgba(0, 0, 0, 0.05);
}

.prose-xs pre code {
    background-color: transparent;
    padding: 0;
}

.prose-xs blockquote {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    padding-left: 0.75em;
    border-left: 2px solid rgba(0, 0, 0, 0.2);
    font-style: italic;
}

.prose-xs strong {
    font-weight: 600;
}

.prose-xs em {
    font-style: italic;
}

.prose-xs a {
    color: #3b82f6;
    text-decoration: underline;
}

.prose-xs a:hover {
    color: #2563eb;
}

/* Feedback highlight styles - simplified to only change background color */
/* Deleted feedback - completely hidden */
.feedback-deleted {
    background: none !important;
    background-color: transparent !important;
    color: inherit !important;
    cursor: default !important;
    pointer-events: none !important;
}

.feedback-highlight {
    background-color: rgba(254, 240, 138, 0.5) !important; /* yellow-200 with opacity */
    cursor: pointer;
    transition: background-color 0.2s ease;
}

/* CRITICAL: Deleted feedbacks should NEVER be highlighted */
.feedback-highlight.feedback-deleted {
    background: none !important;
    background-color: transparent !important;
    cursor: default !important;
    pointer-events: none !important;
}

.feedback-highlight.active {
    background-color: rgba(253, 224, 71, 0.8) !important; /* yellow-300 with higher opacity */
}

/* Force highlight with maximum specificity */
.feedback-highlight.force-highlight-active {
    background-color: rgba(253, 224, 71, 0.9) !important; /* bright yellow */
}

/* AI feedback text highlighting */
.feedback-highlight[data-is-ai='true'] {
    background-color: rgba(89, 104, 223, 0.3) !important; /* blue with 0.3 opacity */
}

.feedback-highlight[data-is-ai='true'].active {
    background-color: rgba(89, 104, 223, 0.5) !important; /* blue with 0.5 opacity */
}

.feedback-highlight[data-is-ai='true'].force-highlight-active {
    background-color: rgba(89, 104, 223, 0.6) !important; /* blue with 0.6 opacity */
}

/* AI modification reference text highlighting (emerald/green) */
/* Use higher specificity to ensure it overrides default yellow and AI blue styles */
mark.feedback-highlight[data-is-ref='true'],
.feedback-highlight[data-is-ref='true'] {
    background-color: rgba(16, 185, 129, 0.3) !important; /* emerald-500 with 0.3 opacity */
    /* Smooth transition for fade-out effect */
    transition:
        background-color 0.3s ease-out,
        opacity 0.3s ease-out !important;
}

mark.feedback-highlight[data-is-ref='true'].active,
.feedback-highlight[data-is-ref='true'].active {
    background-color: rgba(16, 185, 129, 0.5) !important; /* emerald-500 with 0.5 opacity */
}

mark.feedback-highlight[data-is-ref='true'].force-highlight-active,
.feedback-highlight[data-is-ref='true'].force-highlight-active {
    background-color: rgba(16, 185, 129, 0.6) !important; /* emerald-500 with 0.6 opacity */
}

/* Fading out reference highlight - make it transparent without affecting layout */
/* Use high specificity to override all other highlight styles */
mark.feedback-highlight[data-is-ref='true'].ref-fading-out,
.feedback-highlight[data-is-ref='true'].ref-fading-out,
mark.ref-fading-out,
.ref-fading-out {
    background-color: transparent !important;
    background: none !important;
    /* Don't use opacity: 0 as it can cause layout issues */
    /* Just make the background transparent to hide the highlight effect */
}

/* Container-level hiding for reference highlights
   This approach uses a data attribute on the container to hide all ref highlights
   without directly modifying TipTap-managed DOM elements (which would trigger re-renders)

   How it works:
   1. JavaScript adds data-hide-ref-highlights="true" to the scroll container
   2. This CSS rule makes all ref highlights transparent
   3. When user clicks a new ref, JavaScript removes the attribute and highlights show again
*/
[data-hide-ref-highlights='true'] mark.feedback-highlight[data-is-ref='true'],
[data-hide-ref-highlights='true'] .feedback-highlight[data-is-ref='true'],
[data-hide-ref-highlights='true'] [data-feedback-id^='ref-'] {
    background-color: transparent !important;
    background: none !important;
}

/* Mermaid diagram reference highlight (when content reference is inside mermaid code block) */
.mermaid-ref-highlight {
    border: 1px solid rgba(16, 185, 129, 0.8) !important; /* emerald-500 */
    border-radius: 8px !important;
    transition: border-color 0.3s ease-out !important;
}

/* Hide Mermaid ref highlight when container has hide attribute */
[data-hide-ref-highlights='true'] .mermaid-ref-highlight {
    border-color: transparent !important;
}

/* Tooltip styles for feedback highlights */
.feedback-tooltip {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.9);
    color: white;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;
    max-width: 300px;
    z-index: 1000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    margin-bottom: 5px;
}

.feedback-tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 5px solid transparent;
    border-top-color: rgba(0, 0, 0, 0.9);
}

.feedback-highlight:hover .feedback-tooltip {
    opacity: 1;
}

/* Table styles */
.tiptap-markdown-renderer table {
    border-collapse: collapse;
    margin: 1em 0;
    width: 100%;
    /* CRITICAL: Prevent layout shift and flickering */
    will-change: auto;
    backface-visibility: hidden;
    transform: translateZ(0);
}

.tiptap-markdown-renderer table td,
.tiptap-markdown-renderer table th {
    border: 1px solid #e5e7eb;
    padding: 0.5em;
    vertical-align: top;
}

.tiptap-markdown-renderer table th {
    background-color: #f9fafb;
    font-weight: 600;
}

/* Code block styles (shared for renderer and editor) */
.tiptap-markdown-renderer pre,
.tiptap pre {
    background: #f6f8fa;
    border-radius: 0.5rem;
    padding: 1rem;
    overflow-x: auto;
}

.tiptap-markdown-renderer code,
.tiptap code {
    background: #f6f8fa;
    border-radius: 0.25rem;
    padding: 0.125rem 0.25rem;
    font-size: 0.875em;
    color: var(--color-gray-700);
}

.tiptap-markdown-renderer pre code,
.tiptap pre code {
    background: none;
    padding: 0;
    font-size: inherit;
}

/* Blockquote styles */
.tiptap-markdown-renderer blockquote,
.tiptap blockquote {
    border-left: 4px solid #e5e7eb;
    padding-left: 1rem;
    margin: 1rem 0;
    font-style: italic;
    color: #6b7280;
}

/* List styles - Enhanced with higher specificity to override Tailwind prose */
.tiptap-markdown-renderer ul,
.tiptap-markdown-renderer ol,
.tiptap ul,
.tiptap ol {
    margin: 1em 0 !important;
    padding-left: 1.5em !important;
    /* Don't reset list-style here, let individual rules handle it */
}

.tiptap-markdown-renderer ul,
.tiptap ul {
    list-style-type: disc !important;
    list-style-position: outside !important;
}

.tiptap-markdown-renderer ol,
.tiptap ol {
    list-style-type: decimal !important;
    list-style-position: outside !important;
}

.tiptap-markdown-renderer li,
.tiptap li {
    margin: 0.25em 0 !important;
    display: list-item !important;
    list-style-position: outside !important;
    list-style-type: inherit !important;
}

/* Nested lists */
.tiptap-markdown-renderer ul ul,
.tiptap ul ul {
    list-style-type: circle !important;
    margin: 0.5em 0 !important;
}

.tiptap-markdown-renderer ul ul ul,
.tiptap ul ul ul {
    list-style-type: square !important;
    margin: 0.5em 0 !important;
}

.tiptap-markdown-renderer ol ol,
.tiptap ol ol {
    list-style-type: lower-alpha !important;
    margin: 0.5em 0 !important;
}

.tiptap-markdown-renderer ol ol ol,
.tiptap ol ol ol {
    list-style-type: lower-roman !important;
    margin: 0.5em 0 !important;
}

/* High specificity overrides for Tailwind prose class */
.prose .tiptap-markdown-renderer ul,
.prose .tiptap-markdown-renderer ol,
.prose-sm .tiptap-markdown-renderer ul,
.prose-sm .tiptap-markdown-renderer ol {
    margin: 1em 0 !important;
    padding-left: 1.5em !important;
    /* Don't reset list-style here to avoid conflicts */
}

.prose .tiptap-markdown-renderer ul,
.prose-sm .tiptap-markdown-renderer ul {
    list-style-type: disc !important;
    list-style-position: outside !important;
}

.prose .tiptap-markdown-renderer ol,
.prose-sm .tiptap-markdown-renderer ol {
    list-style-type: decimal !important;
    list-style-position: outside !important;
}

.prose .tiptap-markdown-renderer li,
.prose-sm .tiptap-markdown-renderer li {
    margin: 0.25em 0 !important;
    display: list-item !important;
    list-style-position: outside !important;
    list-style-type: inherit !important;
    padding-left: 0 !important;
}

/* Ultra-high specificity for stubborn cases */
.prose.prose-sm .tiptap-markdown-renderer ul li,
.prose.prose-sm .tiptap-markdown-renderer ol li {
    display: list-item !important;
    list-style-position: outside !important;
    list-style-type: inherit !important;
    margin: 0.25em 0 !important;
    padding-left: 0 !important;
}

.prose.prose-sm .tiptap-markdown-renderer ul {
    list-style-type: disc !important;
    list-style-position: outside !important;
    margin: 1em 0 !important;
    padding-left: 1.5em !important;
}

.prose.prose-sm .tiptap-markdown-renderer ol {
    list-style-type: decimal !important;
    list-style-position: outside !important;
    margin: 1em 0 !important;
    padding-left: 1.5em !important;
}

/* Link styles */
.tiptap-markdown-renderer a {
    color: #2563eb;
    text-decoration: underline;
}

.tiptap-markdown-renderer a:hover {
    color: #1d4ed8;
}

/* Heading styles */
.tiptap-markdown-renderer h1,
.tiptap-markdown-renderer h2,
.tiptap-markdown-renderer h3,
.tiptap-markdown-renderer h4,
.tiptap-markdown-renderer h5,
.tiptap-markdown-renderer h6,
.tiptap h1,
.tiptap h2,
.tiptap h3,
.tiptap h4,
.tiptap h5,
.tiptap h6 {
    margin: 1.5em 0 0.5em 0;
    font-weight: 600;
    line-height: 1.25;
}

.tiptap-markdown-renderer h1,
.tiptap h1 {
    font-size: 1.8em;
}

.tiptap-markdown-renderer h2,
.tiptap h2 {
    font-size: 1.5em;
}

.tiptap-markdown-renderer h3,
.tiptap h3 {
    font-size: 1.25em;
}

.tiptap-markdown-renderer h4,
.tiptap h4 {
    font-size: 1.125em;
}

.tiptap-markdown-renderer h5,
.tiptap h5 {
    font-size: 1em;
}

.tiptap-markdown-renderer h6,
.tiptap h6 {
    font-size: 0.875em;
}

/* Horizontal rule */
.tiptap-markdown-renderer hr,
.tiptap hr {
    border: none;
    border-top: 1px solid #e5e7eb;
    margin: 2em 0;
}

/* Paragraph spacing */
.tiptap-markdown-renderer p,
.tiptap p {
    margin: 1em 0;
}

.tiptap-markdown-renderer p:first-child,
.tiptap p:first-child {
    margin-top: 0;
}

.tiptap-markdown-renderer p:last-child,
.tiptap p:last-child {
    margin-bottom: 0;
}

/* Editor specific small tweaks */
.tiptap :first-child {
    margin-top: 0;
}
.ProseMirror-focused {
    outline: none;
}

/* Placeholder styles for TipTap editor */
.tiptap p.is-editor-empty:first-child::before {
    color: #adb5bd;
    content: attr(data-placeholder);
    float: left;
    height: 0;
    pointer-events: none;
}

/* Additional selector for when the editor is completely empty */
.tiptap.is-editor-empty::before {
    color: #adb5bd;
    content: attr(data-placeholder);
    float: left;
    height: 0;
    pointer-events: none;
}

/* Block-level highlighting styles for tables, code blocks, and Mermaid diagrams */

/* CSS Custom properties for consistent theming */
:root {
    /* User feedback highlights (yellow) */
    --highlight-border-color: rgba(254, 240, 138, 1); /* yellow-200 border */
    --highlight-active-color: rgba(253, 224, 71, 1); /* yellow-300 border for selected */
    --highlight-fade-color: rgba(254, 240, 138, 0.5); /* yellow-200 with 0.5 opacity */
    --highlight-fade-active: rgba(253, 224, 71, 0.8); /* yellow-300 with 0.8 opacity */

    /* AI feedback highlights (blue #5968DF) */
    --highlight-ai-border-color: rgba(89, 104, 223, 1); /* #5968DF border */
    --highlight-ai-active-color: rgba(70, 82, 200, 1); /* darker blue for selected */
    --highlight-ai-fade-color: rgba(89, 104, 223, 0.3); /* #5968DF with 0.3 opacity */
    --highlight-ai-fade-active: rgba(89, 104, 223, 0.5); /* #5968DF with 0.5 opacity for selected */

    /* AI modification reference highlights (emerald/green) */
    --highlight-ref-border-color: rgba(16, 185, 129, 1); /* emerald-500 border */
    --highlight-ref-active-color: rgba(5, 150, 105, 1); /* emerald-600 for selected */
    --highlight-ref-fade-color: rgba(16, 185, 129, 0.3); /* emerald-500 with 0.3 opacity */
    --highlight-ref-fade-active: rgba(16, 185, 129, 0.5); /* emerald-500 with 0.5 opacity for selected */
}

/* Table block highlighting */
.highlighted-table {
    background-color: var(--highlight-fade-color) !important;
    border-radius: 8px !important;
    /* CRITICAL: Only animate specific properties to prevent layout shift */
    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease !important;
    cursor: pointer !important;
    position: relative !important;
    /* Prevent flickering during scroll */
    will-change: background-color, box-shadow;
    backface-visibility: hidden;
    transform: translateZ(0);
}

/* CRITICAL: Use container data attribute to style selected elements
   This avoids directly manipulating CSS classes on TipTap-managed elements,
   which would trigger TipTap's MutationObserver and cause NodeView recreation.

   How it works:
   1. Container has [data-selected-feedback="<feedbackId>"]
   2. Elements have [data-feedback-id="<feedbackId>"]
   3. When they match, the element gets selected styling

   This approach uses pure CSS without DOM manipulation, preventing TipTap from
   detecting changes and recreating NodeViews (which causes flickering).
*/

/* Unfortunately CSS doesn't support matching attribute values between ancestor and descendant,
   so we need to use JavaScript to add a class. But we'll add it to the CONTAINER, not the element itself! */
.highlighted-table.highlighted-selected {
    background-color: var(--highlight-fade-active) !important;
}

.highlighted-table.highlighted-selected th {
    background-color: var(--highlight-fade-active) !important;
}

.highlighted-table.highlighted-temporary {
    background-color: rgba(16, 185, 129, 0.05) !important;
    outline: 3px solid rgba(16, 185, 129, 0.3) !important;
    outline-offset: 0px !important;
}

/* Override table header background when table is highlighted */
.highlighted-table th {
    background-color: var(--highlight-fade-color) !important;
}

.highlighted-table.highlighted-temporary th {
    background-color: rgba(16, 185, 129, 0.05) !important;
}

/* AI feedback table highlighting */
.highlighted-table[data-is-ai='true'] {
    background-color: var(--highlight-ai-fade-color) !important;
}

.highlighted-table[data-is-ai='true'].highlighted-selected {
    background-color: var(--highlight-ai-fade-active) !important;
}

.highlighted-table[data-is-ai='true'] th {
    background-color: var(--highlight-ai-fade-color) !important;
}

.highlighted-table[data-is-ai='true'].highlighted-selected th {
    background-color: var(--highlight-ai-fade-active) !important;
}

/* Code block highlighting */
.highlighted-codeblock {
    background-color: var(--highlight-fade-color) !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    position: relative !important;
}

.highlighted-codeblock.highlighted-selected {
    background-color: var(--highlight-fade-active) !important;
}

.highlighted-codeblock.highlighted-temporary {
    background-color: rgba(16, 185, 129, 0.05) !important;
    outline: 2px solid rgba(16, 185, 129, 0.3) !important;
    outline-offset: 0px !important;
}

/* AI feedback code block highlighting */
.highlighted-codeblock[data-is-ai='true'] {
    background-color: var(--highlight-ai-fade-color) !important;
}

.highlighted-codeblock[data-is-ai='true'].highlighted-selected {
    background-color: var(--highlight-ai-fade-active) !important;
}

/* Mermaid diagram base styles - always show clickable cursor */
.mermaid-diagram,
.mermaid-error {
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}

/* Mermaid diagram hover effect - subtle feedback for clickability */
.mermaid-diagram:hover,
.mermaid-error:hover {
    box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}

/* Mermaid diagram highlighting */
.highlighted-mermaid {
    background-color: var(--highlight-fade-color) !important;
    border-radius: 12px !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    position: relative !important;
}

.highlighted-mermaid.highlighted-selected {
    background-color: var(--highlight-fade-active) !important;
}

.highlighted-mermaid.highlighted-temporary {
    background-color: rgba(16, 185, 129, 0.05) !important;
    outline: 2px solid rgba(16, 185, 129, 0.3) !important;
    outline-offset: 0px !important;
}

/* AI feedback mermaid highlighting */
.highlighted-mermaid[data-is-ai='true'] {
    background-color: var(--highlight-ai-fade-color) !important;
}

.highlighted-mermaid[data-is-ai='true'].highlighted-selected {
    background-color: var(--highlight-ai-fade-active) !important;
}

/* Common styles for all highlighted blocks */
[data-feedback-id] {
    position: relative;
    /* Optimize for smooth animations and prevent layout shifts */
    will-change: outline, background-color;
    contain: layout;
}

/* Visual feedback for clickable blocks - removed transform to eliminate hover effects */

/* Block highlight indicators - removed as per user request */

/* Pulse animation for temporary highlights */
@keyframes highlight-pulse {
    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.3);
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    :root {
        --highlight-border-color: rgba(254, 240, 138, 1); /* yellow-200 border */
        --highlight-active-color: rgba(253, 224, 71, 1); /* yellow-300 border for selected */
        --highlight-fade-color: rgba(254, 240, 138, 0.3); /* yellow-200 with reduced opacity for dark mode */
        --highlight-fade-active: rgba(253, 224, 71, 0.5); /* yellow-300 with reduced opacity for dark mode */
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .highlighted-table.highlighted-selected,
    .highlighted-codeblock.highlighted-selected,
    .highlighted-mermaid.highlighted-selected {
        outline: 2px solid var(--highlight-active-color) !important;
        outline-offset: 2px !important;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .highlighted-table,
    .highlighted-codeblock,
    .highlighted-mermaid,
    table,
    pre,
    .mermaid-diagram,
    .mermaid-error {
        transition: none !important;
    }

    .highlighted-table.highlighted-temporary::before,
    .highlighted-codeblock.highlighted-temporary::before,
    .highlighted-mermaid.highlighted-temporary::before {
        animation: none !important;
    }
}

/* Responsive design */
@media (max-width: 768px) {
    .tiptap-markdown-renderer {
        font-size: 0.875rem;
    }

    .tiptap-markdown-renderer h1 {
        font-size: 1.75em;
    }

    .tiptap-markdown-renderer h2 {
        font-size: 1.375em;
    }

    .tiptap-markdown-renderer table {
        font-size: 0.875rem;
    }

    .tiptap-markdown-renderer pre {
        padding: 0.75rem;
    }

    /* Mobile styles for highlights - no additional changes needed since we removed borders */
}

/* Editor scroll container isolation
   Prevent page-level scrolling when editor content is being scrolled */
[data-editor-scroll-container] {
    /* Establish an independent scroll context */
    isolation: isolate;
    /* Prevent scroll chaining to parent containers */
    overscroll-behavior: contain;
    /* Ensure this container handles all its scroll needs */
    scroll-behavior: smooth;
    /* Improve momentum scrolling on iOS Safari */
    -webkit-overflow-scrolling: touch;
}

/* Hide temporary Mermaid containers created in body during rendering
   Mermaid.js creates temporary DOM elements in body which can cause visual glitches */
body > div[id^='d'][id*='mermaid'],
body > div[id^='mermaid-nodeview'] {
    position: fixed !important;
    top: -9999px !important;
    left: -9999px !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* Comment sidebar scroll container isolation
   Prevent scroll chaining when scrolling comments */
[data-comment-sidebar-scroll] {
    /* Establish an independent scroll context */
    isolation: isolate;
    /* Prevent scroll chaining to parent containers */
    overscroll-behavior: contain;
    /* Ensure this container handles all its scroll needs */
    scroll-behavior: smooth;
}
/**
 * Highlight Animation Styles
 *
 * CSS animations for progressive text highlighting effect
 */

/* Animation for text highlights - gradual reveal from left to right */
/* Using CSS variables --animation-state-num instead of classList/attributes to avoid triggering TipTap updates
   0 = pending, 1 = animating, 2 = complete */

/* Animating state (--animation-state-num: 1) */
mark.feedback-highlight[style*='--animation-state-num: 1'] {
    position: relative;
    background: linear-gradient(to right, rgba(255, 235, 59, 0.4) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%)) !important;
    transition: none;
    animation: none;
}

/* AI feedback animation */
mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 1'] {
    background: linear-gradient(to right, rgba(89, 104, 223, 0.3) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%)) !important;
}

/* Animated cursor element styles */
.animated-cursor {
    position: fixed;
    pointer-events: none;
    z-index: 10000;
    animation: cursor-pulse 0.8s ease-in-out infinite;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
    /* Use GPU acceleration - position updated via RAF */
    will-change: transform, opacity;
    transform: translate(-50%, -50%);
    /* No transition - instant show/hide to prevent visibility during scroll */
}

/* Subtle pulse animation for the cursor to make it more lifelike */
@keyframes cursor-pulse {
    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.85;
        transform: scale(0.98);
    }
}

mark.feedback-highlight[style*='--animation-state-num: 1'].active,
mark.feedback-highlight[style*='--animation-state-num: 1'].force-highlight-active {
    background: linear-gradient(to right, rgba(255, 193, 7, 0.5) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%)) !important;
    transition: none;
}

/* AI feedback animation - active state */
mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 1'].active,
mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 1'].force-highlight-active {
    background: linear-gradient(to right, rgba(89, 104, 223, 0.5) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%)) !important;
}

/* Completed state (--animation-state-num: 2) */
mark.feedback-highlight[style*='--animation-state-num: 2'] {
    background-color: rgba(255, 235, 59, 0.4);
    transition: background-color 0.2s ease-out;
}

mark.feedback-highlight[style*='--animation-state-num: 2'].active,
mark.feedback-highlight[style*='--animation-state-num: 2'].force-highlight-active {
    background-color: rgba(255, 193, 7, 0.5);
}

/* AI feedback completed state */
mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 2'] {
    background-color: rgba(89, 104, 223, 0.3);
}

mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 2'].active,
mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 2'].force-highlight-active {
    background-color: rgba(89, 104, 223, 0.5);
}

/* Pending state (--animation-state-num: 0) - hide highlights ONLY during animation */
/* If animation is disabled, highlights should still show with default background */
mark.feedback-highlight[style*='--animation-state-num: 0'] {
    /* Only hide if we're in an active animation context */
    /* Otherwise, show default highlight background */
    background: transparent !important;
}

/* When animation is disabled globally, show all highlights regardless of state */
/* This handles the case where completedAnimationFeedbackIds is undefined */
body:not(.animation-active) mark.feedback-highlight[style*='--animation-state-num: 0'] {
    background-color: rgba(255, 235, 59, 0.4) !important;
}

body:not(.animation-active) mark.feedback-highlight[data-is-ai='true'][style*='--animation-state-num: 0'] {
    background-color: rgba(89, 104, 223, 0.3) !important;
}

/* Block highlight animations (code blocks, tables, mermaid) */
/* Using CSS variables --animation-state-num instead of classList/attributes */

/* Animating state for block elements */
[style*='--animation-state-num: 1']:is(.highlighted-codeblock, .highlighted-table, .highlighted-mermaid) {
    position: relative;
    overflow: hidden;
}

[style*='--animation-state-num: 1']:is(.highlighted-codeblock, .highlighted-table, .highlighted-mermaid)::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(255, 235, 59, 0.15) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
    pointer-events: none;
    transition: background 0.05s linear;
}

/* Code block animation styles */
[style*='--animation-state-num: 1'].highlighted-codeblock {
    border-left: 3px solid transparent;
    transition: border-color 0.2s ease-out;
}

[style*='--animation-state-num: 1'].highlighted-codeblock::after {
    background: linear-gradient(to bottom, rgba(59, 130, 246, 0.1) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

/* Table animation styles */
[style*='--animation-state-num: 1'].highlighted-table::after {
    background: linear-gradient(to bottom, rgba(34, 197, 94, 0.1) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

/* Mermaid animation styles */
[style*='--animation-state-num: 1'].highlighted-mermaid::after {
    background: linear-gradient(to bottom, rgba(168, 85, 247, 0.1) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

/* Selected state during animation */
[style*='--animation-state-num: 1'].highlighted-selected::after {
    background: linear-gradient(to bottom, rgba(255, 193, 7, 0.2) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

/* AI feedback block animations */
[style*='--animation-state-num: 1'][data-is-ai='true']:is(.highlighted-codeblock, .highlighted-table, .highlighted-mermaid)::after {
    background: linear-gradient(to bottom, rgba(89, 104, 223, 0.2) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

[style*='--animation-state-num: 1'][data-is-ai='true'].highlighted-selected::after {
    background: linear-gradient(to bottom, rgba(89, 104, 223, 0.3) var(--highlight-progress, 0%), transparent var(--highlight-progress, 0%));
}

/* Pulse effect when animation starts for a feedback */
@keyframes highlight-pulse {
    0%,
    100% {
        opacity: 1;
    }
    50% {
        opacity: 0.7;
    }
}

/* Note: We no longer use highlight-starting class to avoid DOM manipulation
   that triggers TipTap updates. Animation start is handled by the controller. */

/* Fade in effect for comments appearing */
@keyframes comment-fade-in {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.comment-appearing {
    animation: comment-fade-in 0.3s ease-out forwards;
}

/* Disable pointer events during animation to prevent editing */
.animation-in-progress .tiptap-markdown-renderer {
    pointer-events: none;
    user-select: none;
}

/* Custom cursor during animation to simulate text selection */
.animation-in-progress mark.feedback-highlight[style*='--animation-state-num: 1'] {
    cursor: text;
}

/* Allow scrolling during animation */
.animation-in-progress {
    overflow-y: auto !important;
}
/*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */
@layer properties {
  @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
    *, :before, :after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}

@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-red-50: #fef2f2;
    --color-red-100: #fee2e2;
    --color-red-200: #fecaca;
    --color-red-300: #fca5a5;
    --color-red-400: #f87171;
    --color-red-500: #ef4444;
    --color-red-600: #dc2626;
    --color-red-700: #b91c1c;
    --color-red-800: #991b1b;
    --color-red-900: #7f1d1d;
    --color-red-950: #450a0a;
    --color-orange-50: #fff7ed;
    --color-orange-100: #ffedd5;
    --color-orange-200: #fed7aa;
    --color-orange-500: #f97316;
    --color-orange-600: #ea580c;
    --color-orange-700: #c2410c;
    --color-orange-800: #9a3412;
    --color-orange-900: #7c2d12;
    --color-amber-50: oklch(98.7% .022 95.277);
    --color-amber-100: oklch(96.2% .059 95.617);
    --color-amber-200: oklch(92.4% .12 95.746);
    --color-amber-300: oklch(87.9% .169 91.605);
    --color-amber-400: oklch(82.8% .189 84.429);
    --color-amber-500: oklch(76.9% .188 70.08);
    --color-amber-600: oklch(66.6% .179 58.318);
    --color-amber-700: oklch(55.5% .163 48.998);
    --color-amber-800: oklch(47.3% .137 46.201);
    --color-amber-900: oklch(41.4% .112 45.904);
    --color-amber-950: oklch(27.9% .077 45.635);
    --color-yellow-50: #fefce8;
    --color-yellow-100: #fef9c3;
    --color-yellow-200: #fef08a;
    --color-yellow-300: #fde047;
    --color-yellow-400: #facc15;
    --color-yellow-500: #eab308;
    --color-yellow-600: #ca8a04;
    --color-yellow-700: #a16207;
    --color-yellow-800: #854d0e;
    --color-green-50: #f0fdf4;
    --color-green-100: #dcfce7;
    --color-green-200: #bbf7d0;
    --color-green-300: #86efac;
    --color-green-400: #4ade80;
    --color-green-500: #22c55e;
    --color-green-600: #16a34a;
    --color-green-700: #15803d;
    --color-green-800: #166534;
    --color-green-900: #14532d;
    --color-emerald-100: oklch(95% .052 163.051);
    --color-emerald-200: oklch(90.5% .093 164.15);
    --color-emerald-500: oklch(69.6% .17 162.48);
    --color-emerald-600: oklch(59.6% .145 163.225);
    --color-emerald-700: oklch(50.8% .118 165.612);
    --color-teal-500: oklch(70.4% .14 182.503);
    --color-cyan-50: oklch(98.4% .019 200.873);
    --color-cyan-200: oklch(91.7% .08 205.041);
    --color-cyan-700: oklch(52% .105 223.128);
    --color-sky-400: oklch(74.6% .16 232.661);
    --color-blue-50: #eff6ff;
    --color-blue-100: #dbeafe;
    --color-blue-200: #bfdbfe;
    --color-blue-300: #93c5fd;
    --color-blue-400: #60a5fa;
    --color-blue-500: #3b82f6;
    --color-blue-600: #2563eb;
    --color-blue-700: #1d4ed8;
    --color-blue-800: #1e40af;
    --color-blue-900: #1e3a8a;
    --color-indigo-50: oklch(96.2% .018 272.314);
    --color-indigo-100: oklch(93% .034 272.788);
    --color-indigo-200: oklch(87% .065 274.039);
    --color-indigo-400: oklch(67.3% .182 276.935);
    --color-indigo-500: oklch(58.5% .233 277.117);
    --color-indigo-600: oklch(51.1% .262 276.966);
    --color-indigo-700: oklch(45.7% .24 277.023);
    --color-purple-50: #faf5ff;
    --color-purple-100: #f3e8ff;
    --color-purple-200: #e9d5ff;
    --color-purple-400: #c084fc;
    --color-purple-500: #a855f7;
    --color-purple-600: #9333ea;
    --color-purple-700: #7e22ce;
    --color-purple-800: #6b21a8;
    --color-rose-50: oklch(96.9% .015 12.422);
    --color-rose-100: oklch(94.1% .03 12.58);
    --color-rose-200: oklch(89.2% .058 10.001);
    --color-rose-500: oklch(64.5% .246 16.439);
    --color-rose-600: oklch(58.6% .253 17.585);
    --color-rose-700: oklch(51.4% .222 16.935);
    --color-rose-800: oklch(45.5% .188 13.697);
    --color-rose-900: oklch(41% .159 10.272);
    --color-slate-50: #f8fafc;
    --color-slate-100: #f1f5f9;
    --color-slate-200: #e2e8f0;
    --color-slate-300: #cbd5e1;
    --color-slate-400: #94a3b8;
    --color-slate-500: #64748b;
    --color-slate-600: #475569;
    --color-slate-700: #334155;
    --color-slate-900: #0f172a;
    --color-slate-950: #020617;
    --color-gray-50: #f9fafb;
    --color-gray-100: #f3f4f6;
    --color-gray-200: #e5e7eb;
    --color-gray-300: #d1d5db;
    --color-gray-400: #9ca3af;
    --color-gray-500: #6b7280;
    --color-gray-600: #4b5563;
    --color-gray-700: #374151;
    --color-gray-800: #1f2937;
    --color-gray-900: #111827;
    --color-gray-950: #030712;
    --color-black: #000;
    --color-white: #fff;
    --spacing: .25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: .75rem;
    --text-xs--line-height: calc(1 / .75);
    --text-sm: .875rem;
    --text-sm--line-height: calc(1.25 / .875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -.025em;
    --tracking-wide: .025em;
    --tracking-wider: .05em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-sm: .25rem;
    --radius-md: .375rem;
    --radius-lg: .5rem;
    --radius-xl: .75rem;
    --radius-2xl: 1rem;
    --radius-3xl: 1.5rem;
    --shadow-md: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;
    --drop-shadow-md: 0 3px 3px #0000001f;
    --ease-in: cubic-bezier(.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, .2, 1);
    --ease-in-out: cubic-bezier(.4, 0, .2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite;
    --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;
    --blur-xs: 4px;
    --blur-sm: 8px;
    --default-transition-duration: .15s;
    --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --spacing-px: 1px;
    --spacing-0_5: 2px;
    --spacing-1: 4px;
    --spacing-2: 8px;
    --spacing-3: 12px;
    --spacing-4: 16px;
    --spacing-5: 20px;
    --spacing-6: 24px;
    --spacing-8: 32px;
    --spacing-10: 40px;
    --spacing-12: 48px;
    --spacing-16: 64px;
    --spacing-20: 80px;
    --spacing-24: 96px;
    --color-secondary: var(--secondary);
    --color-border: var(--border);
    --color-input: var(--input);
    --color-ring: var(--ring);
    --color-background: var(--background);
    --color-foreground: var(--foreground);
    --color-primary: var(--primary);
    --color-primary-foreground: var(--primary-foreground);
    --color-secondary-foreground: var(--secondary-foreground);
    --color-destructive: var(--destructive);
    --color-destructive-foreground: var(--destructive-foreground);
    --color-delete: var(--delete);
    --color-muted: var(--muted);
    --color-muted-foreground: var(--muted-foreground);
    --color-accent: var(--accent);
    --color-accent-foreground: var(--accent-foreground);
    --color-popover: var(--popover);
    --color-popover-foreground: var(--popover-foreground);
    --color-card: var(--card);
    --color-card-foreground: var(--card-foreground);
    --color-sidebar: var(--sidebar);
    --color-sidebar-accent: var(--sidebar-accent);
    --color-background-primary: var(--background-primary);
    --color-background-secondary: var(--background-secondary);
    --color-background-divider: var(--background-divider);
    --font-family-sans: var(--font-primary);
    --opacity-0: 0%;
    --opacity-5: 5%;
    --opacity-10: 10%;
    --opacity-20: 20%;
    --opacity-25: 25%;
    --opacity-30: 30%;
    --opacity-40: 40%;
    --opacity-45: 45%;
    --opacity-50: 50%;
    --opacity-60: 60%;
    --opacity-70: 70%;
    --opacity-75: 75%;
    --opacity-80: 80%;
    --opacity-90: 90%;
    --opacity-95: 95%;
    --opacity-100: 100%;
  }
}

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

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

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

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

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

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

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

  b, strong {
    font-weight: bolder;
  }

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

  small {
    font-size: 80%;
  }

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

  sub {
    bottom: -.25em;
  }

  sup {
    top: -.5em;
  }

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

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

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

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

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

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

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

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

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

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

  ::placeholder {
    opacity: 1;
  }

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

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

  textarea {
    resize: vertical;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  *, :after, :before, ::backdrop {
    border-color: #e5e7eb;
  }

  ::file-selector-button {
    border-color: #e5e7eb;
  }

  :root {
    --background: #f9f9f9;
    --foreground: #222;
    --card: #fff;
    --card-foreground: #222;
    --popover: #fff;
    --popover-foreground: #222;
    --primary: #222;
    --primary-foreground: #fafafa;
    --secondary: #f5f5f5;
    --secondary-foreground: #222;
    --muted: #f5f5f5;
    --muted-foreground: #737373;
    --accent: #f5f5f5;
    --accent-foreground: #171717;
    --destructive: #ef4444;
    --destructive-foreground: #fff;
    --delete: #ff5050;
    --border: #e5e5e5;
    --input: #e5e5e5;
    --ring: #a1a1a1;
    --chart-1: #91c5ff;
    --chart-2: #3a81f6;
    --chart-3: #2563ef;
    --chart-4: #1a4eda;
    --chart-5: #1f3fad;
    --sidebar: var(--background);
    --sidebar-foreground: #0a0a0a;
    --sidebar-primary: #171717;
    --sidebar-primary-foreground: #fafafa;
    --sidebar-accent: var(--background-primary);
    --sidebar-accent-foreground: #171717;
    --sidebar-border: var(--border);
    --sidebar-ring: var(--ring);
    --background-primary: #fbfbfb;
    --background-secondary: #f1f1f1;
    --background-divider: var(--background-primary);
    --font-sans: var(--font-primary);
    --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
    --font-mono: var(--font-code);
    --radius: .625rem;
    --shadow-2xs: 0 1px 3px 0px #0000000d;
    --shadow-xs: 0 1px 3px 0px #0000000d;
    --shadow-sm: 0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;
    --shadow: 0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;
    --shadow-md: 0 1px 3px 0px #0000001a, 0 2px 4px -1px #0000001a;
    --shadow-lg: 0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;
    --shadow-xl: 0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;
    --shadow-2xl: 0 25px 50px -12px #00000040;
    --tracking-normal: 0em;
    --spacing: .25rem;
  }

  .dark {
    --background: #0a0a0a;
    --foreground: #fafafa;
    --card: #171717;
    --card-foreground: #fafafa;
    --popover: #262626;
    --popover-foreground: #fafafa;
    --primary: #e5e5e5;
    --primary-foreground: #171717;
    --secondary: #262626;
    --secondary-foreground: #fafafa;
    --muted: #262626;
    --muted-foreground: #a1a1a1;
    --accent: #404040;
    --accent-foreground: #fafafa;
    --destructive: #ff6467;
    --destructive-foreground: #fafafa;
    --delete: #ff5050;
    --border: #282828;
    --input: #343434;
    --ring: #737373;
    --chart-1: #91c5ff;
    --chart-2: #3a81f6;
    --chart-3: #2563ef;
    --chart-4: #1a4eda;
    --chart-5: #1f3fad;
    --sidebar: var(--background);
    --sidebar-foreground: #fafafa;
    --sidebar-primary: #1447e6;
    --sidebar-primary-foreground: #fafafa;
    --sidebar-accent: var(--accent);
    --sidebar-accent-foreground: #fafafa;
    --sidebar-border: var(--border);
    --sidebar-ring: var(--ring);
    --background-primary: var(--accent);
    --background-secondary: #262626;
    --background-divider: var(--border);
    --font-sans: var(--font-primary);
    --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
    --font-mono: var(--font-code);
    --radius: .625rem;
    --shadow-2xs: 0 1px 3px 0px #0000000d;
    --shadow-xs: 0 1px 3px 0px #0000000d;
    --shadow-sm: 0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;
    --shadow: 0 1px 3px 0px #0000001a, 0 1px 2px -1px #0000001a;
    --shadow-md: 0 1px 3px 0px #0000001a, 0 2px 4px -1px #0000001a;
    --shadow-lg: 0 1px 3px 0px #0000001a, 0 4px 6px -1px #0000001a;
    --shadow-xl: 0 1px 3px 0px #0000001a, 0 8px 10px -1px #0000001a;
    --shadow-2xl: 0 1px 3px 0px #00000040;
  }

  *, :before, :after {
    box-sizing: border-box;
  }

  * {
    margin: 0;
    padding: 0;
  }

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

  button:disabled, [role="button"][aria-disabled="true"], input:where([type="button"], [type="submit"], [type="reset"]):disabled, [aria-disabled="true"] {
    cursor: not-allowed;
  }
}

@layer components;

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

  .pointer-events-none {
    pointer-events: none;
  }

  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

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

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .top-2 {
    top: var(--spacing-2);
  }

  .top-2\.5 {
    top: calc(var(--spacing) * 2.5);
  }

  .top-3 {
    top: var(--spacing-3);
  }

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

  .top-20 {
    top: var(--spacing-20);
  }

  .top-\[50\%\] {
    top: 50%;
  }

  .top-full {
    top: 100%;
  }

  .-right-0\.5 {
    right: calc(var(--spacing-0_5) * -1);
  }

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

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

  .right-1 {
    right: var(--spacing-1);
  }

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

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

  .right-3 {
    right: var(--spacing-3);
  }

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

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

  .right-10 {
    right: var(--spacing-10);
  }

  .right-\[30px\] {
    right: 30px;
  }

  .right-full {
    right: 100%;
  }

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

  .bottom-1 {
    bottom: var(--spacing-1);
  }

  .bottom-2 {
    bottom: var(--spacing-2);
  }

  .bottom-3 {
    bottom: var(--spacing-3);
  }

  .bottom-4 {
    bottom: var(--spacing-4);
  }

  .bottom-5 {
    bottom: var(--spacing-5);
  }

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

  .bottom-12 {
    bottom: var(--spacing-12);
  }

  .bottom-\[100px\] {
    bottom: 100px;
  }

  .bottom-full {
    bottom: 100%;
  }

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

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

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

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

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

  .left-2 {
    left: var(--spacing-2);
  }

  .left-3 {
    left: var(--spacing-3);
  }

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

  .left-5 {
    left: var(--spacing-5);
  }

  .left-12 {
    left: var(--spacing-12);
  }

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

  .left-\[50\%\] {
    left: 50%;
  }

  .-z-10 {
    z-index: calc(10 * -1);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .col-span-2 {
    grid-column: span 2 / span 2;
  }

  .container {
    width: 100%;
  }

  @media (min-width: 1400px) {
    .container {
      max-width: 1400px;
    }
  }

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

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

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

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

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

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

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

  .mx-0\.5 {
    margin-inline: var(--spacing-0_5);
  }

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

  .mx-2 {
    margin-inline: var(--spacing-2);
  }

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

  .mx-5 {
    margin-inline: var(--spacing-5);
  }

  .mx-6 {
    margin-inline: var(--spacing-6);
  }

  .mx-10 {
    margin-inline: var(--spacing-10);
  }

  .mx-\[10px\] {
    margin-inline: 10px;
  }

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

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

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

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

  .my-4 {
    margin-block: var(--spacing-4);
  }

  .my-5 {
    margin-block: var(--spacing-5);
  }

  .my-6 {
    margin-block: var(--spacing-6);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mt-0\.5 {
    margin-top: var(--spacing-0_5);
  }

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

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

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

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

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

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

  .mt-5 {
    margin-top: var(--spacing-5);
  }

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

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

  .mt-16 {
    margin-top: var(--spacing-16);
  }

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

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

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

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

  .mr-4 {
    margin-right: var(--spacing-4);
  }

  .mr-8 {
    margin-right: var(--spacing-8);
  }

  .mb-0\.5 {
    margin-bottom: var(--spacing-0_5);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .ml-4 {
    margin-left: var(--spacing-4);
  }

  .ml-6 {
    margin-left: var(--spacing-6);
  }

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

  .ml-8 {
    margin-left: var(--spacing-8);
  }

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

  .ml-16 {
    margin-left: var(--spacing-16);
  }

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

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

  .box-border {
    box-sizing: border-box;
  }

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

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

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

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

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

  .list-item {
    display: list-item;
  }

  .table {
    display: table;
  }

  .table-cell {
    display: table-cell;
  }

  .table-row {
    display: table-row;
  }

  .aspect-\[16\/9\] {
    aspect-ratio: 16 / 9;
  }

  .aspect-square {
    aspect-ratio: 1;
  }

  .h-\(--radix-select-trigger-height\) {
    height: var(--radix-select-trigger-height);
  }

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

  .h-0\.5 {
    height: var(--spacing-0_5);
  }

  .h-1 {
    height: var(--spacing-1);
  }

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

  .h-2 {
    height: var(--spacing-2);
  }

  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }

  .h-3 {
    height: var(--spacing-3);
  }

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

  .h-4 {
    height: var(--spacing-4);
  }

  .h-5 {
    height: var(--spacing-5);
  }

  .h-6 {
    height: var(--spacing-6);
  }

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

  .h-8 {
    height: var(--spacing-8);
  }

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

  .h-10 {
    height: var(--spacing-10);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .h-\[80vh\] {
    height: 80vh;
  }

  .h-\[90vh\] {
    height: 90vh;
  }

  .h-\[95vh\] {
    height: 95vh;
  }

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

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

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

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

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

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

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

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

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

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

  .h-\[calc\(100vh-68px\)\] {
    height: calc(100vh - 68px);
  }

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
    height: var(--spacing-px);
  }

  .h-screen {
    height: 100vh;
  }

  .max-h-\(--radix-select-content-available-height\) {
    max-height: var(--radix-select-content-available-height);
  }

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

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

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

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

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

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

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

  .max-h-\[40vh\] {
    max-height: 40vh;
  }

  .max-h-\[60vh\] {
    max-height: 60vh;
  }

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

  .max-h-\[80vh\] {
    max-height: 80vh;
  }

  .max-h-\[85vh\] {
    max-height: 85vh;
  }

  .max-h-\[90vh\] {
    max-height: 90vh;
  }

  .max-h-\[100\%\] {
    max-height: 100%;
  }

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

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

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

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

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

  .max-h-full {
    max-height: 100%;
  }

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

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

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

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

  .min-h-\[50vh\] {
    min-height: 50vh;
  }

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

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

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

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

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

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

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

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

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

  .w-0\.5 {
    width: var(--spacing-0_5);
  }

  .w-1 {
    width: var(--spacing-1);
  }

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

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

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

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

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

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

  .w-3\/4 {
    width: 75%;
  }

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

  .w-4\/5 {
    width: 80%;
  }

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

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

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

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

  .w-8\/12 {
    width: 66.6667%;
  }

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

  .w-9\/12 {
    width: 75%;
  }

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

  .w-10\/12 {
    width: 83.3333%;
  }

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

  .w-11\/12 {
    width: 91.6667%;
  }

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

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

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

  .w-20 {
    width: var(--spacing-20);
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .w-\[70vw\] {
    width: 70vw;
  }

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

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

  .w-\[95vw\] {
    width: 95vw;
  }

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

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

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

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

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

  .w-\[clamp\(280px\,40vw\,368px\)\] {
    width: clamp(280px, 40vw, 368px);
  }

  .w-\[var\(--radix-popover-trigger-width\)\] {
    width: var(--radix-popover-trigger-width);
  }

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

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

  .w-px {
    width: 1px;
    width: var(--spacing-px);
  }

  .w-screen {
    width: 100vw;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .max-w-\[calc\(100vw-1rem\)\] {
    max-width: calc(100vw - 1rem);
  }

  .max-w-full {
    max-width: 100%;
  }

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

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

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

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

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

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

  .min-w-\(--radix-select-trigger-width\) {
    min-width: var(--radix-select-trigger-width);
  }

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

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

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

  .min-w-\[3rem\] {
    min-width: 3rem;
  }

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

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

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

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

  .flex-1 {
    flex: 1;
  }

  .flex-none {
    flex: none;
  }

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

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

  .grow {
    flex-grow: 1;
  }

  .table-fixed {
    table-layout: fixed;
  }

  .caption-bottom {
    caption-side: bottom;
  }

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

  .origin-\(--radix-popover-content-transform-origin\) {
    transform-origin: var(--radix-popover-content-transform-origin);
  }

  .origin-\(--radix-select-content-transform-origin\) {
    transform-origin: var(--radix-select-content-transform-origin);
  }

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

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

  .translate-x-\[-50\%\] {
    --tw-translate-x: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

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

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

  .translate-y-\[-50\%\] {
    --tw-translate-y: -50%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .-rotate-90 {
    rotate: -90deg;
  }

  .rotate-90 {
    rotate: 90deg;
  }

  .rotate-180 {
    rotate: 180deg;
  }

  .rotate-270 {
    rotate: 270deg;
  }

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

  .animate-none {
    animation: none;
  }

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

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

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

  .cursor-col-resize {
    cursor: col-resize;
  }

  .cursor-default {
    cursor: default;
  }

  .cursor-grab {
    cursor: grab;
  }

  .cursor-grabbing {
    cursor: grabbing;
  }

  .cursor-help {
    cursor: help;
  }

  .cursor-move {
    cursor: move;
  }

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

  .cursor-pointer {
    cursor: pointer;
  }

  .cursor-row-resize {
    cursor: row-resize;
  }

  .cursor-wait {
    cursor: wait;
  }

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

  .touch-none {
    touch-action: none;
  }

  .resize {
    resize: both;
  }

  .resize-none {
    resize: none;
  }

  .resize-y {
    resize: vertical;
  }

  .scroll-mt-20 {
    scroll-margin-top: var(--spacing-20);
  }

  .list-decimal {
    list-style-type: decimal;
  }

  .list-disc {
    list-style-type: disc;
  }

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

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

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

  .grid-cols-\[3rem_1fr\] {
    grid-template-columns: 3rem 1fr;
  }

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

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

  .flex-row {
    flex-direction: row;
  }

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

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

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

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

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

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

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

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

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

  .gap-0\.5 {
    gap: var(--spacing-0_5);
  }

  .gap-1 {
    gap: var(--spacing-1);
  }

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

  .gap-2 {
    gap: var(--spacing-2);
  }

  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }

  .gap-3 {
    gap: var(--spacing-3);
  }

  .gap-4 {
    gap: var(--spacing-4);
  }

  .gap-5 {
    gap: var(--spacing-5);
  }

  .gap-6 {
    gap: var(--spacing-6);
  }

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

  .gap-8 {
    gap: var(--spacing-8);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  :where(.divide-y > :not(:last-child)) {
    --tw-divide-y-reverse: 0;
    border-bottom-style: var(--tw-border-style);
    border-top-style: var(--tw-border-style);
    border-top-width: calc(1px * var(--tw-divide-y-reverse));
    border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  }

  :where(.divide-\[\#EEEEEE\] > :not(:last-child)) {
    border-color: #eee;
  }

  :where(.divide-gray-100 > :not(:last-child)) {
    border-color: var(--color-gray-100);
  }

  :where(.divide-gray-200 > :not(:last-child)) {
    border-color: var(--color-gray-200);
  }

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

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

  .overflow-auto {
    overflow: auto;
  }

  .overflow-clip {
    overflow: clip;
  }

  .overflow-hidden {
    overflow: hidden;
  }

  .overflow-visible {
    overflow: visible;
  }

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

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

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

  .overscroll-contain {
    overscroll-behavior: contain;
  }

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

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

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

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

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

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

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

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

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

  .rounded-none {
    border-radius: 0;
  }

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

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

  .rounded-t-\[24px\] {
    border-top-left-radius: 24px;
    border-top-right-radius: 24px;
  }

  .rounded-t-lg {
    border-top-left-radius: var(--radius-lg);
    border-top-right-radius: var(--radius-lg);
  }

  .rounded-t-xl {
    border-top-left-radius: var(--radius-xl);
    border-top-right-radius: var(--radius-xl);
  }

  .rounded-l-md {
    border-top-left-radius: var(--radius-md);
    border-bottom-left-radius: var(--radius-md);
  }

  .rounded-l-none {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  .rounded-r {
    border-top-right-radius: .25rem;
    border-bottom-right-radius: .25rem;
  }

  .rounded-r-md {
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
  }

  .rounded-r-none {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .rounded-b-xl {
    border-bottom-right-radius: var(--radius-xl);
    border-bottom-left-radius: var(--radius-xl);
  }

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

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

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

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

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

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

  .border-r-0 {
    border-right-style: var(--tw-border-style);
    border-right-width: 0;
  }

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

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

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

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

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

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

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

  .border-\[\#E3E3E3\] {
    border-color: #e3e3e3;
  }

  .border-\[\#F2F2F2\] {
    border-color: #f2f2f2;
  }

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

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

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

  .border-amber-200\/50 {
    border-color: #fee68580;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-amber-200\/50 {
      border-color: color-mix(in oklab, var(--color-amber-200) var(--opacity-50), transparent);
    }
  }

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

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

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

  .border-blue-200\/50 {
    border-color: #bfdbfe80;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-200\/50 {
      border-color: color-mix(in oklab, var(--color-blue-200) var(--opacity-50), transparent);
    }
  }

  .border-blue-200\/60 {
    border-color: #bfdbfe99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-blue-200\/60 {
      border-color: color-mix(in oklab, var(--color-blue-200) var(--opacity-60), transparent);
    }
  }

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

  .border-border, .border-border\/50 {
    border-color: var(--color-border);
  }

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

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

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

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

  .border-destructive\/20 {
    border-color: var(--color-destructive);
  }

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

  .border-destructive\/50 {
    border-color: var(--color-destructive);
  }

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

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

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

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

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

  .border-gray-200\/60 {
    border-color: #e5e7eb99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-gray-200\/60 {
      border-color: color-mix(in oklab, var(--color-gray-200) var(--opacity-60), transparent);
    }
  }

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

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

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

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

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

  .border-green-200\/60 {
    border-color: #bbf7d099;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-green-200\/60 {
      border-color: color-mix(in oklab, var(--color-green-200) var(--opacity-60), transparent);
    }
  }

  .border-green-300 {
    border-color: var(--color-green-300);
  }

  .border-green-500\/50 {
    border-color: #22c55e80;
  }

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

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

  .border-input {
    border-color: var(--color-input);
  }

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

  .border-primary, .border-primary\/30 {
    border-color: var(--color-primary);
  }

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

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

  .border-purple-200\/50 {
    border-color: #e9d5ff80;
  }

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

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

  .border-red-200\/60 {
    border-color: #fecaca99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-red-200\/60 {
      border-color: color-mix(in oklab, var(--color-red-200) var(--opacity-60), transparent);
    }
  }

  .border-red-300 {
    border-color: var(--color-red-300);
  }

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

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

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

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

  .border-slate-200\/70 {
    border-color: #e2e8f0b3;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-slate-200\/70 {
      border-color: color-mix(in oklab, var(--color-slate-200) var(--opacity-70), transparent);
    }
  }

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

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

  .border-yellow-200\/60 {
    border-color: #fef08a99;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .border-yellow-200\/60 {
      border-color: color-mix(in oklab, var(--color-yellow-200) var(--opacity-60), transparent);
    }
  }

  .border-yellow-500\/50 {
    border-color: #eab30880;
  }

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

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

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

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

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

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

  .border-b-gray-700 {
    border-bottom-color: var(--color-gray-700);
  }

  .\!bg-\[var\(--background\)\] {
    background-color: var(--background) !important;
  }

  .bg-\[\#222222\] {
    background-color: #222;
  }

  .bg-\[\#CDFFE4\] {
    background-color: #cdffe4;
  }

  .bg-\[\#E3E3E3\] {
    background-color: #e3e3e3;
  }

  .bg-\[\#E8F4FF\] {
    background-color: #e8f4ff;
  }

  .bg-\[\#F2F2F2\] {
    background-color: #f2f2f2;
  }

  .bg-\[\#F3F3F3\] {
    background-color: #f3f3f3;
  }

  .bg-\[\#F5F5F5\] {
    background-color: #f5f5f5;
  }

  .bg-\[\#F6F6F6\] {
    background-color: #f6f6f6;
  }

  .bg-\[\#F7F7F8\] {
    background-color: #f7f7f8;
  }

  .bg-\[\#F9F9F9\] {
    background-color: #f9f9f9;
  }

  .bg-\[\#FFF4E6\] {
    background-color: #fff4e6;
  }

  .bg-\[\#eee\], .bg-\[\#eeeeee\] {
    background-color: #eee;
  }

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

  .bg-\[\#ffcccc\] {
    background-color: #fcc;
  }

  .bg-\[rgba\(0\,0\,0\,0\.1\)\] {
    background-color: #0000001a;
  }

  .bg-\[rgba\(0\,123\,255\,0\.1\)\] {
    background-color: #007bff1a;
  }

  .bg-\[rgba\(36\,146\,69\,0\.2\)\] {
    background-color: #24924533;
  }

  .bg-\[rgba\(255\,193\,7\,0\.15\)\] {
    background-color: #ffc10726;
  }

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

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

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

  .bg-amber-200\/50 {
    background-color: #fee68580;
  }

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

  .bg-amber-200\/60 {
    background-color: #fee68599;
  }

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

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

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

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

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

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

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

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

  .bg-black\/20 {
    background-color: #0003;
  }

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

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

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

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

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

  .bg-black\/80 {
    background-color: #000c;
  }

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

  .bg-black\/95 {
    background-color: #000000f2;
  }

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

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

  .bg-blue-50\/30 {
    background-color: #eff6ff4d;
  }

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

  .bg-blue-50\/50 {
    background-color: #eff6ff80;
  }

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

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

  .bg-blue-200\/50 {
    background-color: #bfdbfe80;
  }

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

  .bg-blue-200\/60 {
    background-color: #bfdbfe99;
  }

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

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

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

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

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

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

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

  .bg-destructive, .bg-destructive\/5 {
    background-color: var(--color-destructive);
  }

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

  .bg-destructive\/10 {
    background-color: var(--color-destructive);
  }

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

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

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

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

  .bg-gray-50\/50 {
    background-color: #f9fafb80;
  }

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

  .bg-gray-50\/80 {
    background-color: #f9fafbcc;
  }

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

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

  .bg-gray-100\/60 {
    background-color: #f3f4f699;
  }

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

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

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

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

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

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

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

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

  .bg-green-50\/50 {
    background-color: #f0fdf480;
  }

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

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

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

  .bg-green-500\/10 {
    background-color: #22c55e1a;
  }

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

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

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

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

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

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

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

  .bg-muted\/20 {
    background-color: var(--color-muted);
  }

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

  .bg-muted\/30 {
    background-color: var(--color-muted);
  }

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

  .bg-muted\/50 {
    background-color: var(--color-muted);
  }

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

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

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

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

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

  .bg-primary, .bg-primary\/5 {
    background-color: var(--color-primary);
  }

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

  .bg-primary\/10 {
    background-color: var(--color-primary);
  }

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

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

  .bg-purple-50\/30 {
    background-color: #faf5ff4d;
  }

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

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

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

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

  .bg-red-50\/50 {
    background-color: #fef2f280;
  }

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

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

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

  .bg-red-500\/20 {
    background-color: #ef444433;
  }

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

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

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

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

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

  .bg-secondary, .bg-secondary\/30 {
    background-color: var(--color-secondary);
  }

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

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

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

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

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

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

  .bg-slate-950\/90 {
    background-color: #020617e6;
  }

  @supports (color: color-mix(in lab, red, red)) {
    .bg-slate-950\/90 {
      background-color: color-mix(in oklab, var(--color-slate-950) var(--opacity-90), transparent);
    }
  }

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

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

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

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

  .bg-white\/90 {
    background-color: #ffffffe6;
  }

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

  .bg-white\/95 {
    background-color: #fffffff2;
  }

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

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

  .bg-yellow-50\/50 {
    background-color: #fefce880;
  }

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

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

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

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

  .bg-yellow-500\/10 {
    background-color: #eab3081a;
  }

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

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

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

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

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

  .from-black\/60 {
    --tw-gradient-from: #0009;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .fill-current {
    fill: currentColor;
  }

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

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

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

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

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

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

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

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

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

  .p-3 {
    padding: var(--spacing-3);
  }

  .p-4 {
    padding: var(--spacing-4);
  }

  .p-5 {
    padding: var(--spacing-5);
  }

  .p-6 {
    padding: var(--spacing-6);
  }

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

  .p-8 {
    padding: var(--spacing-8);
  }

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

  .px-1 {
    padding-inline: var(--spacing-1);
  }

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

  .px-2 {
    padding-inline: var(--spacing-2);
  }

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

  .px-3 {
    padding-inline: var(--spacing-3);
  }

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

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

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

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

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

  .px-10 {
    padding-inline: var(--spacing-10);
  }

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

  .px-\[6px\] {
    padding-inline: 6px;
  }

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

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

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

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

  .py-2 {
    padding-block: var(--spacing-2);
  }

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

  .py-3 {
    padding-block: var(--spacing-3);
  }

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

  .py-5 {
    padding-block: var(--spacing-5);
  }

  .py-6 {
    padding-block: var(--spacing-6);
  }

  .py-8 {
    padding-block: var(--spacing-8);
  }

  .py-10 {
    padding-block: var(--spacing-10);
  }

  .py-12 {
    padding-block: var(--spacing-12);
  }

  .py-20 {
    padding-block: var(--spacing-20);
  }

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

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

  .pt-1 {
    padding-top: var(--spacing-1);
  }

  .pt-2 {
    padding-top: var(--spacing-2);
  }

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

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

  .pt-5 {
    padding-top: var(--spacing-5);
  }

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

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

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

  .pt-\[2px\] {
    padding-top: 2px;
  }

  .pt-\[21px\] {
    padding-top: 21px;
  }

  .pt-\[57px\] {
    padding-top: 57px;
  }

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

  .pr-2 {
    padding-right: var(--spacing-2);
  }

  .pr-3 {
    padding-right: var(--spacing-3);
  }

  .pr-3\.5 {
    padding-right: calc(var(--spacing) * 3.5);
  }

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

  .pr-5 {
    padding-right: var(--spacing-5);
  }

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

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

  .pr-8 {
    padding-right: var(--spacing-8);
  }

  .pr-10 {
    padding-right: var(--spacing-10);
  }

  .pr-12 {
    padding-right: var(--spacing-12);
  }

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

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

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

  .pb-4 {
    padding-bottom: var(--spacing-4);
  }

  .pb-5 {
    padding-bottom: var(--spacing-5);
  }

  .pb-6 {
    padding-bottom: var(--spacing-6);
  }

  .pb-10 {
    padding-bottom: var(--spacing-10);
  }

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

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

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

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

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

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

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

  .pl-8 {
    padding-left: var(--spacing-8);
  }

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

  .pl-10 {
    padding-left: var(--spacing-10);
  }

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

  .pl-\[6px\] {
    padding-left: 6px;
  }

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

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

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

  .align-middle {
    vertical-align: middle;
  }

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

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }

  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }

  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }

  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .text-\[0\.8rem\] {
    font-size: .8rem;
  }

  .text-\[0\.625rem\] {
    font-size: .625rem;
  }

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

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

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

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

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

  .leading-\[1\.4\] {
    --tw-leading: 1.4;
    line-height: 1.4;
  }

  .leading-\[1\.5\] {
    --tw-leading: 1.5;
    line-height: 1.5;
  }

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

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

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

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

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

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

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

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

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

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

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

  .\[overflow-wrap\:anywhere\] {
    overflow-wrap: anywhere;
  }

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

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

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

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

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

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

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

  .text-\[\#007BFF\] {
    color: #007bff;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .text-\[rgba\(0\,0\,0\,0\.5\)\] {
    color: #00000080;
  }

  .text-accent-foreground {
    color: var(--color-accent-foreground);
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .text-card-foreground {
    color: var(--color-card-foreground);
  }

  .text-current {
    color: currentColor;
  }

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

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

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

  .text-destructive-foreground, .text-destructive-foreground\/80 {
    color: var(--color-destructive-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-destructive-foreground\/80 {
      color: color-mix(in oklab, var(--color-destructive-foreground) var(--opacity-80), transparent);
    }
  }

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

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

  .text-foreground, .text-foreground\/80 {
    color: var(--color-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .text-foreground\/80 {
      color: color-mix(in oklab, var(--color-foreground) var(--opacity-80), transparent);
    }
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .text-inherit {
    color: inherit;
  }

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

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

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

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

  .text-orange-800 {
    color: var(--color-orange-800);
  }

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

  .text-popover-foreground {
    color: var(--color-popover-foreground);
  }

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

  .text-primary-foreground {
    color: var(--color-primary-foreground);
  }

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

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

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

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

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

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

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

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

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

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

  .text-rose-800 {
    color: var(--color-rose-800);
  }

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

  .text-secondary-foreground {
    color: var(--color-secondary-foreground);
  }

  .text-slate-100 {
    color: var(--color-slate-100);
  }

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

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

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

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

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

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

  .text-transparent {
    color: #0000;
  }

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

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

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

  .text-white\/80 {
    color: #fffc;
  }

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

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

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

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

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

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

  .capitalize {
    text-transform: capitalize;
  }

  .lowercase {
    text-transform: lowercase;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, );
  }

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

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

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

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

  .opacity-0 {
    opacity: var(--opacity-0);
  }

  .opacity-10 {
    opacity: var(--opacity-10);
  }

  .opacity-25 {
    opacity: var(--opacity-25);
  }

  .opacity-40 {
    opacity: var(--opacity-40);
  }

  .opacity-50 {
    opacity: var(--opacity-50);
  }

  .opacity-60 {
    opacity: var(--opacity-60);
  }

  .opacity-70 {
    opacity: var(--opacity-70);
  }

  .opacity-75 {
    opacity: var(--opacity-75);
  }

  .opacity-80 {
    opacity: var(--opacity-80);
  }

  .opacity-100 {
    opacity: var(--opacity-100);
  }

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

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

  .shadow-\[0_-4px_12px_rgba\(0\,0\,0\,0\.1\)\] {
    --tw-shadow: 0 -4px 12px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_12px_0_rgba\(0\,0\,0\,0\.14\)\] {
    --tw-shadow: 0 4px 12px 0 var(--tw-shadow-color, #00000024);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0_4px_20px_rgba\(0\,0\,0\,0\.25\)\] {
    --tw-shadow: 0 4px 20px var(--tw-shadow-color, #00000040);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-\[0px_0px_4px_0px_rgba\(0\,0\,0\,0\.15\)\] {
    --tw-shadow: 0px 0px 4px 0px var(--tw-shadow-color, #00000026);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

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

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

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

  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

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

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

  .ring-amber-200 {
    --tw-ring-color: var(--color-amber-200);
  }

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

  .ring-offset-background {
    --tw-ring-offset-color: var(--color-background);
  }

  .ring-offset-white {
    --tw-ring-offset-color: var(--color-white);
  }

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

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

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

  .brightness-0 {
    --tw-brightness: brightness(0%);
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .drop-shadow-md {
    --tw-drop-shadow-size: drop-shadow(0 3px 3px var(--tw-drop-shadow-color, #0000001f));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-md));
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .backdrop-blur-xs {
    --tw-backdrop-blur: blur(var(--blur-xs));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-\[margin-left\] {
    transition-property: margin-left;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-\[right\] {
    transition-property: right;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .duration-75 {
    --tw-duration: 75ms;
    transition-duration: 75ms;
  }

  .duration-100 {
    --tw-duration: .1s;
    transition-duration: .1s;
  }

  .duration-150 {
    --tw-duration: .15s;
    transition-duration: .15s;
  }

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

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

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

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

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

  .will-change-\[width\] {
    will-change: width;
  }

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

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

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

  @media (hover: hover) {
    .group-hover\:block:is(:where(.group):hover *) {
      display: block;
    }

    .group-hover\:hidden:is(:where(.group):hover *) {
      display: none;
    }

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

    .group-hover\:border-black:is(:where(.group):hover *) {
      border-color: var(--color-black);
    }

    .group-hover\:bg-black:is(:where(.group):hover *) {
      background-color: var(--color-black);
    }

    .group-hover\:text-blue-700:is(:where(.group):hover *) {
      color: var(--color-blue-700);
    }

    .group-hover\:text-gray-900:is(:where(.group):hover *) {
      color: var(--color-gray-900);
    }

    .group-hover\:text-green-700:is(:where(.group):hover *) {
      color: var(--color-green-700);
    }

    .group-hover\:text-primary:is(:where(.group):hover *), .group-hover\:text-primary\/90:is(:where(.group):hover *) {
      color: var(--color-primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .group-hover\:text-primary\/90:is(:where(.group):hover *) {
        color: color-mix(in oklab, var(--color-primary) var(--opacity-90), transparent);
      }
    }

    .group-hover\:text-red-700:is(:where(.group):hover *) {
      color: var(--color-red-700);
    }

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

    .group-hover\:text-yellow-700:is(:where(.group):hover *) {
      color: var(--color-yellow-700);
    }

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

  .group-\[\.toast\]\:bg-muted:is(:where(.group).toast *) {
    background-color: var(--color-muted);
  }

  .group-\[\.toast\]\:bg-primary:is(:where(.group).toast *) {
    background-color: var(--color-primary);
  }

  .group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *) {
    color: var(--color-muted-foreground);
  }

  .group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *) {
    color: var(--color-primary-foreground);
  }

  .group-\[\.toaster\]\:border-border:is(:where(.group).toaster *) {
    border-color: var(--color-border);
  }

  .group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *) {
    background-color: var(--color-background);
  }

  .group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *) {
    color: var(--color-foreground);
  }

  .group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *) {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
    cursor: not-allowed;
  }

  .peer-disabled\:opacity-70:is(:where(.peer):disabled ~ *) {
    opacity: var(--opacity-70);
  }

  .file\:border-0::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .file\:bg-transparent::file-selector-button {
    background-color: #0000;
  }

  .file\:text-sm::file-selector-button {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .file\:font-medium::file-selector-button {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

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

  .last\:border-b-0:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }

  .focus-within\:relative:focus-within {
    position: relative;
  }

  .focus-within\:z-20:focus-within {
    z-index: 20;
  }

  .focus-within\:border-gray-300:focus-within {
    border-color: var(--color-gray-300);
  }

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

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

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

    .hover\:border-blue-300:hover {
      border-color: var(--color-blue-300);
    }

    .hover\:border-border:hover, .hover\:border-border\/80:hover {
      border-color: var(--color-border);
    }

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

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

    .hover\:border-gray-300:hover {
      border-color: var(--color-gray-300);
    }

    .hover\:border-gray-400:hover {
      border-color: var(--color-gray-400);
    }

    .hover\:border-green-300:hover {
      border-color: var(--color-green-300);
    }

    .hover\:border-red-300:hover {
      border-color: var(--color-red-300);
    }

    .hover\:border-slate-300:hover {
      border-color: var(--color-slate-300);
    }

    .hover\:border-yellow-300:hover {
      border-color: var(--color-yellow-300);
    }

    .hover\:bg-\[\#171717\]:hover {
      background-color: #171717;
    }

    .hover\:bg-\[\#E8E8E8\]:hover {
      background-color: #e8e8e8;
    }

    .hover\:bg-\[\#F3F3F3\]:hover {
      background-color: #f3f3f3;
    }

    .hover\:bg-\[\#F7F7F8\]:hover {
      background-color: #f7f7f8;
    }

    .hover\:bg-\[\#eee\]:hover {
      background-color: #eee;
    }

    .hover\:bg-\[\#f5f5f5\]:hover {
      background-color: #f5f5f5;
    }

    .hover\:bg-accent:hover, .hover\:bg-accent\/50:hover {
      background-color: var(--color-accent);
    }

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

    .hover\:bg-accent\/60:hover {
      background-color: var(--color-accent);
    }

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

    .hover\:bg-amber-100\/80:hover {
      background-color: #fef3c6cc;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-amber-100\/80:hover {
        background-color: color-mix(in oklab, var(--color-amber-100) var(--opacity-80), transparent);
      }
    }

    .hover\:bg-amber-200:hover {
      background-color: var(--color-amber-200);
    }

    .hover\:bg-amber-300\/60:hover {
      background-color: #ffd23699;
    }

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

    .hover\:bg-amber-500\/90:hover {
      background-color: #f99c00e6;
    }

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

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

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

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

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

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

    .hover\:bg-black\/90:hover {
      background-color: #000000e6;
    }

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

    .hover\:bg-blue-50:hover {
      background-color: var(--color-blue-50);
    }

    .hover\:bg-blue-50\/30:hover {
      background-color: #eff6ff4d;
    }

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

    .hover\:bg-blue-100:hover {
      background-color: var(--color-blue-100);
    }

    .hover\:bg-blue-100\/50:hover {
      background-color: #dbeafe80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-blue-100\/50:hover {
        background-color: color-mix(in oklab, var(--color-blue-100) var(--opacity-50), transparent);
      }
    }

    .hover\:bg-blue-600:hover {
      background-color: var(--color-blue-600);
    }

    .hover\:bg-destructive:hover, .hover\:bg-destructive\/80:hover {
      background-color: var(--color-destructive);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/80:hover {
        background-color: color-mix(in oklab, var(--color-destructive) var(--opacity-80), transparent);
      }
    }

    .hover\:bg-destructive\/90:hover {
      background-color: var(--color-destructive);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/90:hover {
        background-color: color-mix(in oklab, var(--color-destructive) var(--opacity-90), transparent);
      }
    }

    .hover\:bg-gray-50:hover {
      background-color: var(--color-gray-50);
    }

    .hover\:bg-gray-50\/50:hover {
      background-color: #f9fafb80;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-gray-50\/50:hover {
        background-color: color-mix(in oklab, var(--color-gray-50) var(--opacity-50), transparent);
      }
    }

    .hover\:bg-gray-100:hover {
      background-color: var(--color-gray-100);
    }

    .hover\:bg-gray-200:hover {
      background-color: var(--color-gray-200);
    }

    .hover\:bg-gray-300:hover {
      background-color: var(--color-gray-300);
    }

    .hover\:bg-gray-700:hover {
      background-color: var(--color-gray-700);
    }

    .hover\:bg-green-50:hover {
      background-color: var(--color-green-50);
    }

    .hover\:bg-green-100:hover {
      background-color: var(--color-green-100);
    }

    .hover\:bg-green-700:hover {
      background-color: var(--color-green-700);
    }

    .hover\:bg-muted\/30:hover {
      background-color: var(--color-muted);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/30:hover {
        background-color: color-mix(in oklab, var(--color-muted) var(--opacity-30), transparent);
      }
    }

    .hover\:bg-muted\/40:hover {
      background-color: var(--color-muted);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/40:hover {
        background-color: color-mix(in oklab, var(--color-muted) var(--opacity-40), transparent);
      }
    }

    .hover\:bg-muted\/50:hover {
      background-color: var(--color-muted);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/50:hover {
        background-color: color-mix(in oklab, var(--color-muted) var(--opacity-50), transparent);
      }
    }

    .hover\:bg-orange-600:hover {
      background-color: var(--color-orange-600);
    }

    .hover\:bg-primary:hover, .hover\:bg-primary\/80:hover {
      background-color: var(--color-primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/80:hover {
        background-color: color-mix(in oklab, var(--color-primary) var(--opacity-80), transparent);
      }
    }

    .hover\:bg-primary\/90:hover {
      background-color: var(--color-primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/90:hover {
        background-color: color-mix(in oklab, var(--color-primary) var(--opacity-90), transparent);
      }
    }

    .hover\:bg-purple-50\/30:hover {
      background-color: #faf5ff4d;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-purple-50\/30:hover {
        background-color: color-mix(in oklab, var(--color-purple-50) var(--opacity-30), transparent);
      }
    }

    .hover\:bg-red-50:hover {
      background-color: var(--color-red-50);
    }

    .hover\:bg-red-100:hover {
      background-color: var(--color-red-100);
    }

    .hover\:bg-red-200:hover {
      background-color: var(--color-red-200);
    }

    .hover\:bg-red-700:hover {
      background-color: var(--color-red-700);
    }

    .hover\:bg-secondary\/45:hover {
      background-color: var(--color-secondary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-secondary\/45:hover {
        background-color: color-mix(in oklab, var(--color-secondary) var(--opacity-45), transparent);
      }
    }

    .hover\:bg-secondary\/80:hover {
      background-color: var(--color-secondary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-secondary\/80:hover {
        background-color: color-mix(in oklab, var(--color-secondary) var(--opacity-80), transparent);
      }
    }

    .hover\:bg-sidebar-accent:hover {
      background-color: var(--color-sidebar-accent);
    }

    .hover\:bg-slate-50:hover {
      background-color: var(--color-slate-50);
    }

    .hover\:bg-transparent:hover {
      background-color: #0000;
    }

    .hover\:bg-white:hover {
      background-color: var(--color-white);
    }

    .hover\:bg-white\/20:hover {
      background-color: #fff3;
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-white\/20:hover {
        background-color: color-mix(in oklab, var(--color-white) var(--opacity-20), transparent);
      }
    }

    .hover\:bg-yellow-100:hover {
      background-color: var(--color-yellow-100);
    }

    .hover\:font-semibold:hover {
      --tw-font-weight: var(--font-weight-semibold);
      font-weight: var(--font-weight-semibold);
    }

    .hover\:text-\[\#222222\]:hover {
      color: #222;
    }

    .hover\:text-accent-foreground:hover {
      color: var(--color-accent-foreground);
    }

    .hover\:text-amber-900:hover {
      color: var(--color-amber-900);
    }

    .hover\:text-blue-600:hover {
      color: var(--color-blue-600);
    }

    .hover\:text-destructive-foreground:hover {
      color: var(--color-destructive-foreground);
    }

    .hover\:text-foreground:hover, .hover\:text-foreground\/80:hover {
      color: var(--color-foreground);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:text-foreground\/80:hover {
        color: color-mix(in oklab, var(--color-foreground) var(--opacity-80), transparent);
      }
    }

    .hover\:text-gray-600:hover {
      color: var(--color-gray-600);
    }

    .hover\:text-gray-700:hover {
      color: var(--color-gray-700);
    }

    .hover\:text-gray-800:hover {
      color: var(--color-gray-800);
    }

    .hover\:text-gray-900:hover {
      color: var(--color-gray-900);
    }

    .hover\:text-green-700:hover {
      color: var(--color-green-700);
    }

    .hover\:text-primary-foreground:hover {
      color: var(--color-primary-foreground);
    }

    .hover\:text-primary\/70:hover {
      color: var(--color-primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:text-primary\/70:hover {
        color: color-mix(in oklab, var(--color-primary) var(--opacity-70), transparent);
      }
    }

    .hover\:text-primary\/90:hover {
      color: var(--color-primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:text-primary\/90:hover {
        color: color-mix(in oklab, var(--color-primary) var(--opacity-90), transparent);
      }
    }

    .hover\:text-red-600:hover {
      color: var(--color-red-600);
    }

    .hover\:text-red-700:hover {
      color: var(--color-red-700);
    }

    .hover\:text-red-800:hover {
      color: var(--color-red-800);
    }

    .hover\:text-rose-900:hover {
      color: var(--color-rose-900);
    }

    .hover\:text-slate-700:hover {
      color: var(--color-slate-700);
    }

    .hover\:text-slate-900:hover {
      color: var(--color-slate-900);
    }

    .hover\:text-white:hover {
      color: var(--color-white);
    }

    .hover\:no-underline:hover {
      text-decoration-line: none;
    }

    .hover\:underline:hover {
      text-decoration-line: underline;
    }

    .hover\:opacity-60:hover {
      opacity: var(--opacity-60);
    }

    .hover\:opacity-70:hover {
      opacity: var(--opacity-70);
    }

    .hover\:opacity-80:hover {
      opacity: var(--opacity-80);
    }

    .hover\:opacity-90:hover {
      opacity: var(--opacity-90);
    }

    .hover\:opacity-100:hover {
      opacity: var(--opacity-100);
    }

    .hover\:shadow:hover {
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .hover\:shadow-\[0_6px_25px_rgba\(0\,0\,0\,0\.35\)\]:hover {
      --tw-shadow: 0 6px 25px var(--tw-shadow-color, #00000059);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .hover\:shadow-lg:hover {
      --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, #0000001a), 0 4px 6px -4px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .hover\:shadow-md:hover {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, #0000001a), 0 2px 4px -2px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .hover\:shadow-sm:hover {
      --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .hover\:shadow-xl:hover {
      --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, #0000001a), 0 8px 10px -6px var(--tw-shadow-color, #0000001a);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  .focus\:border-gray-300:focus {
    border-color: var(--color-gray-300);
  }

  .focus\:bg-gray-100:focus {
    background-color: var(--color-gray-100);
  }

  .focus\:bg-primary:focus {
    background-color: var(--color-primary);
  }

  .focus\:bg-white:focus {
    background-color: var(--color-white);
  }

  .focus\:text-gray-800:focus {
    color: var(--color-gray-800);
  }

  .focus\:text-primary-foreground:focus {
    color: var(--color-primary-foreground);
  }

  .focus\:ring-1:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus\:ring-2: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\:ring-blue-500:focus {
    --tw-ring-color: var(--color-blue-500);
  }

  .focus\:ring-gray-300:focus {
    --tw-ring-color: var(--color-gray-300);
  }

  .focus\:ring-gray-500:focus {
    --tw-ring-color: var(--color-gray-500);
  }

  .focus\:ring-gray-950:focus {
    --tw-ring-color: var(--color-gray-950);
  }

  .focus\:ring-primary:focus {
    --tw-ring-color: var(--color-primary);
  }

  .focus\:ring-ring:focus {
    --tw-ring-color: var(--color-ring);
  }

  .focus\:ring-offset-2:focus {
    --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);
  }

  .focus\:outline-hidden:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (forced-colors: active) {
    .focus\:outline-hidden:focus {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }

  .focus\:outline-none:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  .focus-visible\:border-blue-400:focus-visible {
    border-color: var(--color-blue-400);
  }

  .focus-visible\:border-primary:focus-visible {
    border-color: var(--color-primary);
  }

  .focus-visible\:ring-1:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .focus-visible\:ring-gray-400:focus-visible {
    --tw-ring-color: var(--color-gray-400);
  }

  .focus-visible\:outline-hidden:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (forced-colors: active) {
    .focus-visible\:outline-hidden:focus-visible {
      outline-offset: 2px;
      outline: 2px solid #0000;
    }
  }

  .focus-visible\:outline-none:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  .active\:scale-95:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }

  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }

  .disabled\:bg-gray-100:disabled {
    background-color: var(--color-gray-100);
  }

  .disabled\:bg-gray-300:disabled {
    background-color: var(--color-gray-300);
  }

  .disabled\:text-gray-300:disabled {
    color: var(--color-gray-300);
  }

  .disabled\:text-gray-500:disabled {
    color: var(--color-gray-500);
  }

  .disabled\:opacity-40:disabled {
    opacity: var(--opacity-40);
  }

  .disabled\:opacity-50:disabled {
    opacity: var(--opacity-50);
  }

  @media (hover: hover) {
    .disabled\:hover\:bg-gray-50:disabled:hover {
      background-color: var(--color-gray-50);
    }

    .disabled\:hover\:bg-gray-300:disabled:hover {
      background-color: var(--color-gray-300);
    }

    .disabled\:hover\:shadow-none:disabled:hover {
      --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);
    }
  }

  .aria-selected\:bg-accent[aria-selected="true"], .aria-selected\:bg-accent\/50[aria-selected="true"] {
    background-color: var(--color-accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .aria-selected\:bg-accent\/50[aria-selected="true"] {
      background-color: color-mix(in oklab, var(--color-accent) var(--opacity-50), transparent);
    }
  }

  .aria-selected\:text-accent-foreground[aria-selected="true"] {
    color: var(--color-accent-foreground);
  }

  .aria-selected\:text-muted-foreground[aria-selected="true"] {
    color: var(--color-muted-foreground);
  }

  .aria-selected\:opacity-100[aria-selected="true"] {
    opacity: var(--opacity-100);
  }

  .data-disabled\:pointer-events-none[data-disabled] {
    pointer-events: none;
  }

  .data-disabled\:opacity-50[data-disabled] {
    opacity: var(--opacity-50);
  }

  .data-placeholder\:text-muted-foreground[data-placeholder] {
    color: var(--color-muted-foreground);
  }

  .data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
    --tw-translate-y: var(--spacing-1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[side\=left\]\:-translate-x-1[data-side="left"] {
    --tw-translate-x: calc(var(--spacing-1) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[side\=right\]\:translate-x-1[data-side="right"] {
    --tw-translate-x: var(--spacing-1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[side\=top\]\:-translate-y-1[data-side="top"] {
    --tw-translate-y: calc(var(--spacing-1) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[state\=active\]\:bg-background[data-state="active"] {
    background-color: var(--color-background);
  }

  .data-\[state\=active\]\:text-foreground[data-state="active"] {
    color: var(--color-foreground);
  }

  .data-\[state\=active\]\:shadow-sm[data-state="active"] {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, #0000001a), 0 1px 2px -1px var(--tw-shadow-color, #0000001a);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .data-\[state\=checked\]\:translate-x-5[data-state="checked"] {
    --tw-translate-x: var(--spacing-5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[state\=checked\]\:bg-primary[data-state="checked"] {
    background-color: var(--color-primary);
  }

  .data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] {
    color: var(--color-primary-foreground);
  }

  .data-\[state\=closed\]\:duration-300[data-state="closed"] {
    --tw-duration: .3s;
    transition-duration: .3s;
  }

  .data-\[state\=open\]\:bg-accent[data-state="open"] {
    background-color: var(--color-accent);
  }

  .data-\[state\=open\]\:bg-gray-100[data-state="open"] {
    background-color: var(--color-gray-100);
  }

  .data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
    color: var(--color-muted-foreground);
  }

  .data-\[state\=open\]\:duration-500[data-state="open"] {
    --tw-duration: .5s;
    transition-duration: .5s;
  }

  .data-\[state\=selected\]\:bg-muted[data-state="selected"] {
    background-color: var(--color-muted);
  }

  .data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
    background-color: var(--color-input);
  }

  @media not all and (min-width: 1400px) {
    .max-3xl\:ml-auto {
      margin-left: auto;
    }
  }

  @media not all and (min-width: 48rem) {
    .max-md\:hidden {
      display: none;
    }
  }

  @media not all and (min-width: 40rem) {
    .max-sm\:hidden {
      display: none;
    }
  }

  @media (min-width: 40rem) {
    .sm\:mt-0 {
      margin-top: calc(var(--spacing) * 0);
    }

    .sm\:block {
      display: block;
    }

    .sm\:w-auto {
      width: auto;
    }

    .sm\:max-w-2xl {
      max-width: var(--container-2xl);
    }

    .sm\:max-w-4xl {
      max-width: var(--container-4xl);
    }

    .sm\:max-w-\[525px\] {
      max-width: 525px;
    }

    .sm\:max-w-\[600px\] {
      max-width: 600px;
    }

    .sm\:max-w-\[680px\] {
      max-width: 680px;
    }

    .sm\:max-w-md {
      max-width: var(--container-md);
    }

    .sm\:max-w-sm {
      max-width: var(--container-sm);
    }

    .sm\:flex-row {
      flex-direction: row;
    }

    .sm\:items-center {
      align-items: center;
    }

    .sm\:justify-between {
      justify-content: space-between;
    }

    .sm\:justify-end {
      justify-content: flex-end;
    }

    :where(.sm\:space-y-0 > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)));
    }

    :where(.sm\:space-x-2 > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(var(--spacing-2) * var(--tw-space-x-reverse));
      margin-inline-end: calc(var(--spacing-2) * calc(1 - var(--tw-space-x-reverse)));
    }

    :where(.sm\:space-x-4 > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(var(--spacing-4) * var(--tw-space-x-reverse));
      margin-inline-end: calc(var(--spacing-4) * calc(1 - var(--tw-space-x-reverse)));
    }

    .sm\:px-4 {
      padding-inline: var(--spacing-4);
    }

    .sm\:text-left {
      text-align: left;
    }
  }

  @media (min-width: 48rem) {
    .md\:sticky {
      position: sticky;
    }

    .md\:top-0 {
      top: calc(var(--spacing) * 0);
    }

    .md\:block {
      display: block;
    }

    .md\:flex {
      display: flex;
    }

    .md\:grid {
      display: grid;
    }

    .md\:max-h-\[60vh\] {
      max-height: 60vh;
    }

    .md\:w-64 {
      width: calc(var(--spacing) * 64);
    }

    .md\:w-\[368px\] {
      width: 368px;
    }

    .md\:w-auto {
      width: auto;
    }

    .md\:w-full {
      width: 100%;
    }

    .md\:max-w-3xl {
      max-width: var(--container-3xl);
    }

    .md\:max-w-full {
      max-width: 100%;
    }

    .md\:grid-cols-1 {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .md\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .md\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .md\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .md\:grid-cols-\[minmax\(0\,1fr\)_minmax\(220px\,280px\)\] {
      grid-template-columns: minmax(0, 1fr) minmax(220px, 280px);
    }

    .md\:flex-row {
      flex-direction: row;
    }

    .md\:items-center {
      align-items: center;
    }

    .md\:items-start {
      align-items: flex-start;
    }

    .md\:justify-between {
      justify-content: space-between;
    }

    .md\:gap-6 {
      gap: var(--spacing-6);
    }

    :where(.md\:space-y-0 > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0) * calc(1 - var(--tw-space-y-reverse)));
    }

    .md\:self-start {
      align-self: flex-start;
    }

    .md\:p-6 {
      padding: var(--spacing-6);
    }

    .md\:px-6 {
      padding-inline: var(--spacing-6);
    }

    .md\:text-right {
      text-align: right;
    }

    .md\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }

  @media (min-width: 64rem) {
    .lg\:col-span-2 {
      grid-column: span 2 / span 2;
    }

    .lg\:inline {
      display: inline;
    }

    .lg\:max-w-4xl {
      max-width: var(--container-4xl);
    }

    .lg\:min-w-\[90px\] {
      min-width: 90px;
    }

    .lg\:min-w-\[140px\] {
      min-width: 140px;
    }

    .lg\:min-w-\[200px\] {
      min-width: 200px;
    }

    .lg\:grid-cols-1 {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .lg\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .lg\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .lg\:gap-1 {
      gap: var(--spacing-1);
    }
  }

  @media (min-width: 80rem) {
    .xl\:max-w-5xl {
      max-width: var(--container-5xl);
    }
  }

  @media (min-width: 96rem) {
    .\32 xl\:max-w-\[1400px\] {
      max-width: 1400px;
    }
  }

  .dark\:border-amber-800:is(.dark *) {
    border-color: var(--color-amber-800);
  }

  .dark\:border-destructive:is(.dark *) {
    border-color: var(--color-destructive);
  }

  .dark\:border-red-800:is(.dark *) {
    border-color: var(--color-red-800);
  }

  .dark\:border-red-900:is(.dark *) {
    border-color: var(--color-red-900);
  }

  .dark\:bg-amber-950:is(.dark *) {
    background-color: var(--color-amber-950);
  }

  .dark\:bg-red-900:is(.dark *) {
    background-color: var(--color-red-900);
  }

  .dark\:bg-red-950:is(.dark *) {
    background-color: var(--color-red-950);
  }

  .dark\:text-amber-200:is(.dark *) {
    color: var(--color-amber-200);
  }

  .dark\:text-green-400:is(.dark *) {
    color: var(--color-green-400);
  }

  .dark\:text-red-200:is(.dark *) {
    color: var(--color-red-200);
  }

  .dark\:text-red-300:is(.dark *) {
    color: var(--color-red-300);
  }

  .dark\:text-red-400:is(.dark *) {
    color: var(--color-red-400);
  }

  .dark\:text-yellow-400:is(.dark *) {
    color: var(--color-yellow-400);
  }

  .\[\&_code\]\:rounded code {
    border-radius: .25rem;
  }

  .\[\&_code\]\:bg-muted code {
    background-color: var(--color-muted);
  }

  .\[\&_code\]\:px-1 code {
    padding-inline: var(--spacing-1);
  }

  .\[\&_code\]\:px-1\.5 code {
    padding-inline: calc(var(--spacing) * 1.5);
  }

  .\[\&_code\]\:py-0\.5 code {
    padding-block: var(--spacing-0_5);
  }

  .\[\&_code\]\:font-mono code {
    font-family: var(--font-mono);
  }

  .\[\&_code\]\:text-xs code {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .\[\&_code\]\:text-\[10px\] code {
    font-size: 10px;
  }

  .\[\&_code\]\:text-foreground\/80 code {
    color: var(--color-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .\[\&_code\]\:text-foreground\/80 code {
      color: color-mix(in oklab, var(--color-foreground) var(--opacity-80), transparent);
    }
  }

  .\[\&_code\]\:text-foreground\/90 code {
    color: var(--color-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .\[\&_code\]\:text-foreground\/90 code {
      color: color-mix(in oklab, var(--color-foreground) var(--opacity-90), transparent);
    }
  }

  .\[\&_p\]\:leading-relaxed p {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .\[\&_p\]\:leading-snug p {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }

  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }

  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }

  .\[\&_tr\]\:border-b tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  .\[\&_tr\:last-child\]\:border-0 tr:last-child {
    border-style: var(--tw-border-style);
    border-width: 0;
  }

  .\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker {
    display: none;
  }

  .\[\&\:\:marker\]\:hidden::marker {
    display: none;
  }

  .\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]) {
    background-color: var(--color-accent);
  }

  .first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:first-child:has([aria-selected]) {
    border-top-left-radius: var(--radius-md);
    border-bottom-left-radius: var(--radius-md);
  }

  .last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:last-child:has([aria-selected]) {
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
  }

  .\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside) {
    background-color: var(--color-accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside) {
      background-color: color-mix(in oklab, var(--color-accent) var(--opacity-50), transparent);
    }
  }

  .\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end) {
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
  }

  .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
    padding-right: calc(var(--spacing) * 0);
  }

  .\[\&\>\*\]\:m-0 > * {
    margin: calc(var(--spacing) * 0);
  }

  .\[\&\>\*\]\:my-0 > * {
    margin-block: calc(var(--spacing) * 0);
  }

  .\[\&\>\*\]\:break-words > * {
    overflow-wrap: break-word;
  }

  .\[\&\>\*\]\:text-current > * {
    color: currentColor;
  }

  .\[\&\>\*\:first-child\]\:mt-0 > :first-child {
    margin-top: calc(var(--spacing) * 0);
  }

  .\[\&\>\*\:last-child\]\:mb-0 > :last-child {
    margin-bottom: calc(var(--spacing) * 0);
  }

  .\[\&\>button\]\:hidden > button {
    display: none;
  }

  .\[\&\>pre\]\:m-0 > pre {
    margin: calc(var(--spacing) * 0);
  }

  .\[\&\>pre\]\:bg-transparent > pre {
    background-color: #0000;
  }

  .\[\&\>pre\]\:p-4 > pre {
    padding: var(--spacing-4);
  }

  .\[\&\>pre\]\:leading-6 > pre {
    --tw-leading: var(--spacing-6);
    line-height: var(--spacing-6);
  }

  .\[\&\>span\]\:line-clamp-1 > span {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
  }

  .\[\&\>svg\]\:absolute > svg {
    position: absolute;
  }

  .\[\&\>svg\]\:top-4 > svg {
    top: var(--spacing-4);
  }

  .\[\&\>svg\]\:left-4 > svg {
    left: var(--spacing-4);
  }

  .\[\&\>svg\]\:text-destructive > svg {
    color: var(--color-destructive);
  }

  .\[\&\>svg\]\:text-foreground > svg {
    color: var(--color-foreground);
  }

  .\[\&\>svg\+div\]\:translate-y-\[-3px\] > svg + div {
    --tw-translate-y: -3px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .\[\&\>svg\~\*\]\:pl-7 > svg ~ * {
    padding-left: calc(var(--spacing) * 7);
  }

  .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0;
  }

  .font-kode {
    font-family: Kode Mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace !important;
  }

  .no-scrollbar::-webkit-scrollbar {
    display: none;
  }

  .no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}

@font-face {
  font-family: PP Mori;
  src: url("/assets/fonts/PPMori-VariableVF.woff2") format("woff2-variations"), url("/assets/fonts/PPMori-VariableVF.woff") format("woff-variations");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: SF Mono;
  src: url("/assets/fonts/SF-Mono-Regular.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Kode Mono;
  src: url("/assets/fonts/KodeMono-VariableFont_wght.ttf") format("truetype");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-primary: "PP Mori", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-code: "SF Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  --font-kode: "Kode Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

html, body {
  width: 100%;
  height: 100%;
  font-family: var(--font-primary);
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

#root {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: none;
}

::-webkit-scrollbar-thumb {
  background: #0003;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #0000004d;
}

* {
  scrollbar-width: thin;
  scrollbar-color: #0003 transparent;
}

@keyframes todo-enter {
  0% {
    opacity: 0;
    transform: translateY(6px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes todo-check-pop {
  0% {
    transform: scale(.9);
  }

  60% {
    transform: scale(1.08);
  }

  100% {
    transform: scale(1);
  }
}

.todo-item {
  animation: .22s ease-out both todo-enter;
}

.todo-text {
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: 0;
  background-repeat: no-repeat;
  background-size: 0% 2px;
  transition: background-size .24s ease-in-out, color .3s;
  display: inline;
}

.todo-text[data-done="true"] {
  background-size: 100% 2px;
}

.todo-check[data-done="true"] {
  animation: .2s ease-out todo-check-pop;
}

@media (prefers-reduced-motion: reduce) {
  .todo-item {
    animation: none !important;
  }

  .todo-text {
    background-size: 100% 2px;
    transition: none !important;
  }

  .todo-check[data-done="true"] {
    animation: none !important;
  }

  .strike-line {
    transition: none !important;
    transform: scaleX(1) !important;
  }
}

.strike-line {
  transform-origin: 0;
  opacity: .8;
  background-color: currentColor;
  height: 2px;
  transition: transform .24s ease-in-out;
  position: absolute;
  transform: scaleX(0);
}

.strike-line-show {
  transform: scaleX(1);
}

.diff-line-content, .diff-line-num {
  transition: background-color .15s ease-out;
}

.highlight {
  background-color: #ffeb3b4d !important;
}

.added.highlight {
  background-color: #c3ff3b36 !important;
}

.deleted.highlight {
  background-color: #ffb23b52 !important;
}

.diff-line-num.highlight {
  background-color: #ffeb3b80 !important;
}

.diff-line-num.deleted.highlight {
  background-color: #ffb23b80 !important;
}

.diff-line-num.added.highlight {
  background-color: #c3ff3b61 !important;
}

tr.line-selected, tr.line-selected td {
  background-color: #3b82f626 !important;
}

.diff-container {
  -webkit-user-select: none;
  user-select: none;
}

.diff-container-scroll {
  max-height: 600px;
  overflow: auto;
}

pre, code, kbd, samp, var, .font-mono {
  font-feature-settings: "kern" 1, "liga" 0, "calt" 0;
  font-variant-ligatures: none;
  font-family: var(--font-code) !important;
}

:not(pre) > code {
  background-color: #0000000d;
  border-radius: .25rem;
  padding: .125rem .25rem;
  font-size: .875em;
  font-weight: 500;
  font-family: var(--font-code) !important;
}

.dark :not(pre) > code {
  background-color: #ffffff1a;
}

pre code {
  font-size: .875rem;
  line-height: 1.5;
  font-family: var(--font-code) !important;
}

.markdown-content pre, .markdown-content code, .markdown-content kbd, .markdown-content samp, .markdown-content var {
  font-family: var(--font-code) !important;
}

.markdown-content pre {
  margin: 0;
  box-shadow: none !important;
  background-color: #0000 !important;
  border: none !important;
}

.markdown-content pre code {
  background-color: #0000 !important;
}

.react-syntax-highlighter, .react-syntax-highlighter code, .prose pre, .prose code, .prose kbd, .prose samp, .prose var, .diff-container pre, .diff-container code, .diff-view pre, .diff-view code, .diff-line-content, .diff-line-num, .code-block, .syntax-highlight, .diff-content, [data-language] {
  font-family: var(--font-code) !important;
}

@media (max-width: 640px) {
  pre code {
    font-size: .8125rem;
  }
}

@media print {
  pre, code, kbd, samp, var {
    font-family: Courier New, monospace !important;
  }
}

.prose code:before, .prose code:after, .prose-sm code:before, .prose-sm code:after {
  content: none !important;
  display: none !important;
}

.tiptap-markdown-container, .tiptap-markdown-renderer, .ProseMirror {
  overflow-wrap: break-word;
  word-break: break-word;
  width: 100%;
  max-width: 100%;
}

.prose, .prose-sm, .prose-xs {
  overflow-wrap: break-word;
  word-break: break-word;
  max-width: 100% !important;
}

.prose pre, .prose-sm pre, .prose-xs pre, .ProseMirror pre {
  white-space: pre-wrap;
  word-break: break-word;
  max-width: 100%;
  overflow-x: auto;
}

.prose table, .prose-sm table, .prose-xs table, .ProseMirror table {
  max-width: 100%;
  display: block;
  overflow-x: auto;
}

@keyframes slideInFromRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideOutToRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}

@keyframes slideInFromRightFast {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideOutToRightFast {
  0% {
    opacity: 1;
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pulseScale {
  0%, 100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.05);
  }
}

@keyframes buildingBackgroundPulse {
  0%, 100% {
    background-color: #fce6ff;
  }

  50% {
    background-color: #c4f7ff;
  }
}

@keyframes fadeInGradient {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes slideUp {
  0% {
    transform: translateY(4px);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes slideUpFromBottom {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes typewriterSlideUp {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideInFromLeft {
  0% {
    opacity: 0;
    transform: translateX(-50px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInFromRightPanel {
  0% {
    opacity: 0;
    transform: translateX(50px);
  }

  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideUpCard {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false
}

@property --tw-tracking {
  syntax: "*";
  inherits: false
}

@property --tw-ordinal {
  syntax: "*";
  inherits: false
}

@property --tw-slashed-zero {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-figure {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false
}

@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-blur {
  syntax: "*";
  inherits: false
}

@property --tw-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-invert {
  syntax: "*";
  inherits: false
}

@property --tw-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false
}

@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false
}

@property --tw-duration {
  syntax: "*";
  inherits: false
}

@property --tw-ease {
  syntax: "*";
  inherits: false
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes ping {
  75%, 100% {
    opacity: 0;
    transform: scale(2);
  }
}

@keyframes pulse {
  50% {
    opacity: .5;
  }
}
