:root {
  /****************** 
  Basics
  ******************/
  overflow-wrap: break-word;
  /* iOS WebKit only honors the -webkit- prefixed form */
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /****************** 
  Colors variables
  ******************/
  /* Gray alpha (light mode) */
  --tt-gray-light-a-50: rgba(56, 56, 56, 0.04);
  --tt-gray-light-a-100: rgba(15, 22, 36, 0.05);
  --tt-gray-light-a-200: rgba(37, 39, 45, 0.1);
  --tt-gray-light-a-300: rgba(47, 50, 55, 0.2);
  --tt-gray-light-a-400: rgba(40, 44, 51, 0.42);
  --tt-gray-light-a-500: rgba(52, 55, 60, 0.64);
  --tt-gray-light-a-600: rgba(36, 39, 46, 0.78);
  --tt-gray-light-a-700: rgba(35, 37, 42, 0.87);
  --tt-gray-light-a-800: rgba(30, 32, 36, 0.95);
  --tt-gray-light-a-900: rgba(29, 30, 32, 0.98);
  /* Gray (light mode) */
  --tt-gray-light-50: rgba(250, 250, 250, 1);
  --tt-gray-light-100: rgba(244, 244, 245, 1);
  --tt-gray-light-200: rgba(234, 234, 235, 1);
  --tt-gray-light-300: rgba(213, 214, 215, 1);
  --tt-gray-light-400: rgba(166, 167, 171, 1);
  --tt-gray-light-500: rgba(125, 127, 130, 1);
  --tt-gray-light-600: rgba(83, 86, 90, 1);
  --tt-gray-light-700: rgba(64, 65, 69, 1);
  --tt-gray-light-800: rgba(44, 45, 48, 1);
  --tt-gray-light-900: rgba(34, 35, 37, 1);
  /* Gray alpha (dark mode) */
  --tt-gray-dark-a-50: rgba(232, 232, 253, 0.05);
  --tt-gray-dark-a-100: rgba(231, 231, 243, 0.07);
  --tt-gray-dark-a-200: rgba(238, 238, 246, 0.11);
  --tt-gray-dark-a-300: rgba(239, 239, 245, 0.22);
  --tt-gray-dark-a-400: rgba(244, 244, 255, 0.37);
  --tt-gray-dark-a-500: rgba(236, 238, 253, 0.5);
  --tt-gray-dark-a-600: rgba(247, 247, 253, 0.64);
  --tt-gray-dark-a-700: rgba(251, 251, 254, 0.75);
  --tt-gray-dark-a-800: rgba(253, 253, 253, 0.88);
  --tt-gray-dark-a-900: rgba(255, 255, 255, 0.96);
  /* Gray (dark mode) */
  --tt-gray-dark-50: rgba(25, 25, 26, 1);
  --tt-gray-dark-100: rgba(32, 32, 34, 1);
  --tt-gray-dark-200: rgba(45, 45, 47, 1);
  --tt-gray-dark-300: rgba(70, 70, 73, 1);
  --tt-gray-dark-400: rgba(99, 99, 105, 1);
  --tt-gray-dark-500: rgba(124, 124, 131, 1);
  --tt-gray-dark-600: rgba(163, 163, 168, 1);
  --tt-gray-dark-700: rgba(192, 192, 195, 1);
  --tt-gray-dark-800: rgba(224, 224, 225, 1);
  --tt-gray-dark-900: rgba(245, 245, 245, 1);
  /* Brand colors */
  --tt-brand-color-50: rgba(239, 238, 255, 1);
  --tt-brand-color-100: rgba(222, 219, 255, 1);
  --tt-brand-color-200: rgba(195, 189, 255, 1);
  --tt-brand-color-300: rgba(157, 138, 255, 1);
  --tt-brand-color-400: rgba(122, 82, 255, 1);
  --tt-brand-color-500: rgba(98, 41, 255, 1);
  --tt-brand-color-600: rgba(84, 0, 229, 1);
  --tt-brand-color-700: rgba(75, 0, 204, 1);
  --tt-brand-color-800: rgba(56, 0, 153, 1);
  --tt-brand-color-900: rgba(43, 25, 102, 1);
  --tt-brand-color-950: hsla(257, 100%, 9%, 1);
  /* Green */
  --tt-color-green-inc-5: hsla(129, 100%, 97%, 1);
  --tt-color-green-inc-4: hsla(129, 100%, 92%, 1);
  --tt-color-green-inc-3: hsla(131, 100%, 86%, 1);
  --tt-color-green-inc-2: hsla(133, 98%, 78%, 1);
  --tt-color-green-inc-1: hsla(137, 99%, 70%, 1);
  --tt-color-green-base: hsla(147, 99%, 50%, 1);
  --tt-color-green-dec-1: hsla(147, 97%, 41%, 1);
  --tt-color-green-dec-2: hsla(146, 98%, 32%, 1);
  --tt-color-green-dec-3: hsla(146, 100%, 24%, 1);
  --tt-color-green-dec-4: hsla(144, 100%, 16%, 1);
  --tt-color-green-dec-5: hsla(140, 100%, 9%, 1);
  /* Yellow */
  --tt-color-yellow-inc-5: hsla(50, 100%, 97%, 1);
  --tt-color-yellow-inc-4: hsla(50, 100%, 91%, 1);
  --tt-color-yellow-inc-3: hsla(50, 100%, 84%, 1);
  --tt-color-yellow-inc-2: hsla(50, 100%, 77%, 1);
  --tt-color-yellow-inc-1: hsla(50, 100%, 68%, 1);
  --tt-color-yellow-base: hsla(52, 100%, 50%, 1);
  --tt-color-yellow-dec-1: hsla(52, 100%, 41%, 1);
  --tt-color-yellow-dec-2: hsla(52, 100%, 32%, 1);
  --tt-color-yellow-dec-3: hsla(52, 100%, 24%, 1);
  --tt-color-yellow-dec-4: hsla(51, 100%, 16%, 1);
  --tt-color-yellow-dec-5: hsla(50, 100%, 9%, 1);
  /* Red */
  --tt-color-red-inc-5: hsla(11, 100%, 96%, 1);
  --tt-color-red-inc-4: hsla(11, 100%, 88%, 1);
  --tt-color-red-inc-3: hsla(10, 100%, 80%, 1);
  --tt-color-red-inc-2: hsla(9, 100%, 73%, 1);
  --tt-color-red-inc-1: hsla(7, 100%, 64%, 1);
  --tt-color-red-base: hsla(7, 100%, 54%, 1);
  --tt-color-red-dec-1: hsla(7, 100%, 41%, 1);
  --tt-color-red-dec-2: hsla(5, 100%, 32%, 1);
  --tt-color-red-dec-3: hsla(4, 100%, 24%, 1);
  --tt-color-red-dec-4: hsla(3, 100%, 16%, 1);
  --tt-color-red-dec-5: hsla(1, 100%, 9%, 1);
  /* Basic colors */
  --white: rgba(255, 255, 255, 1);
  --black: rgba(14, 14, 17, 1);
  --transparent: rgba(255, 255, 255, 0);
  /****************** 
  Shadow variables
  ******************/
  /* Shadows Light */
  --tt-shadow-elevated-md:
    0px 16px 48px 0px rgba(17, 24, 39, 0.04),
    0px 12px 24px 0px rgba(17, 24, 39, 0.04),
    0px 6px 8px 0px rgba(17, 24, 39, 0.02),
    0px 2px 3px 0px rgba(17, 24, 39, 0.02);
  /************************************************** 
       Radius variables 
    **************************************************/
  --tt-radius-xxs: 0.125rem; /* 2px */
  --tt-radius-xs: 0.25rem; /* 4px */
  --tt-radius-sm: 0.375rem; /* 6px */
  --tt-radius-md: 0.5rem; /* 8px */
  --tt-radius-lg: 0.75rem; /* 12px */
  --tt-radius-xl: 1rem; /* 16px */
  /************************************************** 
       Transition variables 
    **************************************************/
  --tt-transition-duration-short: 0.1s;
  --tt-transition-duration-default: 0.2s;
  --tt-transition-duration-long: 0.64s;
  --tt-transition-easing-default: cubic-bezier(0.46, 0.03, 0.52, 0.96);
  --tt-transition-easing-cubic: cubic-bezier(0.65, 0.05, 0.36, 1);
  --tt-transition-easing-quart: cubic-bezier(0.77, 0, 0.18, 1);
  --tt-transition-easing-circ: cubic-bezier(0.79, 0.14, 0.15, 0.86);
  --tt-transition-easing-back: cubic-bezier(0.68, -0.55, 0.27, 1.55);
  /****************** 
  Contrast variables
  ******************/
  --tt-accent-contrast: 8%;
  --tt-destructive-contrast: 8%;
  --tt-foreground-contrast: 8%;
}
:root,
:root *,
:root ::before,
:root ::after {
  box-sizing: border-box;
  transition: none var(--tt-transition-duration-default) var(--tt-transition-easing-default);
}

:root {
  /************************************************** 
      Global colors 
  **************************************************/
  /* Global colors - Light mode */
  --tt-bg-color: var(--white);
  --tt-border-color: var(--tt-gray-light-a-200);
  --tt-border-color-tint: var(--tt-gray-light-a-100);
  --tt-sidebar-bg-color: var(--tt-gray-light-100);
  --tt-scrollbar-color: var(--tt-gray-light-a-200);
  --tt-cursor-color: var(--tt-brand-color-500);
  /* Derived from the brand scale (brand-300 tint at 20%, matching the former
     hardcoded rgba(157,138,255,0.2)) so the text-selection highlight follows a
     host-supplied brand colour when the --tt-brand-color-* scale is overridden. */
  --tt-selection-color: color-mix(in srgb, var(--tt-brand-color-300) 20%, transparent);
  --tt-card-bg-color: var(--white);
  --tt-card-border-color: var(--tt-gray-light-a-100);
}

/* Global colors - Dark mode */
.dark {
  --tt-bg-color: var(--black);
  --tt-border-color: var(--tt-gray-dark-a-200);
  --tt-border-color-tint: var(--tt-gray-dark-a-100);
  --tt-sidebar-bg-color: var(--tt-gray-dark-100);
  --tt-scrollbar-color: var(--tt-gray-dark-a-200);
  --tt-cursor-color: var(--tt-brand-color-400);
  /* Dark-mode selection: brand-400 tint at 20% (matches former
     rgba(122,82,255,0.2)), derived so it follows a host brand override. */
  --tt-selection-color: color-mix(in srgb, var(--tt-brand-color-400) 20%, transparent);
  --tt-card-bg-color: var(--tt-gray-dark-50);
  --tt-card-border-color: var(--tt-gray-dark-a-50);
  --tt-shadow-elevated-md:
    0px 16px 48px 0px rgba(0, 0, 0, 0.5), 0px 12px 24px 0px rgba(0, 0, 0, 0.24),
    0px 6px 8px 0px rgba(0, 0, 0, 0.22), 0px 2px 3px 0px rgba(0, 0, 0, 0.12);
}

/* Text colors */
:root {
  --tt-color-text-gray: hsl(45, 2%, 46%);
  --tt-color-text-brown: hsl(19, 31%, 47%);
  --tt-color-text-orange: hsl(30, 89%, 45%);
  --tt-color-text-yellow: hsl(38, 62%, 49%);
  --tt-color-text-green: hsl(148, 32%, 39%);
  --tt-color-text-blue: hsl(202, 54%, 43%);
  --tt-color-text-purple: hsl(274, 32%, 54%);
  --tt-color-text-pink: hsl(328, 49%, 53%);
  --tt-color-text-red: hsl(2, 62%, 55%);
  --tt-color-text-gray-contrast: hsla(39, 26%, 26%, 0.15);
  --tt-color-text-brown-contrast: hsla(18, 43%, 69%, 0.35);
  --tt-color-text-orange-contrast: hsla(24, 73%, 55%, 0.27);
  --tt-color-text-yellow-contrast: hsla(44, 82%, 59%, 0.39);
  --tt-color-text-green-contrast: hsla(126, 29%, 60%, 0.27);
  --tt-color-text-blue-contrast: hsla(202, 54%, 59%, 0.27);
  --tt-color-text-purple-contrast: hsla(274, 37%, 64%, 0.27);
  --tt-color-text-pink-contrast: hsla(331, 60%, 71%, 0.27);
  --tt-color-text-red-contrast: hsla(8, 79%, 79%, 0.4);
}

.dark {
  --tt-color-text-gray: hsl(0, 0%, 61%);
  --tt-color-text-brown: hsl(18, 35%, 58%);
  --tt-color-text-orange: hsl(25, 53%, 53%);
  --tt-color-text-yellow: hsl(36, 54%, 55%);
  --tt-color-text-green: hsl(145, 32%, 47%);
  --tt-color-text-blue: hsl(202, 64%, 52%);
  --tt-color-text-purple: hsl(270, 55%, 62%);
  --tt-color-text-pink: hsl(329, 57%, 58%);
  --tt-color-text-red: hsl(1, 69%, 60%);
  --tt-color-text-gray-contrast: hsla(0, 0%, 100%, 0.09);
  --tt-color-text-brown-contrast: hsla(17, 45%, 50%, 0.25);
  --tt-color-text-orange-contrast: hsla(27, 82%, 53%, 0.2);
  --tt-color-text-yellow-contrast: hsla(35, 49%, 47%, 0.2);
  --tt-color-text-green-contrast: hsla(151, 55%, 39%, 0.2);
  --tt-color-text-blue-contrast: hsla(202, 54%, 43%, 0.2);
  --tt-color-text-purple-contrast: hsla(271, 56%, 60%, 0.18);
  --tt-color-text-pink-contrast: hsla(331, 67%, 58%, 0.22);
  --tt-color-text-red-contrast: hsla(0, 67%, 60%, 0.25);
}

/* Highlight colors */
:root {
  --tt-color-highlight-yellow: #fef9c3;
  --tt-color-highlight-green: #dcfce7;
  --tt-color-highlight-blue: #e0f2fe;
  --tt-color-highlight-purple: #f3e8ff;
  --tt-color-highlight-red: #ffe4e6;
  --tt-color-highlight-gray: rgb(248, 248, 247);
  --tt-color-highlight-brown: rgb(244, 238, 238);
  --tt-color-highlight-orange: rgb(251, 236, 221);
  --tt-color-highlight-pink: rgb(252, 241, 246);
  --tt-color-highlight-yellow-contrast: #fbe604;
  --tt-color-highlight-green-contrast: #c7fad8;
  --tt-color-highlight-blue-contrast: #ceeafd;
  --tt-color-highlight-purple-contrast: #e4ccff;
  --tt-color-highlight-red-contrast: #ffccd0;
  --tt-color-highlight-gray-contrast: rgba(84, 72, 49, 0.15);
  --tt-color-highlight-brown-contrast: rgba(210, 162, 141, 0.35);
  --tt-color-highlight-orange-contrast: rgba(224, 124, 57, 0.27);
  --tt-color-highlight-pink-contrast: rgba(225, 136, 179, 0.27);
}

.dark {
  --tt-color-highlight-yellow: #6b6524;
  --tt-color-highlight-green: #509568;
  --tt-color-highlight-blue: #6e92aa;
  --tt-color-highlight-purple: #583e74;
  --tt-color-highlight-red: #743e42;
  --tt-color-highlight-gray: rgb(47, 47, 47);
  --tt-color-highlight-brown: rgb(74, 50, 40);
  --tt-color-highlight-orange: rgb(92, 59, 35);
  --tt-color-highlight-pink: rgb(78, 44, 60);
  --tt-color-highlight-yellow-contrast: #58531e;
  --tt-color-highlight-green-contrast: #47855d;
  --tt-color-highlight-blue-contrast: #5e86a1;
  --tt-color-highlight-purple-contrast: #4c3564;
  --tt-color-highlight-red-contrast: #643539;
  --tt-color-highlight-gray-contrast: rgba(255, 255, 255, 0.094);
  --tt-color-highlight-brown-contrast: rgba(184, 101, 69, 0.25);
  --tt-color-highlight-orange-contrast: rgba(233, 126, 37, 0.2);
  --tt-color-highlight-pink-contrast: rgba(220, 76, 145, 0.22);
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomIn {
  from {
    transform: scale(0.95);
  }
  to {
    transform: scale(1);
  }
}
@keyframes zoomOut {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0.95);
  }
}
@keyframes zoom {
  0% {
    opacity: 0;
    transform: scale(0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes slideFromTop {
  from {
    transform: translateY(-0.5rem);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes slideFromRight {
  from {
    transform: translateX(0.5rem);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideFromLeft {
  from {
    transform: translateX(-0.5rem);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideFromBottom {
  from {
    transform: translateY(0.5rem);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/* components/bundle/tiptap-node/image-node/image-node-view.scss */
:root {
  --tiptap-image-handle-bg: var(--tt-brand-color-600);
}

.dark {
  --tiptap-image-handle-bg: var(--tt-brand-color-400);
}

.tiptap.ProseMirror .ProseMirror-selectednode .tiptap-image .tiptap-image-container, .tiptap.ProseMirror .tiptap-image[data-selected="true"] .tiptap-image-container {
  outline: .125rem solid #0000;
  outline-color: var(--tt-brand-color-500);
  border-radius: var(--tt-radius-xs, .25rem);
}

.tiptap.ProseMirror .tiptap-image {
  display: flex;
  width: 100%;
  margin: 1.5rem 0;
}

.tiptap.ProseMirror .tiptap-image[data-align="right"] {
  text-align: right;
  justify-content: flex-end;
}

.tiptap.ProseMirror .tiptap-image[data-align="center"] {
  text-align: center;
  justify-content: center;
}

.tiptap.ProseMirror .tiptap-thread > .react-renderer > .tiptap-image {
  margin: 0;
}

.tiptap.ProseMirror .tiptap-image-container {
  cursor: pointer;
  user-select: none;
  display: flex;
  flex-direction: column;
}

.tiptap.ProseMirror .tiptap-image-content {
  display: flex;
  position: relative;
  align-items:  center;
  max-width: 100%;
}

.tiptap.ProseMirror .tiptap-image-img {
  border-radius: var(--tt-radius-xs, .25rem);
  width: 100%;
  height: auto;
}

.tiptap.ProseMirror .tiptap-image-handle {
  position: absolute;
  background-color: var(--tiptap-image-handle-bg);
  cursor: ew-resize;
  z-index: 10;
  border-radius: 1.875rem;
  width: .375rem;
  height: 3rem;
  top: 50%;
  transform: translateY(-50%);
}

.tiptap.ProseMirror .tiptap-image-handle.tiptap-image-handle-left {
  left: 4px;
}

.tiptap.ProseMirror .tiptap-image-handle.tiptap-image-handle-right {
  right: 4px;
}

.tiptap.ProseMirror .tiptap-image-caption {
  cursor: text;
  user-select: text;
  text-align: center;
  white-space: break-spaces;
  word-break: break-word;
  outline: none;
  position: relative;
  width: 100%;
  max-width: 100%;
  margin-top: 1rem;
  font-size: 15px;
}

.tiptap.ProseMirror .tiptap-image-caption[data-visible="false"] {
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  height: 0;
  margin-top: 0;
  line-height: 0;
}

.tiptap.ProseMirror .tiptap-image-caption[data-editable="true"]:has( > [data-node-view-content-react] > .ProseMirror-trailingBreak:only-child):before {
  content: attr(data-placeholder);
  color: #9ca3af;
  pointer-events: none;
  position: absolute;
  left: 0;
  right: 0;
}

.tiptap.ProseMirror .tiptap-image-caption[data-editable="true"]:has( > [data-node-view-content-react]:empty):before {
  content: attr(data-placeholder);
  color: #9ca3af;
  pointer-events: none;
  position: absolute;
  left: 0;
  right: 0;
}

/* components/bundle/tiptap-node/asset-spec-node/asset-spec-node.scss */
.asset-spec-node {
  user-select: none;
  padding: 1rem 0;
}

.asset-spec-node__picker {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  min-width: 14rem;
}

.asset-spec-node__picker-hint {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--tt-color-text-muted, #6b7280);
  font-size: .75rem;
  font-weight: 600;
}

.asset-spec-node__picker-list {
  display: flex;
  list-style: none;
  overflow-y: auto;
  flex-direction: column;
  gap: .25rem;
  max-height: 16rem;
  margin: 0;
  padding: 0;
}

.asset-spec-node__picker-item {
  display: flex;
  border-radius: var(--tt-radius-sm, .375rem);
  background: var(--tt-color-bg, #fff);
  text-align: left;
  cursor: pointer;
  border: 1px solid #0000;
  flex-direction: column;
  align-items:  flex-start;
  gap: .125rem;
  width: 100%;
  padding: .5rem .625rem;
  transition: background .12s, border-color .12s;
}

.asset-spec-node__picker-item:hover {
  border-color: var(--tt-brand-color-500, #3b82f6);
  background: var(--tt-color-bg-muted, #f3f4f6);
  outline: none;
}

.asset-spec-node__picker-item:focus-visible {
  border-color: var(--tt-brand-color-500, #3b82f6);
  background: var(--tt-color-bg-muted, #f3f4f6);
  outline: none;
}

.asset-spec-node__picker-item-title {
  color: var(--tt-color-text, #111827);
  font-size: .875rem;
  font-weight: 500;
}

.asset-spec-node__picker-item-sub {
  color: var(--tt-color-text-muted, #6b7280);
  font-size: .75rem;
}

.asset-spec-node__placeholder {
  display: flex;
  border: 1px dashed var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  background: var(--tt-color-bg-muted, #f9fafb);
  justify-content: center;
  align-items:  center;
  min-height: 12rem;
}

.asset-spec-node__placeholder-text {
  color: var(--tt-color-text-muted, #6b7280);
  font-size: .875rem;
}

.asset-spec-node__skeleton {
  position: relative;
  display: flex;
  border-radius: var(--tt-radius-sm, .375rem);
  background: var(--tt-color-bg-muted, #f3f4f6);
  overflow: hidden;
  justify-content: center;
  align-items:  center;
  min-height: 12rem;
}

.asset-spec-node__skeleton-shimmer {
  position: absolute;
  animation: asset-spec-shimmer 1.5s ease-in-out infinite;
  background: linear-gradient(90deg, #0000 0%, #fff6 50%, #0000 100%);
  inset: 0;
}

.asset-spec-node__image-wrapper {
  display: flex;
  border-radius: var(--tt-radius-sm, .375rem);
  overflow: hidden;
  justify-content: center;
}

.asset-spec-node__image {
  display: block;
  border-radius: var(--tt-radius-sm, .375rem);
  max-width: 100%;
  height: auto;
}

.asset-spec-node.ProseMirror-selectednode {
  outline: 2px solid var(--tt-brand-color-500, #3b82f6);
  outline-offset: 2px;
  border-radius: var(--tt-radius-sm, .375rem);
}

@keyframes asset-spec-shimmer {
  0% {
    transform: translateX(-100%);
  }

  100% {
    transform: translateX(100%);
  }
}

.tiptap-button-icon.asset-spec-node__toolbar-icon {
  width: 1.125rem;
  height: 1.125rem;
}

.asset-spec-node__details {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
}

.tiptap .asset-spec-node__details-table {
  border-collapse: collapse;
  width: auto !important;
}

.tiptap .asset-spec-node__details-table th, .tiptap .asset-spec-node__details-table td {
  font-weight: inherit;
  background: none !important;
  border: 0 !important;
}

.tiptap .asset-spec-node__details-table .asset-spec-node__details-header {
  text-align: left;
  color: var(--tt-color-text, #111827);
  padding: .5rem .75rem;
  font-size: .875rem;
  font-weight: 600;
  background: var(--tt-color-bg-muted, #f9fafb) !important;
}

.tiptap .asset-spec-node__details-table .asset-spec-node__details-label, .tiptap .asset-spec-node__details-table .asset-spec-node__details-value {
  padding: .375rem .75rem;
  font-size: .8125rem;
  border-top: 1px solid var(--tt-color-border, #eceff2) !important;
}

.tiptap .asset-spec-node__details-table .asset-spec-node__details-label {
  color: var(--tt-color-text-muted, #6b7280);
  text-align: left;
}

.tiptap .asset-spec-node__details-table .asset-spec-node__details-value {
  color: var(--tt-color-text, #111827);
  text-align: right;
}

/* components/bundle/tiptap-node/operator-block-node/operator-block-node.scss */
.operator-block-node__inner {
  border: 1px solid var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius, .5rem);
  overflow: hidden;
}

.operator-block-node__header {
  background: var(--tt-color-bg-subtle, #f9fafb);
  border-bottom: 1px solid var(--tt-color-border, #d1d5db);
  padding: .5rem .75rem;
  font-size: .9375rem;
  font-weight: 600;
}

.operator-block-node__table {
  border-collapse: collapse;
  width: 100%;
  font-size: .8125rem;
}

.operator-block-node__row {
  border-bottom: 1px solid var(--tt-color-border-subtle, #f0f0f0);
}

.operator-block-node__label {
  color: var(--tt-color-text-muted, #6b7280);
  white-space: nowrap;
  width: 40%;
  padding: .375rem .75rem;
  font-weight: 500;
}

.operator-block-node__value {
  color: var(--tt-color-text, #111827);
  padding: .375rem .75rem;
}

.operator-block-node__placeholder {
  border: 1px dashed var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius, .5rem);
  color: var(--tt-color-text-muted, #6b7280);
  padding: .75rem 1rem;
  font-size: .8125rem;
}

/* components/bundle/tiptap-node/checklist-node/checklist-node.scss */
.checklist-node {
  margin: 1rem 0;
  font-family: inherit;
  font-size: .875rem;
  line-height: 1.5;
}

.checklist-node__placeholder {
  border: 1px dashed var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  color: var(--tt-color-text-secondary, #6b7280);
  text-align: center;
  background: var(--tt-color-bg-muted, #f9fafb);
  padding: 1rem 1.25rem;
}

.checklist-node__placeholder--loading {
  animation: checklist-pulse 1.5s ease-in-out infinite;
}

.checklist-node__placeholder--error {
  border-color: var(--tt-color-danger, #ef4444);
  color: var(--tt-color-danger, #ef4444);
  background: var(--tt-color-danger-bg, #fef2f2);
}

.checklist-node__table {
  border-collapse: collapse;
  border: 1px solid var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  overflow: hidden;
  width: 100%;
}

.checklist-node__header {
  text-align: left;
  color: var(--tt-color-text, #111827);
  background: var(--tt-color-bg-subtle, #f3f4f6);
  border-bottom: 2px solid var(--tt-color-border, #d1d5db);
  padding: .625rem 1rem;
  font-size: .9375rem;
  font-weight: 600;
}

.checklist-node__column-headers {
  background: var(--tt-color-bg-muted, #f9fafb);
  border-bottom: 1px solid var(--tt-color-border, #d1d5db);
}

.checklist-node__column-headers th {
  text-align: left;
  text-transform: uppercase;
  letter-spacing: .025em;
  color: var(--tt-color-text-secondary, #6b7280);
  padding: .375rem 1rem;
  font-size: .8125rem;
  font-weight: 600;
}

.checklist-node__col-title {
  width: 45%;
}

.checklist-node__col-action {
  width: auto;
}

.checklist-node__row:nth-child(2n) {
  background: var(--tt-color-bg-muted, #f9fafb);
}

.checklist-node__row:not(:last-child) {
  border-bottom: 1px solid var(--tt-color-border-light, #e5e7eb);
}

.checklist-node__item-title {
  color: var(--tt-color-text, #111827);
  padding: .5rem 1rem;
  font-weight: 500;
}

.checklist-node__item-action {
  color: var(--tt-color-text, #111827);
  padding: .5rem 1rem;
}

.checklist-node__empty {
  text-align: center;
  color: var(--tt-color-text-secondary, #6b7280);
  padding: 1rem;
  font-style: italic;
}

.tiptap.ProseMirror .checklist-node {
  outline: 2px solid #0000;
  border-radius: var(--tt-radius-sm, .375rem);
  transition: outline-color .15s;
}

.tiptap.ProseMirror .checklist-node.ProseMirror-selectednode {
  outline-color: var(--tt-brand-color-500, #3b82f6);
}

@keyframes checklist-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

/* components/bundle/tiptap-node/figure-node/figure-node.scss */
.figure-node {
  margin: 1.5rem 0;
}

.figure-node__figure {
  display: flex;
  flex-direction: column;
  align-items:  center;
  gap: .5rem;
  margin: 0;
  padding: 0;
}

.figure-node__image {
  display: block;
  border-radius: var(--tt-radius-xs, .25rem);
  max-width: 100%;
  height: auto;
}

.figure-node__placeholder {
  display: flex;
  background: var(--tt-color-neutral-100, #f5f5f5);
  border: 1px dashed var(--tt-color-neutral-300, #d4d4d4);
  border-radius: var(--tt-radius-xs, .25rem);
  color: var(--tt-color-neutral-500, #737373);
  justify-content: center;
  align-items:  center;
  width: 100%;
  min-height: 120px;
  font-size: .875rem;
  font-style: italic;
}

.figure-node__caption {
  display: flex;
  text-align: center;
  color: var(--tt-color-neutral-700, #404040);
  justify-content: center;
  align-items: baseline;
  gap: 0;
  width: 100%;
  font-size: .875rem;
  line-height: 1.15;
}

.figure-node__caption-number {
  white-space: nowrap;
  font-weight: 600;
}

.figure-node__caption-text {
  cursor: default;
}

.figure-node__caption-text:empty:before {
  content: "";
}

[contenteditable="true"] .figure-node__caption-text {
  cursor: text;
}

.figure-node__caption-input {
  border: none;
  border-bottom: 1px solid var(--tt-brand-color-500, #3b82f6);
  font-size: inherit;
  color: inherit;
  font-family: inherit;
  line-height: inherit;
  outline: none;
  text-align: center;
  background: none;
  min-width: 120px;
  margin: 0;
  padding: 0;
}

.figure-node__caption-input:focus {
  border-bottom-color: var(--tt-brand-color-600, #2563eb);
}

.tiptap.ProseMirror .figure-node.ProseMirror-selectednode {
  outline: 2px solid var(--tt-brand-color-500, #3b82f6);
  border-radius: var(--tt-radius-xs, .25rem);
}

/* components/bundle/tiptap-node/cross-reference-node/cross-reference-node.scss */
.cross-reference-node-wrapper {
  display: inline;
}

.cross-reference-node {
  display: inline;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  cursor: pointer;
}

.cross-reference-node__text {
  color: var(--tt-brand-color-600, #2563eb);
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  transition: color .15s, text-decoration-color .15s;
}

.cross-reference-node:hover .cross-reference-node__text {
  color: var(--tt-brand-color-700, #1d4ed8);
  text-decoration-style: solid;
}

.cross-reference-node__icon {
  font-size: .85em;
  line-height: 1;
}

.cross-reference-node--broken .cross-reference-node__text {
  color: var(--tt-color-danger, #ef4444);
  text-decoration: line-through;
  text-decoration-color: var(--tt-color-danger, #ef4444);
}

.cross-reference-node--broken .cross-reference-node__icon {
  color: var(--tt-color-danger, #ef4444);
}

.cross-reference-node--unavailable .cross-reference-node__text {
  color: var(--tt-color-warning, #f59e0b);
  text-decoration: line-through;
  text-decoration-color: var(--tt-color-warning, #f59e0b);
  font-style: italic;
}

.cross-reference-node--unavailable .cross-reference-node__icon {
  color: var(--tt-color-warning, #f59e0b);
}

.cross-reference-node--empty .cross-reference-node__text {
  color: var(--tt-color-text-tertiary, #9ca3af);
  text-decoration: none;
  font-style: italic;
}

.tiptap.ProseMirror .cross-reference-node-wrapper.ProseMirror-selectednode .cross-reference-node {
  background: var(--tt-brand-color-50, #eff6ff);
  outline: 2px solid var(--tt-brand-color-500, #3b82f6);
  outline-offset: 1px;
  border-radius: 2px;
}

/* components/bundle/tiptap-node/personnel-list-node/personnel-list-node.scss */
.personnel-list-node {
  margin: 1rem 0;
  font-family: inherit;
  font-size: .875rem;
  line-height: 1.5;
}

.personnel-list-node__placeholder {
  border: 1px dashed var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  color: var(--tt-color-text-secondary, #6b7280);
  text-align: center;
  background: var(--tt-color-bg-muted, #f9fafb);
  padding: 1rem 1.25rem;
}

.personnel-list-node__placeholder--loading {
  animation: list-node-pulse 1.5s ease-in-out infinite;
}

.personnel-list-node__placeholder--error {
  border-color: var(--tt-color-danger, #ef4444);
  color: var(--tt-color-danger, #ef4444);
  background: var(--tt-color-danger-bg, #fef2f2);
}

.personnel-list-node__table {
  border-collapse: collapse;
  border: 1px solid var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  overflow: hidden;
  width: 100%;
}

.personnel-list-node__header {
  text-align: left;
  color: var(--tt-color-text, #111827);
  background: var(--tt-color-bg-subtle, #f3f4f6);
  border-bottom: 2px solid var(--tt-color-border, #d1d5db);
  padding: .625rem 1rem;
  font-size: .9375rem;
  font-weight: 600;
}

.personnel-list-node__col-header {
  text-align: left;
  color: var(--tt-color-text, #111827);
  background: var(--tt-color-bg-muted, #f9fafb);
  border-bottom: 1px solid var(--tt-color-border, #d1d5db);
  padding: .5rem 1rem;
  font-weight: 600;
}

.personnel-list-node__row:nth-child(2n) {
  background: var(--tt-color-bg-muted, #f9fafb);
}

.personnel-list-node__row:not(:last-child) {
  border-bottom: 1px solid var(--tt-color-border-light, #e5e7eb);
}

.personnel-list-node__cell {
  color: var(--tt-color-text, #111827);
  padding: .5rem 1rem;
}

.personnel-list-node__empty {
  text-align: center;
  color: var(--tt-color-text-secondary, #6b7280);
  padding: 1rem;
  font-style: italic;
}

.tiptap.ProseMirror .personnel-list-node {
  outline: 2px solid #0000;
  border-radius: var(--tt-radius-sm, .375rem);
  transition: outline-color .15s;
}

.tiptap.ProseMirror .personnel-list-node.ProseMirror-selectednode {
  outline-color: var(--tt-brand-color-500, #3b82f6);
}

@keyframes list-node-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

/* components/bundle/tiptap-node/excalidraw-node/excalidraw-node.scss */
.excalidraw-node {
  margin: 1rem 0;
  font-family: inherit;
  font-size: .875rem;
  line-height: 1.5;
}

.excalidraw-node__placeholder {
  display: flex;
  border: 2px dashed var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  color: var(--tt-color-text-secondary, #6b7280);
  background: var(--tt-color-bg-muted, #f9fafb);
  text-align: center;
  cursor: default;
  user-select: none;
  flex-direction: column;
  justify-content: center;
  align-items:  center;
  gap: .5rem;
  min-height: 120px;
  padding: 2rem 1.25rem;
  transition: border-color .15s, background .15s;
}

.excalidraw-node__placeholder[role="button"] {
  cursor: pointer;
}

.excalidraw-node__placeholder[role="button"]:hover {
  border-color: var(--tt-brand-color-400, #60a5fa);
  background: var(--tt-brand-color-50, #eff6ff);
  color: var(--tt-brand-color-600, #2563eb);
}

.excalidraw-node__placeholder[role="button"]:focus-visible {
  outline: 2px solid var(--tt-brand-color-500, #3b82f6);
  outline-offset: 2px;
}

.excalidraw-node__placeholder-icon {
  font-size: 1.5rem;
}

.excalidraw-node__error {
  color: var(--tt-color-danger, #ef4444);
  background: var(--tt-color-danger-bg, #fef2f2);
  border: 1px solid var(--tt-color-danger, #ef4444);
  border-radius: var(--tt-radius-sm, .375rem);
  margin-bottom: .5rem;
  padding: .5rem .75rem;
  font-size: .8125rem;
}

.excalidraw-node__image-wrapper {
  position: relative;
  display: flex;
  border: 1px solid var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  overflow: hidden;
  background: var(--tt-color-bg, #fff);
  cursor: default;
  justify-content: center;
}

.excalidraw-node__image-wrapper--editable {
  cursor: pointer;
  transition: border-color .15s;
}

.excalidraw-node__image-wrapper--editable:hover {
  border-color: var(--tt-brand-color-400, #60a5fa);
}

.excalidraw-node__image-wrapper--editable:hover .excalidraw-node__edit-overlay {
  opacity: 1;
}

.excalidraw-node__image-wrapper--editable:focus-visible {
  outline: 2px solid var(--tt-brand-color-500, #3b82f6);
  outline-offset: 2px;
}

.excalidraw-node__image {
  display: block;
  object-fit: contain;
  max-width: 100%;
  height: auto;
}

.excalidraw-node__edit-overlay {
  position: absolute;
  display: flex;
  opacity: 0;
  pointer-events: none;
  background: #00000059;
  justify-content: center;
  align-items:  center;
  transition: opacity .2s;
  inset: 0;
}

.excalidraw-node__edit-label {
  color: #fff;
  border-radius: var(--tt-radius-sm, .375rem);
  background: #0009;
  padding: .375rem .75rem;
  font-size: .8125rem;
  font-weight: 500;
}

.excalidraw-node__modal-backdrop {
  position: fixed;
  z-index: 9999;
  display: flex;
  backdrop-filter: blur(2px);
  background: #00000080;
  justify-content: center;
  align-items:  center;
  inset: 0;
}

.excalidraw-node__modal {
  display: flex;
  background: var(--tt-color-bg, #fff);
  overflow: hidden;
  border-radius: .5rem;
  flex-direction: column;
  width: 95vw;
  max-width: 1400px;
  height: 90vh;
  box-shadow: 0 20px 60px #0000004d;
}

.excalidraw-node__modal-toolbar {
  display: flex;
  background: var(--tt-color-bg-subtle, #f3f4f6);
  border-bottom: 1px solid var(--tt-color-border, #d1d5db);
  flex-shrink: 0;
  justify-content: space-between;
  align-items:  center;
  gap: 1rem;
  padding: .625rem 1rem;
}

.excalidraw-node__modal-title {
  color: var(--tt-color-text, #111827);
  font-size: .9375rem;
  font-weight: 600;
}

.excalidraw-node__modal-actions {
  display: flex;
  align-items:  center;
  gap: .5rem;
}

.excalidraw-node__modal-error {
  color: var(--tt-color-danger, #ef4444);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 300px;
  font-size: .8125rem;
}

.excalidraw-node__modal-btn {
  border: 1px solid var(--tt-color-border, #d1d5db);
  border-radius: var(--tt-radius-sm, .375rem);
  cursor: pointer;
  background: var(--tt-color-bg, #fff);
  color: var(--tt-color-text, #111827);
  padding: .375rem .875rem;
  transition: background .15s, border-color .15s;
  font-size: .8125rem;
  font-weight: 500;
}

.excalidraw-node__modal-btn:hover:not(:disabled) {
  background: var(--tt-color-bg-muted, #f9fafb);
}

.excalidraw-node__modal-btn:disabled {
  opacity: .5;
  cursor: not-allowed;
}

.excalidraw-node__modal-btn--save {
  background: var(--tt-brand-color-500, #3b82f6);
  border-color: var(--tt-brand-color-500, #3b82f6);
  color: #fff;
}

.excalidraw-node__modal-btn--save:hover:not(:disabled) {
  background: var(--tt-brand-color-600, #2563eb);
  border-color: var(--tt-brand-color-600, #2563eb);
}

.excalidraw-node__modal-canvas {
  position: relative;
  flex: 1;
  min-height: 0;
}

.excalidraw-node__modal-canvas .excalidraw-wrapper, .excalidraw-node__modal-canvas .excalidraw {
  width: 100%;
  height: 100%;
}

.excalidraw-node__modal-loading {
  display: flex;
  color: var(--tt-color-text-secondary, #6b7280);
  animation: excalidraw-pulse 1.5s ease-in-out infinite;
  justify-content: center;
  align-items:  center;
  width: 100%;
  height: 100%;
}

.tiptap.ProseMirror .excalidraw-node {
  outline: 2px solid #0000;
  border-radius: var(--tt-radius-sm, .375rem);
  transition: outline-color .15s;
}

.tiptap.ProseMirror .excalidraw-node.ProseMirror-selectednode {
  outline-color: var(--tt-brand-color-500, #3b82f6);
}

@keyframes excalidraw-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .5;
  }
}

/* components/bundle/tiptap-node/sora-results-node/sora-results-node.scss */
.sora-results-node__placeholder {
  display: flex;
  border: 1px dashed var(--color-border, #d1d5db);
  background: var(--color-surface-muted, #f9fafb);
  text-align: center;
  border-radius: .5rem;
  flex-direction: column;
  align-items:  center;
  gap: .25rem;
  padding: 1.5rem 1rem;
}

.sora-results-node__icon {
  font-size: 1.5rem;
  line-height: 1;
}

.sora-results-node__label {
  color: var(--color-text, #374151);
  font-size: .875rem;
  font-weight: 600;
}

.sora-results-node__hint {
  color: var(--color-text-muted, #9ca3af);
  font-size: .75rem;
}

/* components/bundle/tiptap-node/cover-block-node/cover-block-node.scss */
.cover-block-node {
  display: block;
  margin: .25rem 0;
}

.cover-block-node__logo {
  object-fit: contain;
  max-width: 240px;
  max-height: 96px;
}

.cover-block-node__operator-table {
  border-collapse: collapse;
  width: 100%;
}

.cover-block-node__operator-row {
  vertical-align: top;
}

.cover-block-node__operator-label {
  width: 180px;
  padding: .25rem .5rem .25rem 0;
}

.cover-block-node__operator-value {
  padding: .25rem 0;
}

.cover-block-node__placeholder {
  color: #9ca3af;
  border: 1px dashed #d1d5db;
  border-radius: 6px;
  padding: .5rem .75rem;
  font-size: .875rem;
}

.cover-block-node__skeleton {
  overflow: hidden;
  background: #f3f4f6;
  border-radius: 4px;
  height: 1.5rem;
}

.cover-block-node__skeleton-shimmer {
  animation: cover-block-node-shimmer 1.4s ease infinite;
  background: linear-gradient(90deg, #f3f4f6 25%, #e5e7eb 37%, #f3f4f6 63%) 0 0 / 400% 100%;
  width: 100%;
  height: 100%;
}

@keyframes cover-block-node-shimmer {
  0% {
    background-position: 100%;
  }

  100% {
    background-position: 0;
  }
}

/* components/bundle/tiptap-node/field-chip-node/field-chip-node.scss */
.field-chip-node {
  display: inline-block;
  white-space: nowrap;
  vertical-align: baseline;
  width: auto;
}

[contenteditable="true"] .field-chip-node {
  cursor: default;
  background-color: #3b82f612;
  border: 1px solid #3b82f638;
  border-radius: 9999px;
  margin: 0 .05em;
  padding: .05em .5em;
  transition: background-color .12s, border-color .12s, box-shadow .12s;
  line-height: 1.4;
}

[contenteditable="true"] .field-chip-node:hover {
  background-color: #3b82f61f;
  border-color: #3b82f661;
}

[contenteditable="true"] .field-chip-node.ProseMirror-selectednode {
  background-color: #3b82f629;
  border-color: #3b82f68c;
  box-shadow: 0 0 0 2px #3b82f62e;
}

.field-chip-node__label {
  color: #4b6ea8;
  letter-spacing: .01em;
  font-size: .82em;
  font-weight: 500;
}

.field-chip-node__value {
  color: #1f2937;
  font-weight: 600;
}

/* components/bundle/tiptap-node/blockquote-node/blockquote-node.scss */
.tiptap.ProseMirror {
  --blockquote-bg-color: var(--tt-gray-light-900);
}

.dark .tiptap.ProseMirror {
  --blockquote-bg-color: var(--tt-gray-dark-900);
}

.tiptap.ProseMirror blockquote {
  position: relative;
  margin: 1.5rem 0;
  padding-top: .375em;
  padding-bottom: .375em;
  padding-left: 1em;
}

.tiptap.ProseMirror blockquote p {
  margin-top: 0;
}

.tiptap.ProseMirror blockquote:before, .tiptap.ProseMirror blockquote.is-empty:before {
  position: absolute;
  background-color: var(--blockquote-bg-color);
  content: "";
  border-radius: 0;
  width: .25em;
  height: 100%;
  top: 0;
  bottom: 0;
  left: 0;
}

/* components/bundle/tiptap-node/code-block-node/code-block-node.scss */
.tiptap.ProseMirror {
  --tt-inline-code-bg-color: var(--tt-gray-light-a-100);
  --tt-inline-code-text-color: var(--tt-gray-light-a-700);
  --tt-inline-code-border-color: var(--tt-gray-light-a-200);
  --tt-codeblock-bg: var(--tt-gray-light-a-50);
  --tt-codeblock-text: var(--tt-gray-light-a-800);
  --tt-codeblock-border: var(--tt-gray-light-a-200);
}

.dark .tiptap.ProseMirror {
  --tt-inline-code-bg-color: var(--tt-gray-dark-a-100);
  --tt-inline-code-text-color: var(--tt-gray-dark-a-700);
  --tt-inline-code-border-color: var(--tt-gray-dark-a-200);
  --tt-codeblock-bg: var(--tt-gray-dark-a-50);
  --tt-codeblock-text: var(--tt-gray-dark-a-800);
  --tt-codeblock-border: var(--tt-gray-dark-a-200);
}

.tiptap.ProseMirror code {
  border: 1px solid var(--tt-inline-code-border-color);
  border-radius: 6px / .375rem;
  padding: .1em .2em;
  font-family: JetBrains Mono NL, monospace;
  font-size: .875em;
}

.tiptap.ProseMirror pre {
  border: 1px solid var(--tt-codeblock-border);
  border-radius: 6px / .375rem;
  padding: 1em;
}

.tiptap.ProseMirror pre code {
  -webkit-text-fill-color: inherit;
  color: inherit;
  background-color: #0000;
  border: none;
  border-radius: 0;
}

/* components/bundle/tiptap-node/horizontal-rule-node/horizontal-rule-node.scss */
.tiptap.ProseMirror {
  --horizontal-rule-color: var(--tt-gray-light-a-200);
}

.dark .tiptap.ProseMirror {
  --horizontal-rule-color: var(--tt-gray-dark-a-200);
}

.tiptap.ProseMirror hr {
  background-color: var(--horizontal-rule-color);
  border: none;
  height: 1px;
}

.tiptap.ProseMirror [data-type="horizontalRule"] {
  padding-top: .75rem;
  padding-bottom: .75rem;
}

/* components/bundle/tiptap-node/list-node/list-node.scss */
.tiptap.ProseMirror {
  --tt-checklist-bg-color: var(--tt-gray-light-a-100);
  --tt-checklist-bg-active-color: var(--tt-gray-light-a-900);
  --tt-checklist-border-color: var(--tt-gray-light-a-200);
  --tt-checklist-border-active-color: var(--tt-gray-light-a-900);
  --tt-checklist-check-icon-color: var(--white);
  --tt-checklist-text-active: var(--tt-gray-light-a-500);
}

.dark .tiptap.ProseMirror {
  --tt-checklist-bg-color: var(--tt-gray-dark-a-100);
  --tt-checklist-bg-active-color: var(--tt-gray-dark-a-900);
  --tt-checklist-border-color: var(--tt-gray-dark-a-200);
  --tt-checklist-border-active-color: var(--tt-gray-dark-a-900);
  --tt-checklist-check-icon-color: var(--black);
  --tt-checklist-text-active: var(--tt-gray-dark-a-500);
}

.tiptap.ProseMirror ol, .tiptap.ProseMirror ul {
  padding-left: 1.5em;
}

.tiptap.ProseMirror ol:first-child, .tiptap.ProseMirror ul:first-child {
  margin-top: 0;
}

.tiptap.ProseMirror ol:last-child, .tiptap.ProseMirror ul:last-child {
  margin-bottom: 0;
}

.tiptap.ProseMirror ol ol, .tiptap.ProseMirror ol ul, .tiptap.ProseMirror ul ol, .tiptap.ProseMirror ul ul {
  margin-top: 0;
  margin-bottom: 0;
}

.tiptap.ProseMirror li p:not(:first-child):not(td p):not(th p) {
  margin-top: 0;
}

.tiptap.ProseMirror ol {
  list-style: decimal;
}

.tiptap.ProseMirror ol ol {
  list-style: lower-alpha;
}

.tiptap.ProseMirror ol ol ol {
  list-style: lower-roman;
}

.tiptap.ProseMirror ol ol ol ol {
  list-style: decimal;
}

.tiptap.ProseMirror ol ol ol ol ol {
  list-style: lower-alpha;
}

.tiptap.ProseMirror ol ol ol ol ol ol {
  list-style: lower-roman;
}

.tiptap.ProseMirror ol ol ol ol ol ol ol {
  list-style: decimal;
}

.tiptap.ProseMirror ol ol ol ol ol ol ol ol {
  list-style: lower-alpha;
}

.tiptap.ProseMirror ol ol ol ol ol ol ol ol ol {
  list-style: lower-roman;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) {
  list-style: disc;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul {
  list-style: circle;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul {
  list-style: square;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul {
  list-style: disc;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul ul {
  list-style: circle;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul ul ul {
  list-style: square;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul ul ul ul {
  list-style: disc;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul ul ul ul ul {
  list-style: circle;
}

.tiptap.ProseMirror ul:not([data-type="taskList"]) ul ul ul ul ul ul ul ul {
  list-style: square;
}

.tiptap.ProseMirror ul[data-type="taskList"] {
  padding-left: .25em;
}

.tiptap.ProseMirror ul[data-type="taskList"] li {
  display: flex;
  flex-direction: row;
  align-items:  flex-start;
}

.tiptap.ProseMirror ul[data-type="taskList"] li:not(:has( > p:first-child)) {
  list-style-type: none;
}

.tiptap.ProseMirror ul[data-type="taskList"] li[data-checked="true"] > div > p {
  opacity: .5;
  text-decoration: line-through;
}

.tiptap.ProseMirror ul[data-type="taskList"] li[data-checked="true"] > div > p span {
  text-decoration: line-through;
}

.tiptap.ProseMirror ul[data-type="taskList"] li label {
  position: relative;
  padding-top: .375rem;
  padding-right: .5rem;
}

.tiptap.ProseMirror ul[data-type="taskList"] li label input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.tiptap.ProseMirror ul[data-type="taskList"] li label span {
  display: block;
  border: 1px solid var(--tt-checklist-border-color);
  border-radius: var(--tt-radius-xs, .25rem);
  position: relative;
  cursor: pointer;
  background-color: var(--tt-checklist-bg-color);
  width: 1em;
  height: 1em;
  transition: background-color 80ms ease-out, border-color 80ms ease-out;
}

.tiptap.ProseMirror ul[data-type="taskList"] li label span:before {
  content: "";
  position: absolute;
  background-color: var(--tt-checklist-check-icon-color);
  opacity: 0;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M21.4142%204.58579C22.1953%205.36683%2022.1953%206.63317%2021.4142%207.41421L10.4142%2018.4142C9.63317%2019.1953%208.36684%2019.1953%207.58579%2018.4142L2.58579%2013.4142C1.80474%2012.6332%201.80474%2011.3668%202.58579%2010.5858C3.36683%209.80474%204.63317%209.80474%205.41421%2010.5858L9%2014.1716L18.5858%204.58579C19.3668%203.80474%2020.6332%203.80474%2021.4142%204.58579Z%22%20fill%3D%22currentColor%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22currentColor%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M21.4142%204.58579C22.1953%205.36683%2022.1953%206.63317%2021.4142%207.41421L10.4142%2018.4142C9.63317%2019.1953%208.36684%2019.1953%207.58579%2018.4142L2.58579%2013.4142C1.80474%2012.6332%201.80474%2011.3668%202.58579%2010.5858C3.36683%209.80474%204.63317%209.80474%205.41421%2010.5858L9%2014.1716L18.5858%204.58579C19.3668%203.80474%2020.6332%203.80474%2021.4142%204.58579Z%22%20fill%3D%22currentColor%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  width: .75em;
  height: .75em;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.tiptap.ProseMirror ul[data-type="taskList"] li label input[type="checkbox"]:checked + span {
  background: var(--tt-checklist-bg-active-color);
  border-color: var(--tt-checklist-border-active-color);
}

.tiptap.ProseMirror ul[data-type="taskList"] li label input[type="checkbox"]:checked + span:before {
  opacity: 1;
}

.tiptap.ProseMirror ul[data-type="taskList"] li div {
  flex: 1;
  min-width: 0;
}

/* components/bundle/tiptap-node/image-node/image-node.scss */
.tiptap.ProseMirror img {
  display: block;
  max-width: 100%;
  height: auto;
}

.tiptap.ProseMirror p > img {
  display: inline-block;
}

.tiptap.ProseMirror > img:not([data-type="emoji"] img) {
  outline: .125rem solid #0000;
  border-radius: var(--tt-radius-xs, .25rem);
  margin: 2rem 0;
}

.tiptap.ProseMirror img:not([data-type="emoji"] img).ProseMirror-selectednode {
  outline-color: var(--tt-brand-color-500);
}

.tiptap.ProseMirror .tiptap-thread:has( > img) {
  margin: 2rem 0;
}

.tiptap.ProseMirror .tiptap-thread:has( > img) img {
  outline: .125rem solid #0000;
  border-radius: var(--tt-radius-xs, .25rem);
}

.tiptap.ProseMirror .tiptap-thread img {
  margin: 0;
}

/* components/bundle/tiptap-node/heading-node/heading-node.scss */
.tiptap.ProseMirror h1, .tiptap.ProseMirror h2, .tiptap.ProseMirror h3, .tiptap.ProseMirror h4 {
  position: relative;
  color: inherit;
  font-style: inherit;
}

.tiptap.ProseMirror > h1:first-child, .tiptap.ProseMirror > h2:first-child, .tiptap.ProseMirror > h3:first-child, .tiptap.ProseMirror > h4:first-child, .tiptap.ProseMirror > .ProseMirror-widget + h1, .tiptap.ProseMirror > .ProseMirror-widget + h2, .tiptap.ProseMirror > .ProseMirror-widget + h3, .tiptap.ProseMirror > .ProseMirror-widget + h4 {
  margin-top: 0;
}

/* components/bundle/tiptap-node/paragraph-node/paragraph-node.scss */
.tiptap.ProseMirror {
  --tt-collaboration-carets-label: var(--tt-gray-light-900);
  --link-text-color: var(--tt-brand-color-500);
  --placeholder-color: var(--tt-gray-light-a-400);
  --tiptap-ai-insertion-color: var(--tt-brand-color-600);
}

.dark .tiptap.ProseMirror {
  --tt-collaboration-carets-label: var(--tt-gray-dark-100);
  --link-text-color: var(--tt-brand-color-400);
  --placeholder-color: var(--tt-gray-dark-a-400);
  --tiptap-ai-insertion-color: var(--tt-brand-color-400);
}

.tiptap.ProseMirror > * {
  position: relative;
}

.tiptap.ProseMirror {
  white-space: pre-wrap;
  outline: none;
  caret-color: var(--tt-cursor-color);
}

.tiptap.ProseMirror:not(.readonly):not(.ProseMirror-hideselection) ::selection {
  background-color: var(--tt-selection-color);
}

.tiptap.ProseMirror:not(.readonly):not(.ProseMirror-hideselection) .selection::selection {
  background: none;
}

.tiptap.ProseMirror .selection {
  display: inline;
  background-color: var(--tt-selection-color);
}

.tiptap.ProseMirror .ProseMirror-selectednode:not(img):not(pre):not(.react-renderer) {
  border-radius: var(--tt-radius-md);
  background-color: var(--tt-selection-color);
}

.tiptap.ProseMirror .ProseMirror-hideselection {
  caret-color: transparent;
}

.tiptap.ProseMirror.resize-cursor {
  cursor: ew-resize;
  cursor: col-resize;
}

.tiptap.ProseMirror a span {
  text-decoration: underline;
}

.tiptap.ProseMirror s span {
  text-decoration: line-through;
}

.tiptap.ProseMirror u span {
  text-decoration: underline;
}

.tiptap.ProseMirror .tiptap-ai-insertion {
  color: var(--tiptap-ai-insertion-color);
}

.tiptap.ProseMirror .collaboration-carets__caret {
  pointer-events: none;
  position: relative;
  word-break: normal;
  border-left: 1px solid #0000;
  border-right: 1px solid #0000;
  margin-left: -1px;
  margin-right: -1px;
}

.tiptap.ProseMirror .collaboration-carets__label {
  color: var(--tt-collaboration-carets-label);
  position: absolute;
  user-select: none;
  white-space: nowrap;
  border-radius: .25rem .25rem .25rem 0;
  padding: .125rem .375rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1;
  top: -1.3em;
  left: -1px;
}

.tiptap.ProseMirror [data-type="emoji"] img {
  display: inline-block;
  cursor: text;
  width: 1.25em;
  height: 1.25em;
}

.tiptap.ProseMirror a {
  color: var(--link-text-color);
  text-decoration: underline;
}

.tiptap.ProseMirror [data-type="mention"] {
  display: inline-block;
  color: var(--tt-brand-color-500);
}

.is-empty:not(.with-slash)[data-placeholder]:has( > .ProseMirror-trailingBreak:only-child):before {
  content: attr(data-placeholder);
}

.is-empty.with-slash[data-placeholder]:has( > .ProseMirror-trailingBreak:only-child):before {
  content: "Write, type '/' for commands…";
  font-style: italic;
}

.is-empty[data-placeholder]:has( > .ProseMirror-trailingBreak:only-child):before {
  pointer-events: none;
  position: absolute;
  text-align: inherit;
  width: 100%;
  height: 0;
  left: 0;
  right: 0;
}

.is-empty[data-placeholder]:has( > .ProseMirror-trailingBreak):before {
  color: var(--placeholder-color);
}

.prosemirror-dropcursor-block, .prosemirror-dropcursor-inline {
  cursor: grabbing;
  border-radius: .25rem;
  width: 100%;
  height: .188rem;
  margin-left: -1px;
  margin-right: -1px;
  background: var(--tt-brand-color-400) !important;
}

.tiptap.ProseMirror {
  --tt-indent-unit: 24px;
}

.tiptap.ProseMirror [data-indent] {
  margin-left: calc(var(--tt-indent-unit) * var(--tt-indent-level, 0));
  transition: margin-left .2s ease-in-out;
}

/* components/bundle/tiptap-node/table-node/styles/prosemirror-table.scss */
.ProseMirror .tableWrapper {
  overflow-x: auto;
}

.ProseMirror table {
  border-collapse: collapse;
  table-layout: fixed;
  overflow: hidden;
  width: 100%;
}

.ProseMirror td, .ProseMirror th {
  vertical-align: top;
  box-sizing: border-box;
  position: relative;
}

.ProseMirror td:not([data-colwidth]):not(.column-resize-dragging), .ProseMirror th:not([data-colwidth]):not(.column-resize-dragging) {
  min-width: var(--default-cell-min-width);
}

.ProseMirror .column-resize-handle {
  position: absolute;
  z-index: 20;
  pointer-events: none;
  background-color: #adf;
  width: 4px;
  top: 0;
  bottom: 0;
  right: -2px;
}

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

.ProseMirror .selectedCell:after {
  z-index: 2;
  position: absolute;
  content: "";
  pointer-events: none;
  background: #c8c8ff66;
  inset: 0;
}

/* components/bundle/tiptap-node/table-node/styles/table-node.scss */
:root {
  --tt-table-border-color: var(--tt-gray-light-a-300);
  --tt-table-selected-bg: #c3bdff66;
  --tt-table-selected-stroke: var(--tt-brand-color-400);
  --tt-table-column-resize-handle-bg: var(--tt-brand-color-400);
  --tt-table-cell-padding: .5rem;
  --tt-table-margin-block: 1.25rem;
  --tt-table-pad-block-start: 1rem;
  --tt-table-pad-block-end: 1.5rem;
  --tt-table-pad-inline-start: 1rem;
  --tt-table-pad-inline-end: 1.5rem;
}

.dark {
  --tt-table-border-color: var(--tt-gray-dark-a-300);
  --tt-table-selected-bg: #c3bdff33;
  --tt-table-selected-stroke: var(--tt-brand-color-400);
  --tt-table-column-resize-handle-bg: var(--tt-brand-color-400);
}

.tiptap [data-content-type="table"] {
  margin-block: var(--tt-table-margin-block);
}

.tiptap [data-content-type="table"] .tableWrapper {
  overflow-y: hidden;
  position: relative;
  width: 100%;
  margin-left: -1rem;
  padding-block-start: var(--tt-table-pad-block-start);
  padding-block-end: var(--tt-table-pad-block-end);
  padding-inline-start: var(--tt-table-pad-inline-start);
  padding-inline-end: var(--tt-table-pad-inline-end);
}

.tiptap [data-content-type="table"] .table-controls {
  z-index: 30;
}

.tiptap [data-content-type="table"] .tiptap-table-handle-floating {
  z-index: 40;
}

.tiptap table {
  word-break: break-word;
  width: auto !important;
}

.tiptap th, .tiptap td {
  border: 1px solid var(--tt-table-border-color);
  padding: var(--tt-table-cell-padding);
}

.tiptap table th {
  background-color: var(--tt-gray-light-a-100);
  text-align: left;
}

.ProseMirror .column-resize-handle {
  position: absolute;
  margin-inline-start: -1px;
  background: var(--tt-table-column-resize-handle-bg);
  cursor: col-resize;
  z-index: 1;
  pointer-events: auto;
  width: 2px;
  height: calc(100% + 2px);
  margin-top: -1px;
  transition: background .15s 50ms;
  top: 0;
  right: 0;
}

.tiptap td[data-text-align="left"], .tiptap td[data-node-text-align="left"], .tiptap th[data-text-align="left"], .tiptap th[data-node-text-align="left"] {
  text-align: left;
}

.tiptap td[data-text-align="center"], .tiptap td[data-node-text-align="center"], .tiptap th[data-text-align="center"], .tiptap th[data-node-text-align="center"] {
  text-align: center;
}

.tiptap td[data-text-align="right"], .tiptap td[data-node-text-align="right"], .tiptap th[data-text-align="right"], .tiptap th[data-node-text-align="right"] {
  text-align: right;
}

.tiptap td[data-text-align="justify"], .tiptap td[data-node-text-align="justify"], .tiptap th[data-text-align="justify"], .tiptap th[data-node-text-align="justify"] {
  text-align: justify;
}

.tiptap td[data-vertical-align="top"], .tiptap td[data-node-vertical-align="top"], .tiptap th[data-vertical-align="top"], .tiptap th[data-node-vertical-align="top"] {
  vertical-align: top;
}

.tiptap td[data-vertical-align="middle"], .tiptap td[data-node-vertical-align="middle"], .tiptap th[data-vertical-align="middle"], .tiptap th[data-node-vertical-align="middle"] {
  vertical-align: middle;
}

.tiptap td[data-vertical-align="bottom"], .tiptap td[data-node-vertical-align="bottom"], .tiptap th[data-vertical-align="bottom"], .tiptap th[data-node-vertical-align="bottom"] {
  vertical-align: bottom;
}

.tiptap [data-content-type="table"] td[data-text-align="left"], .tiptap [data-content-type="table"] td[data-node-text-align="left"], .tiptap [data-content-type="table"] th[data-text-align="left"], .tiptap [data-content-type="table"] th[data-node-text-align="left"] {
  text-align: left;
}

.tiptap [data-content-type="table"] td[data-text-align="center"], .tiptap [data-content-type="table"] td[data-node-text-align="center"], .tiptap [data-content-type="table"] th[data-text-align="center"], .tiptap [data-content-type="table"] th[data-node-text-align="center"] {
  text-align: center;
}

.tiptap [data-content-type="table"] td[data-text-align="right"], .tiptap [data-content-type="table"] td[data-node-text-align="right"], .tiptap [data-content-type="table"] th[data-text-align="right"], .tiptap [data-content-type="table"] th[data-node-text-align="right"] {
  text-align: right;
}

.tiptap [data-content-type="table"] td[data-text-align="justify"], .tiptap [data-content-type="table"] td[data-node-text-align="justify"], .tiptap [data-content-type="table"] th[data-text-align="justify"], .tiptap [data-content-type="table"] th[data-node-text-align="justify"] {
  text-align: justify;
}

.tiptap [data-content-type="table"] td[data-vertical-align="top"], .tiptap [data-content-type="table"] td[data-node-vertical-align="top"], .tiptap [data-content-type="table"] th[data-vertical-align="top"], .tiptap [data-content-type="table"] th[data-node-vertical-align="top"] {
  vertical-align: top;
}

.tiptap [data-content-type="table"] td[data-vertical-align="middle"], .tiptap [data-content-type="table"] td[data-node-vertical-align="middle"], .tiptap [data-content-type="table"] th[data-vertical-align="middle"], .tiptap [data-content-type="table"] th[data-node-vertical-align="middle"] {
  vertical-align: middle;
}

.tiptap [data-content-type="table"] td[data-vertical-align="bottom"], .tiptap [data-content-type="table"] td[data-node-vertical-align="bottom"], .tiptap [data-content-type="table"] th[data-vertical-align="bottom"], .tiptap [data-content-type="table"] th[data-node-vertical-align="bottom"] {
  vertical-align: bottom;
}

.ProseMirror td, .ProseMirror th {
  min-width: auto !important;
}

.ProseMirror td:not([colwidth]):not(.column-resize-dragging), .ProseMirror th:not([colwidth]):not(.column-resize-dragging) {
  min-width: var(--default-cell-min-width) !important;
}

.tiptap [data-content-type="table"][data-pages-active] .tableWrapper {
  overflow: visible;
}

.tiptap [data-content-type="table"][data-pages-active] th, .tiptap [data-content-type="table"][data-pages-active] td {
  overflow: visible;
  padding: var(--tt-table-cell-padding);
  border-top: 0;
  border-left: 0;
  border-right: 1px solid var(--tt-table-border-color);
  border-bottom: 1px solid var(--tt-table-border-color);
  box-shadow: 0 -1px 0 var(--tt-table-border-color);
  max-height: none;
  min-width: 0 !important;
}

.tiptap [data-content-type="table"][data-pages-active] th:first-child, .tiptap [data-content-type="table"][data-pages-active] td:first-child {
  border-left: 1px solid var(--tt-table-border-color);
}

.tiptap [data-content-type="table"][data-pages-active] td[style*="vertical-align: middle"], .tiptap [data-content-type="table"][data-pages-active] th[style*="vertical-align: middle"], .tiptap [data-content-type="table"][data-pages-active] td[data-node-vertical-align="middle"], .tiptap [data-content-type="table"][data-pages-active] th[data-node-vertical-align="middle"], .tiptap [data-content-type="table"][data-pages-active] td[data-vertical-align="middle"], .tiptap [data-content-type="table"][data-pages-active] th[data-vertical-align="middle"] {
  align-content:  center;
}

.tiptap [data-content-type="table"][data-pages-active] td[style*="vertical-align: bottom"], .tiptap [data-content-type="table"][data-pages-active] th[style*="vertical-align: bottom"], .tiptap [data-content-type="table"][data-pages-active] td[data-node-vertical-align="bottom"], .tiptap [data-content-type="table"][data-pages-active] th[data-node-vertical-align="bottom"], .tiptap [data-content-type="table"][data-pages-active] td[data-vertical-align="bottom"], .tiptap [data-content-type="table"][data-pages-active] th[data-vertical-align="bottom"] {
  align-content:  end;
}

.tiptap-table-dropcursor {
  position: absolute;
  z-index: 20;
  background-color: var(--tt-table-column-resize-handle-bg);
  pointer-events: none;
}

.table-cell-dragging-source {
  z-index: 2;
  position: absolute;
  content: "";
  background: #c8c8ff66;
  inset: 0;
}

/* components/bundle/tiptap-node/shared/shared-dynamic-node.scss */
.dynamic-node-shared__wrapper {
  position: relative;
}

.dynamic-node-shared__change-badge {
  display: inline-flex;
  position: absolute;
  z-index: 10;
  border-radius: var(--tt-radius-full, 9999px);
  background: var(--tt-color-info, #3b82f6);
  color: #fff;
  cursor: pointer;
  white-space: nowrap;
  border: none;
  align-items:  center;
  gap: .25rem;
  padding: .125rem .5rem;
  transition: background .15s, transform .1s;
  font-size: .6875rem;
  font-weight: 600;
  line-height: 1.4;
  top: -.375rem;
  right: -.375rem;
  box-shadow: 0 1px 3px #00000026;
}

.dynamic-node-shared__change-badge:hover {
  background: var(--tt-color-info-hover, #2563eb);
  transform: scale(1.05);
}

.dynamic-node-shared__change-badge:focus-visible {
  outline: 2px solid var(--tt-color-focus-ring, #93c5fd);
  outline-offset: 2px;
}

.dynamic-node-shared__change-badge-dot {
  display: inline-block;
  animation: dynamic-node-shared-pulse 1.5s ease-in-out infinite;
  background: #fff;
  border-radius: 50%;
  width: .375rem;
  height: .375rem;
}

.dynamic-node-shared__warning-overlay {
  position: absolute;
  z-index: 9;
  display: flex;
  border: 1px solid var(--tt-color-warning, #f59e0b);
  border-radius: var(--tt-radius-sm, .375rem);
  pointer-events: auto;
  background: #fef3c7cc;
  justify-content: center;
  align-items:  flex-start;
  padding-top: .375rem;
  inset: 0;
}

.dynamic-node-shared__warning-content {
  display: inline-flex;
  border-radius: var(--tt-radius-sm, .375rem);
  background: var(--tt-color-warning-bg, #fffbeb);
  border: 1px solid var(--tt-color-warning, #f59e0b);
  align-items:  center;
  gap: .375rem;
  padding: .25rem .625rem;
  box-shadow: 0 1px 3px #0000001a;
}

.dynamic-node-shared__warning-icon {
  color: var(--tt-color-warning, #f59e0b);
  flex-shrink: 0;
  font-size: .875rem;
}

.dynamic-node-shared__warning-text {
  color: var(--tt-color-text, #111827);
  font-size: .75rem;
  line-height: 1.4;
}

.dynamic-node-shared__warning-dismiss {
  display: inline-flex;
  border-radius: var(--tt-radius-sm, .375rem);
  color: var(--tt-color-text-secondary, #6b7280);
  cursor: pointer;
  background: none;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items:  center;
  width: 1.25rem;
  height: 1.25rem;
  font-size: .875rem;
  line-height: 1;
}

.dynamic-node-shared__warning-dismiss:hover {
  background: var(--tt-color-bg-muted, #f9fafb);
  color: var(--tt-color-text, #111827);
}

.dynamic-node-shared__warning-dismiss:focus-visible {
  outline: 2px solid var(--tt-color-focus-ring, #93c5fd);
  outline-offset: 1px;
}

@keyframes dynamic-node-shared-pulse {
  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: .4;
  }
}

/* components/tiptap-ui-primitive/tooltip/tooltip.scss */
.tiptap-tooltip {
  --tt-tooltip-bg: var(--tt-gray-light-900);
  --tt-tooltip-text: var(--white);
  --tt-kbd: var(--tt-gray-dark-a-400);
}

.dark .tiptap-tooltip {
  --tt-tooltip-bg: var(--white);
  --tt-tooltip-text: var(--tt-gray-light-600);
  --tt-kbd: var(--tt-gray-light-a-400);
}

.tiptap-tooltip {
  z-index: 50;
  overflow: hidden;
  border-radius: var(--tt-radius-md, .375rem);
  background-color: var(--tt-tooltip-bg);
  color: var(--tt-tooltip-text);
  text-align: center;
  padding: .375rem .5rem;
  font-size: .75rem;
  font-weight: 500;
  box-shadow: 0 4px 6px -1px #0000001a;
}

.tiptap-tooltip kbd {
  display: inline-block;
  text-align: center;
  vertical-align: baseline;
  text-transform: capitalize;
  color: var(--tt-kbd);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, Helvetica Neue, Arial, sans-serif;
}

/* components/tiptap-ui-primitive/button/button-colors.scss */
.tiptap-button {
  --tt-button-default-bg-color: var(--tt-gray-light-a-100);
  --tt-button-hover-bg-color: var(--tt-gray-light-200);
  --tt-button-active-bg-color: var(--tt-gray-light-a-200);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-100);
  --tt-button-active-bg-color-subdued: var(--tt-gray-light-a-200);
  --tt-button-active-hover-bg-color: var(--tt-gray-light-300);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-subdued: var(--tt-gray-light-a-300);
  --tt-button-disabled-bg-color: var(--tt-gray-light-a-50);
}

.dark .tiptap-button {
  --tt-button-default-bg-color: var(--tt-gray-dark-a-100);
  --tt-button-hover-bg-color: var(--tt-gray-dark-200);
  --tt-button-active-bg-color: var(--tt-gray-dark-a-200);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-900);
  --tt-button-active-bg-color-subdued: var(--tt-gray-dark-a-200);
  --tt-button-active-hover-bg-color: var(--tt-gray-dark-300);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-subdued: var(--tt-gray-dark-a-300);
  --tt-button-disabled-bg-color: var(--tt-gray-dark-a-50);
}

.tiptap-button {
  --tt-button-default-text-color: var(--tt-gray-light-a-600);
  --tt-button-hover-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button {
  --tt-button-default-text-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-dark-a-300);
}

.tiptap-button {
  --tt-button-default-icon-color: var(--tt-gray-light-a-600);
  --tt-button-hover-icon-color: var(--tt-gray-light-a-900);
  --tt-button-active-icon-color: var(--tt-brand-color-500);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-600);
  --tt-button-active-icon-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-icon-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button {
  --tt-button-default-icon-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-icon-color: var(--tt-gray-dark-a-900);
  --tt-button-active-icon-color: var(--tt-brand-color-400);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-400);
  --tt-button-active-icon-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-icon-color: var(--tt-gray-dark-a-400);
}

.tiptap-button {
  --tt-button-default-icon-sub-color: var(--tt-gray-light-a-400);
  --tt-button-hover-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color: var(--tt-gray-light-a-400);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-light-a-400);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button {
  --tt-button-default-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-hover-icon-sub-color: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-dark-a-300);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-dark-a-100);
}

.tiptap-button {
  --tt-button-default-dropdown-arrows-color: var(--tt-gray-light-a-600);
  --tt-button-hover-dropdown-arrows-color: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-light-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-light-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button {
  --tt-button-default-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-dropdown-arrows-color: var(--tt-gray-dark-a-700);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-dark-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-dark-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-dark-a-400);
}

.tiptap-button[data-variant="check"] {
  --tt-button-check-bg-color: var(--tt-gray-light-a-100);
  --tt-button-check-hover-bg-color: var(--white);
  --tt-button-check-border-color: var(--tt-gray-light-a-200);
  --tt-button-check-hover-border-color: var(--tt-gray-light-a-300);
  --tt-button-check-checked-bg-color: var(--tt-gray-light-a-900);
  --tt-button-check-checked-border-color: var(--tt-gray-light-a-900);
  --tt-button-check-checked-text-color: var(--tt-gray-light-a-900);
  --tt-button-check-checked-icon-color: var(--white);
  --tt-button-check-focus-ring-color: color-mix(in srgb, var(--tt-brand-color-500) 20%, transparent);
}

.dark .tiptap-button[data-variant="check"] {
  --tt-button-check-bg-color: var(--tt-gray-dark-a-100);
  --tt-button-check-hover-bg-color: var(--tt-gray-dark-a-100);
  --tt-button-check-border-color: var(--tt-gray-dark-a-200);
  --tt-button-check-hover-border-color: var(--tt-gray-dark-a-300);
  --tt-button-check-checked-bg-color: var(--tt-gray-dark-a-900);
  --tt-button-check-checked-border-color: var(--tt-gray-dark-a-900);
  --tt-button-check-checked-text-color: var(--tt-gray-dark-a-900);
  --tt-button-check-checked-icon-color: var(--black);
  --tt-button-check-focus-ring-color: color-mix(in srgb, var(--tt-brand-color-400) 25%, transparent);
}

.tiptap-button[data-style="ghost"], .tiptap-button[data-style="tertiary"] {
  --tt-button-default-bg-color: var(--transparent);
  --tt-button-hover-bg-color: var(--tt-gray-light-200);
  --tt-button-active-bg-color: var(--tt-gray-light-a-100);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-100);
  --tt-button-active-bg-color-subdued: var(--tt-gray-light-a-100);
  --tt-button-active-hover-bg-color: var(--tt-gray-light-200);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-subdued: var(--tt-gray-light-a-200);
  --tt-button-disabled-bg-color: var(--transparent);
}

.dark .tiptap-button[data-style="ghost"], .dark .tiptap-button[data-style="tertiary"] {
  --tt-button-default-bg-color: var(--transparent);
  --tt-button-hover-bg-color: var(--tt-gray-dark-200);
  --tt-button-active-bg-color: var(--tt-gray-dark-a-100);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-900);
  --tt-button-active-bg-color-subdued: var(--tt-gray-dark-a-100);
  --tt-button-active-hover-bg-color: var(--tt-gray-dark-200);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-subdued: var(--tt-gray-dark-a-200);
  --tt-button-disabled-bg-color: var(--transparent);
}

.tiptap-button[data-style="ghost"], .tiptap-button[data-style="tertiary"] {
  --tt-button-default-text-color: var(--tt-gray-light-a-600);
  --tt-button-hover-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="ghost"], .dark .tiptap-button[data-style="tertiary"] {
  --tt-button-default-text-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-dark-a-300);
}

.tiptap-button[data-style="ghost"], .tiptap-button[data-style="tertiary"] {
  --tt-button-default-icon-color: var(--tt-gray-light-a-600);
  --tt-button-hover-icon-color: var(--tt-gray-light-a-900);
  --tt-button-active-icon-color: var(--tt-brand-color-500);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-600);
  --tt-button-active-icon-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-icon-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="ghost"], .dark .tiptap-button[data-style="tertiary"] {
  --tt-button-default-icon-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-icon-color: var(--tt-gray-dark-a-900);
  --tt-button-active-icon-color: var(--tt-brand-color-400);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-300);
  --tt-button-active-icon-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-icon-color: var(--tt-gray-dark-a-400);
}

.tiptap-button[data-style="ghost"], .tiptap-button[data-style="tertiary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-light-a-400);
  --tt-button-hover-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color: var(--tt-gray-light-a-400);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-light-a-400);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button[data-style="ghost"], .dark .tiptap-button[data-style="tertiary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-hover-icon-sub-color: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-dark-a-300);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-dark-a-100);
}

.tiptap-button[data-style="ghost"], .tiptap-button[data-style="tertiary"] {
  --tt-button-default-dropdown-arrows-color: var(--tt-gray-light-a-600);
  --tt-button-hover-dropdown-arrows-color: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-light-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-light-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="ghost"], .dark .tiptap-button[data-style="tertiary"] {
  --tt-button-default-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-hover-dropdown-arrows-color: var(--tt-gray-dark-a-700);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-dark-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-dark-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-dark-a-400);
}

.tiptap-button[data-style="primary"] {
  --tt-button-default-bg-color: var(--tt-brand-color-500);
  --tt-button-hover-bg-color: var(--tt-brand-color-600);
  --tt-button-active-bg-color: var(--tt-brand-color-100);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-100);
  --tt-button-active-bg-color-subdued: var(--tt-brand-color-100);
  --tt-button-active-hover-bg-color: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-subdued: var(--tt-brand-color-200);
  --tt-button-disabled-bg-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button[data-style="primary"] {
  --tt-button-default-bg-color: var(--tt-brand-color-500);
  --tt-button-hover-bg-color: var(--tt-brand-color-600);
  --tt-button-active-bg-color: var(--tt-brand-color-900);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-900);
  --tt-button-active-bg-color-subdued: var(--tt-brand-color-900);
  --tt-button-active-hover-bg-color: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-subdued: var(--tt-brand-color-800);
  --tt-button-disabled-bg-color: var(--tt-gray-dark-a-100);
}

.tiptap-button[data-style="primary"] {
  --tt-button-default-text-color: var(--white);
  --tt-button-hover-text-color: var(--white);
  --tt-button-active-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="primary"] {
  --tt-button-default-text-color: var(--white);
  --tt-button-hover-text-color: var(--white);
  --tt-button-active-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-dark-a-300);
}

.tiptap-button[data-style="primary"] {
  --tt-button-default-icon-color: var(--white);
  --tt-button-hover-icon-color: var(--white);
  --tt-button-active-icon-color: var(--tt-brand-color-600);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-600);
  --tt-button-active-icon-color-subdued: var(--tt-brand-color-600);
  --tt-button-disabled-icon-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="primary"] {
  --tt-button-default-icon-color: var(--white);
  --tt-button-hover-icon-color: var(--white);
  --tt-button-active-icon-color: var(--tt-brand-color-400);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-400);
  --tt-button-active-icon-color-subdued: var(--tt-brand-color-400);
  --tt-button-disabled-icon-color: var(--tt-gray-dark-a-300);
}

.tiptap-button[data-style="primary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-dark-a-500);
  --tt-button-hover-icon-sub-color: var(--tt-gray-dark-a-500);
  --tt-button-active-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-light-a-500);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button[data-style="primary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-dark-a-400);
  --tt-button-hover-icon-sub-color: var(--tt-gray-dark-a-500);
  --tt-button-active-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-dark-a-300);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-dark-a-100);
}

.tiptap-button[data-style="primary"] {
  --tt-button-default-dropdown-arrows-color: var(--white);
  --tt-button-hover-dropdown-arrows-color: var(--white);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-light-a-700);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="primary"] {
  --tt-button-default-dropdown-arrows-color: var(--white);
  --tt-button-hover-dropdown-arrows-color: var(--white);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-dark-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-dark-a-400);
}

.tiptap-button[data-style="secondary"] {
  --tt-button-default-bg-color: var(--tt-gray-light-800);
  --tt-button-hover-bg-color: var(--tt-gray-light-900);
  --tt-button-active-bg-color: var(--tt-brand-color-100);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-100);
  --tt-button-active-bg-color-subdued: var(--tt-brand-color-100);
  --tt-button-active-hover-bg-color: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-200);
  --tt-button-active-hover-bg-color-subdued: var(--tt-brand-color-200);
  --tt-button-disabled-bg-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button[data-style="secondary"] {
  --tt-button-default-bg-color: var(--tt-gray-dark-800);
  --tt-button-hover-bg-color: var(--tt-gray-dark-900);
  --tt-button-active-bg-color: var(--tt-brand-color-900);
  --tt-button-active-bg-color-emphasized: var(--tt-brand-color-900);
  --tt-button-active-bg-color-subdued: var(--tt-brand-color-900);
  --tt-button-active-hover-bg-color: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-emphasized: var(--tt-brand-color-800);
  --tt-button-active-hover-bg-color-subdued: var(--tt-brand-color-800);
  --tt-button-disabled-bg-color: var(--tt-gray-dark-a-100);
}

.tiptap-button[data-style="secondary"] {
  --tt-button-default-text-color: var(--white);
  --tt-button-hover-text-color: var(--white);
  --tt-button-active-text-color: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-light-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-light-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="secondary"] {
  --tt-button-default-text-color: var(--black);
  --tt-button-hover-text-color: var(--black);
  --tt-button-active-text-color: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-emphasized: var(--tt-gray-dark-a-900);
  --tt-button-active-text-color-subdued: var(--tt-gray-dark-a-900);
  --tt-button-disabled-text-color: var(--tt-gray-dark-a-300);
}

.tiptap-button[data-style="secondary"] {
  --tt-button-default-icon-color: var(--white);
  --tt-button-hover-icon-color: var(--white);
  --tt-button-active-icon-color: var(--tt-brand-color-600);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-600);
  --tt-button-active-icon-color-subdued: var(--tt-brand-color-600);
  --tt-button-disabled-icon-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="secondary"] {
  --tt-button-default-icon-color: var(--black);
  --tt-button-hover-icon-color: var(--black);
  --tt-button-active-icon-color: var(--tt-brand-color-400);
  --tt-button-active-icon-color-emphasized: var(--tt-brand-color-400);
  --tt-button-active-icon-color-subdued: var(--tt-brand-color-400);
  --tt-button-disabled-icon-color: var(--tt-gray-dark-a-300);
}

.tiptap-button[data-style="secondary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-hover-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-light-a-500);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-light-a-500);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-light-a-100);
}

.dark .tiptap-button[data-style="secondary"] {
  --tt-button-default-icon-sub-color: var(--tt-gray-dark-a-400);
  --tt-button-hover-icon-sub-color: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color: var(--tt-gray-dark-a-300);
  --tt-button-active-icon-sub-color-emphasized: var(--tt-gray-dark-a-400);
  --tt-button-active-icon-sub-color-subdued: var(--tt-gray-dark-a-300);
  --tt-button-disabled-icon-sub-color: var(--tt-gray-dark-a-100);
}

.tiptap-button[data-style="secondary"] {
  --tt-button-default-dropdown-arrows-color: var(--white);
  --tt-button-hover-dropdown-arrows-color: var(--white);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-light-a-700);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-light-a-700);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-light-a-400);
}

.dark .tiptap-button[data-style="secondary"] {
  --tt-button-default-dropdown-arrows-color: var(--black);
  --tt-button-hover-dropdown-arrows-color: var(--black);
  --tt-button-active-dropdown-arrows-color: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-emphasized: var(--tt-gray-dark-a-600);
  --tt-button-active-dropdown-arrows-color-subdued: var(--tt-gray-dark-a-600);
  --tt-button-disabled-dropdown-arrows-color: var(--tt-gray-dark-a-400);
}

/* components/tiptap-ui-primitive/button/button.scss */
.tiptap-button {
  font-feature-settings: "salt" on, "cv01" on;
  display: flex;
  border-radius: var(--tt-radius-lg, .75rem);
  transition-property: background, color, opacity;
  transition-duration: var(--tt-transition-duration-default);
  transition-timing-function: var(--tt-transition-easing-default);
  border: none;
  justify-content: center;
  align-items:  center;
  gap: .25rem;
  min-width: 2rem;
  height: 2rem;
  padding: .5rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1.15;
}

.tiptap-button:focus-visible {
  outline: none;
}

.tiptap-button[data-highlighted="true"], .tiptap-button[data-focus-visible="true"] {
  background-color: var(--tt-button-hover-bg-color);
  color: var(--tt-button-hover-text-color);
}

.tiptap-button[data-weight="small"] {
  width: 1.5rem;
  min-width: 1.5rem;
  padding-left: 0;
  padding-right: 0;
}

.tiptap-button[data-size="large"] {
  min-width: 2.375rem;
  height: 2.375rem;
  padding: .625rem;
  font-size: .9375rem;
}

.tiptap-button[data-size="small"] {
  border-radius: var(--tt-radius-md, .5rem);
  min-width: 1.5rem;
  height: 1.5rem;
  padding: .3125rem;
  font-size: .75rem;
  line-height: 1.2;
}

.tiptap-button .tiptap-button-text {
  text-align: left;
  flex-grow: 1;
  padding: 0 .125rem;
  line-height: 1.5rem;
}

.tiptap-button[data-text-trim="on"] .tiptap-button-text {
  text-overflow: ellipsis;
  overflow: hidden;
}

.tiptap-button .tiptap-button-icon, .tiptap-button .tiptap-button-icon-sub, .tiptap-button .tiptap-button-dropdown-arrows, .tiptap-button .tiptap-button-dropdown-small {
  flex-shrink: 0;
}

.tiptap-button .tiptap-button-icon {
  width: 1rem;
  height: 1rem;
}

.tiptap-button[data-size="large"] .tiptap-button-icon {
  width: 1.125rem;
  height: 1.125rem;
}

.tiptap-button[data-size="small"] .tiptap-button-icon {
  width: .875rem;
  height: .875rem;
}

.tiptap-button .tiptap-button-icon-sub {
  width: 1rem;
  height: 1rem;
}

.tiptap-button[data-size="large"] .tiptap-button-icon-sub {
  width: 1.125rem;
  height: 1.125rem;
}

.tiptap-button[data-size="small"] .tiptap-button-icon-sub {
  width: .875rem;
  height: .875rem;
}

.tiptap-button .tiptap-button-dropdown-arrows {
  width: .75rem;
  height: .75rem;
}

.tiptap-button[data-size="large"] .tiptap-button-dropdown-arrows {
  width: .875rem;
  height: .875rem;
}

.tiptap-button[data-size="small"] .tiptap-button-dropdown-arrows, .tiptap-button .tiptap-button-dropdown-small {
  width: .625rem;
  height: .625rem;
}

.tiptap-button[data-size="large"] .tiptap-button-dropdown-small {
  width: .75rem;
  height: .75rem;
}

.tiptap-button[data-size="small"] .tiptap-button-dropdown-small {
  width: .5rem;
  height: .5rem;
}

.tiptap-button:has( > svg):not(:has( > :not(svg))) {
  gap: .125rem;
}

.tiptap-button:has( > svg):not(:has( > :not(svg)))[data-size="large"] {
  gap: .125rem;
}

.tiptap-button:has( > svg):not(:has( > :not(svg)))[data-size="small"] {
  gap: .125rem;
}

.tiptap-button:has( > svg:nth-of-type(2)):has( > .tiptap-button-dropdown-small):not(:has( > svg:nth-of-type(3))):not(:has( > .tiptap-button-text)) {
  gap: 0;
  padding-right: .25rem;
}

.tiptap-button:has( > svg:nth-of-type(2)):has( > .tiptap-button-dropdown-small):not(:has( > svg:nth-of-type(3))):not(:has( > .tiptap-button-text))[data-size="large"] {
  padding-right: .375rem;
}

.tiptap-button:has( > svg:nth-of-type(2)):has( > .tiptap-button-dropdown-small):not(:has( > svg:nth-of-type(3))):not(:has( > .tiptap-button-text))[data-size="small"] {
  padding-right: .25rem;
}

.tiptap-button .tiptap-button-emoji {
  display: flex;
  justify-content: center;
  width: 1rem;
}

.tiptap-button[data-size="large"] .tiptap-button-emoji {
  width: 1.125rem;
}

.tiptap-button[data-size="small"] .tiptap-button-emoji {
  width: .875rem;
}

.tiptap-button[data-variant="check"] {
  cursor: pointer;
  justify-content: flex-start;
  width: 100%;
}

.tiptap-button[data-variant="check"] .tiptap-button-text {
  padding: 0;
}

.tiptap-button[data-variant="check"] .tiptap-button-check {
  display: grid;
  border: 1px solid var(--tt-button-check-border-color);
  background-color: var(--tt-button-check-bg-color);
  color: #0000;
  transition-property: background-color, border-color, color;
  transition-duration: var(--tt-transition-duration-default);
  transition-timing-function: var(--tt-transition-easing-default);
  border-radius: .25rem;
  flex-shrink: 0;
  place-content:  center;
  width: 1rem;
  height: 1rem;
  margin-left: auto;
}

.tiptap-button[data-variant="check"] .tiptap-button-check > svg {
  width: .875rem;
  height: .875rem;
}

.tiptap-button[data-variant="check"]:hover:not([disabled]):not([aria-checked="true"]):not([aria-checked="mixed"]) .tiptap-button-check {
  border-color: var(--tt-button-check-hover-border-color);
  background-color: var(--tt-button-check-hover-bg-color);
}

.tiptap-button[data-variant="check"][aria-checked="true"], .tiptap-button[data-variant="check"][aria-checked="mixed"] {
  color: var(--tt-button-check-checked-text-color);
}

.tiptap-button[data-variant="check"][aria-checked="true"] .tiptap-button-check, .tiptap-button[data-variant="check"][aria-checked="mixed"] .tiptap-button-check {
  border-color: var(--tt-button-check-checked-border-color);
  background-color: var(--tt-button-check-checked-bg-color);
  color: var(--tt-button-check-checked-icon-color);
}

.tiptap-button[data-variant="check"][aria-checked="mixed"] .tiptap-button-check:after {
  content: "";
  background-color: currentColor;
  border-radius: 999px;
  width: .5rem;
  height: .125rem;
}

.tiptap-button[data-variant="check"][aria-checked="mixed"] .tiptap-button-check > svg {
  display: none;
}

.tiptap-button[data-variant="check"]:focus-visible {
  box-shadow: 0 0 0 3px var(--tt-button-check-focus-ring-color);
}

.tiptap-button[data-variant="check"]:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.tiptap-button {
  background-color: var(--tt-button-default-bg-color);
  color: var(--tt-button-default-text-color);
}

.tiptap-button .tiptap-button-icon {
  color: var(--tt-button-default-icon-color);
}

.tiptap-button .tiptap-button-icon-sub {
  color: var(--tt-button-default-icon-sub-color);
}

.tiptap-button .tiptap-button-dropdown-arrows, .tiptap-button .tiptap-button-dropdown-small {
  color: var(--tt-button-default-dropdown-arrows-color);
}

.tiptap-button:hover:not([data-active-item="true"]):not([disabled]), .tiptap-button[data-active-item="true"]:not([disabled]), .tiptap-button[data-highlighted]:not([disabled]):not([data-highlighted="false"]) {
  background-color: var(--tt-button-hover-bg-color);
  color: var(--tt-button-hover-text-color);
}

.tiptap-button:hover:not([data-active-item="true"]):not([disabled]) .tiptap-button-icon, .tiptap-button[data-active-item="true"]:not([disabled]) .tiptap-button-icon, .tiptap-button[data-highlighted]:not([disabled]):not([data-highlighted="false"]) .tiptap-button-icon {
  color: var(--tt-button-hover-icon-color);
}

.tiptap-button:hover:not([data-active-item="true"]):not([disabled]) .tiptap-button-icon-sub, .tiptap-button[data-active-item="true"]:not([disabled]) .tiptap-button-icon-sub, .tiptap-button[data-highlighted]:not([disabled]):not([data-highlighted="false"]) .tiptap-button-icon-sub {
  color: var(--tt-button-hover-icon-sub-color);
}

.tiptap-button:hover:not([data-active-item="true"]):not([disabled]) .tiptap-button-dropdown-arrows, .tiptap-button:hover:not([data-active-item="true"]):not([disabled]) .tiptap-button-dropdown-small, .tiptap-button[data-active-item="true"]:not([disabled]) .tiptap-button-dropdown-arrows, .tiptap-button[data-active-item="true"]:not([disabled]) .tiptap-button-dropdown-small, .tiptap-button[data-highlighted]:not([disabled]):not([data-highlighted="false"]) .tiptap-button-dropdown-arrows, .tiptap-button[data-highlighted]:not([disabled]):not([data-highlighted="false"]) .tiptap-button-dropdown-small {
  color: var(--tt-button-hover-dropdown-arrows-color);
}

.tiptap-button[data-active-state="on"]:not([disabled]), .tiptap-button[data-state="open"]:not([disabled]) {
  background-color: var(--tt-button-active-bg-color);
  color: var(--tt-button-active-text-color);
}

.tiptap-button[data-active-state="on"]:not([disabled]) .tiptap-button-icon, .tiptap-button[data-state="open"]:not([disabled]) .tiptap-button-icon {
  color: var(--tt-button-active-icon-color);
}

.tiptap-button[data-active-state="on"]:not([disabled]) .tiptap-button-icon-sub, .tiptap-button[data-state="open"]:not([disabled]) .tiptap-button-icon-sub {
  color: var(--tt-button-active-icon-sub-color);
}

.tiptap-button[data-active-state="on"]:not([disabled]) .tiptap-button-dropdown-arrows, .tiptap-button[data-active-state="on"]:not([disabled]) .tiptap-button-dropdown-small, .tiptap-button[data-state="open"]:not([disabled]) .tiptap-button-dropdown-arrows, .tiptap-button[data-state="open"]:not([disabled]) .tiptap-button-dropdown-small {
  color: var(--tt-button-active-dropdown-arrows-color);
}

.tiptap-button[data-active-state="on"]:not([disabled]):hover, .tiptap-button[data-state="open"]:not([disabled]):hover {
  background-color: var(--tt-button-active-hover-bg-color);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"], .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"] {
  background-color: var(--tt-button-active-bg-color-emphasized);
  color: var(--tt-button-active-text-color-emphasized);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-icon, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-icon {
  color: var(--tt-button-active-icon-color-emphasized);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-icon-sub, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-icon-sub {
  color: var(--tt-button-active-icon-sub-color-emphasized);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-dropdown-arrows, .tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-dropdown-small, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-dropdown-arrows, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"] .tiptap-button-dropdown-small {
  color: var(--tt-button-active-dropdown-arrows-color-emphasized);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="emphasized"]:hover, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="emphasized"]:hover {
  background-color: var(--tt-button-active-hover-bg-color-emphasized);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"], .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"] {
  background-color: var(--tt-button-active-bg-color-subdued);
  color: var(--tt-button-active-text-color-subdued);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"] .tiptap-button-icon, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"] .tiptap-button-icon {
  color: var(--tt-button-active-icon-color-subdued);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"] .tiptap-button-icon-sub, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"] .tiptap-button-icon-sub {
  color: var(--tt-button-active-icon-sub-color-subdued);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"] .tiptap-button-dropdown-arrows, .tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"] .tiptap-button-dropdown-small, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"] .tiptap-button-dropdown-arrows, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"] .tiptap-button-dropdown-small {
  color: var(--tt-button-active-dropdown-arrows-color-subdued);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"]:hover, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"]:hover {
  background-color: var(--tt-button-active-hover-bg-color-subdued);
}

.tiptap-button[data-active-state="on"]:not([disabled])[data-appearance="subdued"]:hover .tiptap-button-icon, .tiptap-button[data-state="open"]:not([disabled])[data-appearance="subdued"]:hover .tiptap-button-icon {
  color: var(--tt-button-active-icon-color-subdued);
}

.tiptap-button:disabled {
  background-color: var(--tt-button-disabled-bg-color);
  color: var(--tt-button-disabled-text-color);
}

.tiptap-button:disabled .tiptap-button-icon {
  color: var(--tt-button-disabled-icon-color);
}

/* components/tiptap-ui-primitive/badge/badge-colors.scss */
.tiptap-badge {
  --tt-badge-border-color: var(--tt-gray-light-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-light-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-light-a-600);
  --tt-badge-text-color: var(--tt-gray-light-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-text-color-emphasized: var(--tt-gray-light-a-600);
  --tt-badge-bg-color: var(--white);
  --tt-badge-bg-color-subdued: var(--white);
  --tt-badge-bg-color-emphasized: var(--white);
  --tt-badge-icon-color: var(--tt-gray-light-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-600);
}

.dark .tiptap-badge {
  --tt-badge-border-color: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-dark-a-500);
  --tt-badge-text-color: var(--tt-gray-dark-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-text-color-emphasized: var(--tt-gray-dark-a-600);
  --tt-badge-bg-color: var(--black);
  --tt-badge-bg-color-subdued: var(--black);
  --tt-badge-bg-color-emphasized: var(--black);
  --tt-badge-icon-color: var(--tt-gray-dark-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-400);
}

.tiptap-badge[data-style="ghost"] {
  --tt-badge-border-color: var(--tt-gray-light-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-light-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-light-a-600);
  --tt-badge-text-color: var(--tt-gray-light-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-text-color-emphasized: var(--tt-gray-light-a-600);
  --tt-badge-bg-color: var(--transparent);
  --tt-badge-bg-color-subdued: var(--transparent);
  --tt-badge-bg-color-emphasized: var(--transparent);
  --tt-badge-icon-color: var(--tt-gray-light-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-600);
}

.dark .tiptap-badge[data-style="ghost"] {
  --tt-badge-border-color: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-dark-a-500);
  --tt-badge-text-color: var(--tt-gray-dark-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-text-color-emphasized: var(--tt-gray-dark-a-600);
  --tt-badge-bg-color: var(--transparent);
  --tt-badge-bg-color-subdued: var(--transparent);
  --tt-badge-bg-color-emphasized: var(--transparent);
  --tt-badge-icon-color: var(--tt-gray-dark-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-400);
}

.tiptap-badge[data-style="gray"] {
  --tt-badge-border-color: var(--tt-gray-light-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-light-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-light-a-500);
  --tt-badge-text-color: var(--tt-gray-light-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-text-color-emphasized: var(--white);
  --tt-badge-bg-color: var(--tt-gray-light-a-100);
  --tt-badge-bg-color-subdued: var(--tt-gray-light-a-50);
  --tt-badge-bg-color-emphasized: var(--tt-gray-light-a-700);
  --tt-badge-icon-color: var(--tt-gray-light-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-light-a-400);
  --tt-badge-icon-color-emphasized: var(--white);
}

.dark .tiptap-badge[data-style="gray"] {
  --tt-badge-border-color: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-subdued: var(--tt-gray-dark-a-200);
  --tt-badge-border-color-emphasized: var(--tt-gray-dark-a-500);
  --tt-badge-text-color: var(--tt-gray-dark-a-500);
  --tt-badge-text-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-text-color-emphasized: var(--black);
  --tt-badge-bg-color: var(--tt-gray-dark-a-100);
  --tt-badge-bg-color-subdued: var(--tt-gray-dark-a-50);
  --tt-badge-bg-color-emphasized: var(--tt-gray-dark-a-800);
  --tt-badge-icon-color: var(--tt-gray-dark-a-500);
  --tt-badge-icon-color-subdued: var(--tt-gray-dark-a-400);
  --tt-badge-icon-color-emphasized: var(--black);
}

.tiptap-badge[data-style="green"] {
  --tt-badge-border-color: var(--tt-color-green-inc-2);
  --tt-badge-border-color-subdued: var(--tt-color-green-inc-3);
  --tt-badge-border-color-emphasized: var(--tt-color-green-dec-2);
  --tt-badge-text-color: var(--tt-color-green-dec-3);
  --tt-badge-text-color-subdued: var(--tt-color-green-dec-2);
  --tt-badge-text-color-emphasized: var(--tt-color-green-inc-5);
  --tt-badge-bg-color: var(--tt-color-green-inc-4);
  --tt-badge-bg-color-subdued: var(--tt-color-green-inc-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-green-dec-1);
  --tt-badge-icon-color: var(--tt-color-green-dec-3);
  --tt-badge-icon-color-subdued: var(--tt-color-green-dec-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-green-inc-5);
}

.dark .tiptap-badge[data-style="green"] {
  --tt-badge-border-color: var(--tt-color-green-dec-2);
  --tt-badge-border-color-subdued: var(--tt-color-green-dec-3);
  --tt-badge-border-color-emphasized: var(--tt-color-green-base);
  --tt-badge-text-color: var(--tt-color-green-inc-3);
  --tt-badge-text-color-subdued: var(--tt-color-green-inc-2);
  --tt-badge-text-color-emphasized: var(--tt-color-green-dec-5);
  --tt-badge-bg-color: var(--tt-color-green-dec-4);
  --tt-badge-bg-color-subdued: var(--tt-color-green-dec-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-green-inc-1);
  --tt-badge-icon-color: var(--tt-color-green-inc-3);
  --tt-badge-icon-color-subdued: var(--tt-color-green-inc-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-green-dec-5);
}

.tiptap-badge[data-style="yellow"] {
  --tt-badge-border-color: var(--tt-color-yellow-inc-2);
  --tt-badge-border-color-subdued: var(--tt-color-yellow-inc-3);
  --tt-badge-border-color-emphasized: var(--tt-color-yellow-dec-1);
  --tt-badge-text-color: var(--tt-color-yellow-dec-3);
  --tt-badge-text-color-subdued: var(--tt-color-yellow-dec-2);
  --tt-badge-text-color-emphasized: var(--tt-color-yellow-dec-3);
  --tt-badge-bg-color: var(--tt-color-yellow-inc-4);
  --tt-badge-bg-color-subdued: var(--tt-color-yellow-inc-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-yellow-base);
  --tt-badge-icon-color: var(--tt-color-yellow-dec-3);
  --tt-badge-icon-color-subdued: var(--tt-color-yellow-dec-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-yellow-dec-3);
}

.dark .tiptap-badge[data-style="yellow"] {
  --tt-badge-border-color: var(--tt-color-yellow-dec-2);
  --tt-badge-border-color-subdued: var(--tt-color-yellow-dec-3);
  --tt-badge-border-color-emphasized: var(--tt-color-yellow-inc-1);
  --tt-badge-text-color: var(--tt-color-yellow-inc-3);
  --tt-badge-text-color-subdued: var(--tt-color-yellow-inc-2);
  --tt-badge-text-color-emphasized: var(--tt-color-yellow-dec-3);
  --tt-badge-bg-color: var(--tt-color-yellow-dec-4);
  --tt-badge-bg-color-subdued: var(--tt-color-yellow-dec-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-yellow-base);
  --tt-badge-icon-color: var(--tt-color-yellow-inc-3);
  --tt-badge-icon-color-subdued: var(--tt-color-yellow-inc-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-yellow-dec-3);
}

.tiptap-badge[data-style="red"] {
  --tt-badge-border-color: var(--tt-color-red-inc-2);
  --tt-badge-border-color-subdued: var(--tt-color-red-inc-3);
  --tt-badge-border-color-emphasized: var(--tt-color-red-dec-2);
  --tt-badge-text-color: var(--tt-color-red-dec-3);
  --tt-badge-text-color-subdued: var(--tt-color-red-dec-2);
  --tt-badge-text-color-emphasized: var(--tt-color-red-inc-5);
  --tt-badge-bg-color: var(--tt-color-red-inc-4);
  --tt-badge-bg-color-subdued: var(--tt-color-red-inc-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-red-dec-1);
  --tt-badge-icon-color: var(--tt-color-red-dec-3);
  --tt-badge-icon-color-subdued: var(--tt-color-red-dec-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-red-inc-5);
}

.dark .tiptap-badge[data-style="red"] {
  --tt-badge-border-color: var(--tt-color-red-dec-2);
  --tt-badge-border-color-subdued: var(--tt-color-red-dec-3);
  --tt-badge-border-color-emphasized: var(--tt-color-red-base);
  --tt-badge-text-color: var(--tt-color-red-inc-3);
  --tt-badge-text-color-subdued: var(--tt-color-red-inc-2);
  --tt-badge-text-color-emphasized: var(--tt-color-red-dec-5);
  --tt-badge-bg-color: var(--tt-color-red-dec-4);
  --tt-badge-bg-color-subdued: var(--tt-color-red-dec-5);
  --tt-badge-bg-color-emphasized: var(--tt-color-red-inc-1);
  --tt-badge-icon-color: var(--tt-color-red-inc-3);
  --tt-badge-icon-color-subdued: var(--tt-color-red-inc-2);
  --tt-badge-icon-color-emphasized: var(--tt-color-red-dec-5);
}

.tiptap-badge[data-style="brand"] {
  --tt-badge-border-color: var(--tt-brand-color-300);
  --tt-badge-border-color-subdued: var(--tt-brand-color-200);
  --tt-badge-border-color-emphasized: var(--tt-brand-color-600);
  --tt-badge-text-color: var(--tt-brand-color-800);
  --tt-badge-text-color-subdued: var(--tt-brand-color-700);
  --tt-badge-text-color-emphasized: var(--tt-brand-color-50);
  --tt-badge-bg-color: var(--tt-brand-color-100);
  --tt-badge-bg-color-subdued: var(--tt-brand-color-50);
  --tt-badge-bg-color-emphasized: var(--tt-brand-color-600);
  --tt-badge-icon-color: var(--tt-brand-color-800);
  --tt-badge-icon-color-subdued: var(--tt-brand-color-700);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-100);
}

.dark .tiptap-badge[data-style="brand"] {
  --tt-badge-border-color: var(--tt-brand-color-700);
  --tt-badge-border-color-subdued: var(--tt-brand-color-800);
  --tt-badge-border-color-emphasized: var(--tt-brand-color-400);
  --tt-badge-text-color: var(--tt-brand-color-200);
  --tt-badge-text-color-subdued: var(--tt-brand-color-300);
  --tt-badge-text-color-emphasized: var(--tt-brand-color-950);
  --tt-badge-bg-color: var(--tt-brand-color-900);
  --tt-badge-bg-color-subdued: var(--tt-brand-color-950);
  --tt-badge-bg-color-emphasized: var(--tt-brand-color-400);
  --tt-badge-icon-color: var(--tt-brand-color-200);
  --tt-badge-icon-color-subdued: var(--tt-brand-color-300);
  --tt-badge-icon-color-emphasized: var(--tt-brand-color-900);
}

/* components/tiptap-ui-primitive/badge/badge-group.scss */
.tiptap-badge-group {
  display: flex;
  flex-wrap: wrap;
  align-items:  center;
  gap: .25rem;
}

.tiptap-badge-group [data-orientation="vertical"] {
  flex-direction: column;
}

.tiptap-badge-group [data-orientation="horizontal"] {
  flex-direction: row;
}

/* components/tiptap-ui-primitive/badge/badge.scss */
.tiptap-badge {
  font-feature-settings: "salt" on, "cv01" on;
  display: flex;
  border-radius: var(--tt-radius-sm, .375rem);
  transition-property: background, color, opacity;
  transition-duration: var(--tt-transition-duration-default);
  transition-timing-function: var(--tt-transition-easing-default);
  border: 1px solid;
  justify-content: center;
  align-items:  center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: .25rem;
  font-size: .625rem;
  font-weight: 700;
  line-height: 1.15;
}

.tiptap-badge[data-size="large"] {
  border-radius: var(--tt-radius-md, .375rem);
  min-width: 1.5rem;
  height: 1.5rem;
  padding: .375rem;
  font-size: .75rem;
}

.tiptap-badge[data-size="small"] {
  border-radius: var(--tt-radius-xs, .25rem);
  min-width: 1rem;
  height: 1rem;
  padding: .125rem;
}

.tiptap-badge .tiptap-badge-text {
  text-align: left;
  flex-grow: 1;
  padding: 0 .125rem;
}

.tiptap-badge[data-text-trim="on"] .tiptap-badge-text {
  text-overflow: ellipsis;
  overflow: hidden;
}

.tiptap-badge .tiptap-badge-icon {
  pointer-events: none;
  flex-shrink: 0;
  width: .625rem;
  height: .625rem;
}

.tiptap-badge[data-size="large"] .tiptap-badge-icon {
  width: .75rem;
  height: .75rem;
}

.tiptap-badge {
  background-color: var(--tt-badge-bg-color);
  border-color: var(--tt-badge-border-color);
  color: var(--tt-badge-text-color);
}

.tiptap-badge .tiptap-badge-icon {
  color: var(--tt-badge-icon-color);
}

.tiptap-badge[data-appearance="emphasized"] {
  background-color: var(--tt-badge-bg-color-emphasized);
  border-color: var(--tt-badge-border-color-emphasized);
  color: var(--tt-badge-text-color-emphasized);
}

.tiptap-badge[data-appearance="emphasized"] .tiptap-badge-icon {
  color: var(--tt-badge-icon-color-emphasized);
}

.tiptap-badge[data-appearance="subdued"] {
  background-color: var(--tt-badge-bg-color-subdued);
  border-color: var(--tt-badge-border-color-subdued);
  color: var(--tt-badge-text-color-subdued);
}

.tiptap-badge[data-appearance="subdued"] .tiptap-badge-icon {
  color: var(--tt-badge-icon-color-subdued);
}

/* components/tiptap-ui-primitive/separator/separator.scss */
.tiptap-separator {
  --tt-link-border-color: var(--tt-gray-light-a-200);
}

.dark .tiptap-separator {
  --tt-link-border-color: var(--tt-gray-dark-a-200);
}

.tiptap-separator {
  background-color: var(--tt-link-border-color);
  flex-shrink: 0;
}

.tiptap-separator[data-orientation="horizontal"] {
  width: 100%;
  height: 1px;
  margin: .5rem 0;
}

.tiptap-separator[data-orientation="vertical"] {
  width: 1px;
  height: 1.5rem;
}

/* components/bundle/tiptap-node/image-upload-node/image-upload-node.scss */
:root {
  --tiptap-image-upload-active: var(--tt-brand-color-500);
  --tiptap-image-upload-progress-bg: var(--tt-brand-color-50);
  --tiptap-image-upload-icon-bg: var(--tt-brand-color-500);
  --tiptap-image-upload-text-color: var(--tt-gray-light-a-700);
  --tiptap-image-upload-subtext-color: var(--tt-gray-light-a-400);
  --tiptap-image-upload-border: var(--tt-gray-light-a-300);
  --tiptap-image-upload-border-hover: var(--tt-gray-light-a-400);
  --tiptap-image-upload-border-active: var(--tt-brand-color-500);
  --tiptap-image-upload-icon-doc-bg: var(--tt-gray-light-a-200);
  --tiptap-image-upload-icon-doc-border: var(--tt-gray-light-300);
  --tiptap-image-upload-icon-color: var(--white);
}

.dark {
  --tiptap-image-upload-active: var(--tt-brand-color-400);
  --tiptap-image-upload-progress-bg: var(--tt-brand-color-900);
  --tiptap-image-upload-icon-bg: var(--tt-brand-color-400);
  --tiptap-image-upload-text-color: var(--tt-gray-dark-a-700);
  --tiptap-image-upload-subtext-color: var(--tt-gray-dark-a-400);
  --tiptap-image-upload-border: var(--tt-gray-dark-a-300);
  --tiptap-image-upload-border-hover: var(--tt-gray-dark-a-400);
  --tiptap-image-upload-border-active: var(--tt-brand-color-400);
  --tiptap-image-upload-icon-doc-bg: var(--tt-gray-dark-a-200);
  --tiptap-image-upload-icon-doc-border: var(--tt-gray-dark-300);
  --tiptap-image-upload-icon-color: var(--black);
}

.tiptap-image-upload {
  margin: 2rem 0;
}

.tiptap-image-upload input[type="file"] {
  display: none;
}

.tiptap-image-upload .tiptap-image-upload-dropzone {
  position: relative;
  display: inline-flex;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  justify-content: center;
  align-items:  flex-start;
  width: 3.125rem;
  height: 3.75rem;
}

.tiptap-image-upload .tiptap-image-upload-icon-container {
  position: absolute;
  background-color: var(--tiptap-image-upload-icon-bg);
  border-radius: var(--tt-radius-lg, .75rem);
  display: flex;
  justify-content: center;
  align-items:  center;
  width: 1.75rem;
  height: 1.75rem;
  bottom: 0;
  right: 0;
}

.tiptap-image-upload .tiptap-image-upload-icon {
  color: var(--tiptap-image-upload-icon-color);
  width: .875rem;
  height: .875rem;
}

.tiptap-image-upload .tiptap-image-upload-dropzone-rect-primary {
  color: var(--tiptap-image-upload-icon-doc-bg);
  position: absolute;
}

.tiptap-image-upload .tiptap-image-upload-dropzone-rect-secondary {
  position: absolute;
  color: var(--tiptap-image-upload-icon-doc-border);
  top: 0;
  bottom: 0;
  right: .25rem;
}

.tiptap-image-upload .tiptap-image-upload-text {
  color: var(--tiptap-image-upload-text-color);
  font-size: .875rem;
  font-weight: 500;
  line-height: normal;
}

.tiptap-image-upload .tiptap-image-upload-text em {
  text-decoration: underline;
  font-style: normal;
}

.tiptap-image-upload .tiptap-image-upload-subtext {
  color: var(--tiptap-image-upload-subtext-color);
  font-size: .75rem;
  font-weight: 600;
  line-height: normal;
}

.tiptap-image-upload .tiptap-image-upload-drag-area {
  border: 1.5px dashed var(--tiptap-image-upload-border);
  border-radius: var(--tt-radius-md, .5rem);
  text-align: center;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  padding: 2rem 1.5rem;
  transition: all .2s;
}

.tiptap-image-upload .tiptap-image-upload-drag-area:hover {
  border-color: var(--tiptap-image-upload-border-hover);
}

.tiptap-image-upload .tiptap-image-upload-drag-area.drag-active {
  border-color: var(--tiptap-image-upload-border-active);
  background-color: rgba(var(--tiptap-image-upload-active-rgb, 0, 123, 255), .05);
}

.tiptap-image-upload .tiptap-image-upload-drag-area.drag-over {
  border-color: var(--tiptap-image-upload-border-active);
  background-color: rgba(var(--tiptap-image-upload-active-rgb, 0, 123, 255), .1);
}

.tiptap-image-upload .tiptap-image-upload-content {
  display: flex;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  flex-direction: column;
  justify-content: center;
  align-items:  center;
  gap: .25rem;
}

.tiptap-image-upload .tiptap-image-upload-previews {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.tiptap-image-upload .tiptap-image-upload-header {
  display: flex;
  border-bottom: 1px solid var(--tiptap-image-upload-border);
  justify-content: space-between;
  align-items:  center;
  margin-bottom: .5rem;
  padding: .5rem 0;
}

.tiptap-image-upload .tiptap-image-upload-header span {
  color: var(--tiptap-image-upload-text-color);
  font-size: .875rem;
  font-weight: 500;
}

.tiptap-image-upload .tiptap-image-upload-preview {
  position: relative;
  border-radius: var(--tt-radius-md, .5rem);
  overflow: hidden;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-progress {
  position: absolute;
  background-color: var(--tiptap-image-upload-progress-bg);
  transition: all .3s ease-out;
  inset: 0;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-preview-content {
  position: relative;
  border: 1px solid var(--tiptap-image-upload-border);
  border-radius: var(--tt-radius-md, .5rem);
  display: flex;
  justify-content: space-between;
  align-items:  center;
  padding: 1rem;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-file-info {
  display: flex;
  align-items:  center;
  gap: .75rem;
  height: 2rem;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-file-info .tiptap-image-upload-file-icon {
  background-color: var(--tiptap-image-upload-icon-bg);
  border-radius: var(--tt-radius-lg, .75rem);
  padding: .5rem;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-file-info .tiptap-image-upload-file-icon svg {
  color: var(--tiptap-image-upload-icon-color);
  width: .875rem;
  height: .875rem;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-details {
  display: flex;
  flex-direction: column;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-actions {
  display: flex;
  align-items:  center;
  gap: .5rem;
}

.tiptap-image-upload .tiptap-image-upload-preview .tiptap-image-upload-actions .tiptap-image-upload-progress-text {
  color: var(--tiptap-image-upload-border-active);
  font-size: .75rem;
  font-weight: 600;
}

.tiptap.ProseMirror.ProseMirror-focused .ProseMirror-selectednode .tiptap-image-upload-drag-area {
  border-color: var(--tiptap-image-upload-active);
}

@media (max-width: 480px) {
  .tiptap-image-upload .tiptap-image-upload-drag-area {
    padding: 1.5rem 1rem;
  }

  .tiptap-image-upload .tiptap-image-upload-header {
    flex-direction: column;
    align-items:  flex-start;
    gap: .5rem;
  }

  .tiptap-image-upload .tiptap-image-upload-preview-content {
    padding: .75rem;
  }
}

/* components/bundle/tiptap-node/table-node/ui/table-trigger-button/table-grid-selector.scss */
:root {
  --tt-bg: var(--white);
  --tt-selected-bg-color: var(--tt-brand-color-50);
  --tt-selected-border-color: var(--tt-brand-color-400);
  --tt-cell-bg-color: var(--tt-gray-light-50);
  --tt-cell-border-color: var(--tt-gray-light-200);
  --tt-indicator-item-border-color: var(--tt-gray-light-a-200);
  --tt-indicator-icon-color: var(--tt-gray-light-a-400);
  --tt-indicator-delimiter-color: var(--tt-gray-light-a-500);
}

.dark {
  --tt-bg: var(--black);
  --tt-selected-bg-color: var(--tt-brand-color-900);
  --tt-cell-bg-color: var(--tt-gray-dark-100);
  --tt-cell-border-color: var(--tt-gray-dark-200);
  --tt-indicator-item-border-color: var(--tt-gray-dark-a-200);
  --tt-indicator-icon-color: var(--tt-gray-dark-a-400);
  --tt-indicator-delimiter-color: var(--tt-gray-dark-a-500);
}

.tiptap-table-grid {
  display: grid;
  grid-template-columns: repeat(var(--tt-table-columns), 1rem);
  gap: .25rem;
  padding: .25rem;
}

.tiptap-button[data-size="small"].tiptap-table-grid-cell {
  border: 1px solid var(--tt-cell-border-color);
  border-radius: var(--tt-radius-xs);
  background-color: var(--tt-cell-bg-color);
  cursor: pointer;
  width: 1rem;
  min-width: 1rem;
  height: 1rem;
  padding: 0;
  transition: all .15s;
}

.tiptap-button[data-size="small"].tiptap-table-grid-cell.selected {
  background-color: var(--tt-selected-bg-color);
  border-color: var(--tt-selected-border-color);
}

.tiptap-table-size-indicator {
  display: flex;
  justify-content: center;
  align-items:  center;
  gap: .25rem;
  width: 100%;
  margin-top: .25rem;
}

.tiptap-table-size-indicator-item {
  display: flex;
  border: 1px solid var(--tt-indicator-item-border-color);
  border-radius: var(--tt-radius-xl);
  background: var(--tt-bg);
  flex: 1;
  justify-content: center;
  align-items:  center;
  gap: .75rem;
  min-height: 2rem;
  padding: .5rem;
}

.tiptap-table-size-indicator-item .tiptap-table-column-icon, .tiptap-table-size-indicator-item .tiptap-table-row-icon {
  color: var(--tt-indicator-icon-color);
  width: 1rem;
  height: 1rem;
}

.tiptap-table-size-indicator-text {
  text-align: center;
  width: 1.781rem;
  font-size: .875rem;
  font-weight: 400;
}

.tiptap-table-size-indicator-delimiter {
  color: var(--tt-indicator-delimiter-color);
  flex-shrink: 0;
  font-size: .75rem;
  font-weight: 500;
}

/* components/tiptap-ui-primitive/popover/popover.scss */
.tiptap-popover {
  --tt-popover-bg-color: var(--white);
  --tt-popover-border-color: var(--tt-gray-light-a-100);
  --tt-popover-text-color: var(--tt-gray-light-a-600);
}

:root.dark, .dark {
  --tt-popover-border-color: var(--tt-gray-dark-a-50);
  --tt-popover-bg-color: var(--tt-gray-dark-50);
  --tt-popover-text-color: var(--tt-gray-dark-a-600);
}

.tiptap-popover {
  z-index: 50;
  outline: none;
  transform-origin: var(--radix-popover-content-transform-origin);
  max-height: var(--radix-popover-content-available-height);
}

.tiptap-popover > * {
  max-height: var(--radix-popover-content-available-height);
}

.tiptap-popover[data-state="open"] {
  animation: fadeIn .15s cubic-bezier(.16, 1, .3, 1), zoomIn .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-popover[data-state="closed"] {
  animation: fadeOut .15s cubic-bezier(.16, 1, .3, 1), zoomOut .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-popover[data-side="top"], .tiptap-popover[data-side="top-start"], .tiptap-popover[data-side="top-end"] {
  animation: slideFromBottom .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-popover[data-side="right"], .tiptap-popover[data-side="right-start"], .tiptap-popover[data-side="right-end"] {
  animation: slideFromLeft .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-popover[data-side="bottom"], .tiptap-popover[data-side="bottom-start"], .tiptap-popover[data-side="bottom-end"] {
  animation: slideFromTop .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-popover[data-side="left"], .tiptap-popover[data-side="left-start"], .tiptap-popover[data-side="left-end"] {
  animation: slideFromRight .15s cubic-bezier(.16, 1, .3, 1);
}

/* components/tiptap-ui-primitive/card/card.scss */
:root {
  --tiptap-card-bg-color: var(--white);
  --tiptap-card-border-color: var(--tt-gray-light-a-100);
  --tiptap-card-group-label-color: var(--tt-gray-light-a-800);
}

.dark {
  --tiptap-card-bg-color: var(--tt-gray-dark-50);
  --tiptap-card-border-color: var(--tt-gray-dark-a-100);
  --tiptap-card-group-label-color: var(--tt-gray-dark-a-800);
}

.tiptap-card {
  --padding: .375rem;
  --border-width: 1px;
  border-radius: calc(var(--padding)  + var(--tt-radius-lg));
  box-shadow: var(--tt-shadow-elevated-md);
  background-color: var(--tiptap-card-bg-color);
  border: 1px solid var(--tiptap-card-border-color);
  display: flex;
  outline: none;
  position: relative;
  word-wrap: break-word;
  background-clip: border-box;
  flex-direction: column;
  align-items:  center;
  min-width: 0;
}

.tiptap-card-header {
  display: flex;
  border-bottom: var(--border-width) solid var(--tiptap-card-border-color);
  flex: none;
  justify-content: space-between;
  align-items:  center;
  width: 100%;
  padding: .375rem;
}

.tiptap-card-body {
  overflow-y: auto;
  flex: auto;
  padding: .375rem;
}

.tiptap-card-item-group {
  position: relative;
  display: flex;
  vertical-align: middle;
  min-width: max-content;
}

.tiptap-card-item-group[data-orientation="vertical"] {
  flex-direction: column;
  justify-content: center;
}

.tiptap-card-item-group[data-orientation="horizontal"] {
  flex-direction: row;
  align-items:  center;
  gap: .25rem;
}

.tiptap-card-group-label {
  text-transform: capitalize;
  color: var(--tiptap-card-group-label-color);
  padding: .75rem .5rem .25rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: normal;
}

/* components/tiptap-ui-primitive/combobox/combobox.scss */
.tiptap-combobox-popover {
  --tt-combobox-bg-color: var(--white);
  --tt-combobox-border-color: var(--tt-gray-light-a-100);
  --tt-combobox-text-color: var(--tt-gray-light-a-600);
}

.dark .tiptap-combobox-popover {
  --tt-combobox-border-color: var(--tt-gray-dark-a-50);
  --tt-combobox-bg-color: var(--tt-gray-dark-50);
  --tt-combobox-text-color: var(--tt-gray-dark-a-600);
}

.tiptap-combobox-popover {
  --padding: .375rem;
  --border-width: 1px;
  isolation: isolate;
  z-index: 50;
  border-radius: calc(var(--padding)  + var(--tt-radius-lg)  + var(--border-width));
  border: var(--border-width) solid var(--tt-combobox-border-color);
  background-color: var(--tt-combobox-bg-color);
  color: var(--tt-combobox-text-color);
  padding: var(--padding);
  box-shadow: var(--tt-shadow-elevated-md);
  outline: none;
  max-height: var(--popover-available-height);
  overflow-y: auto;
  max-width: 16rem;
  margin-block-start: .375rem;
  margin-block-end: .375rem;
}

.tiptap-combobox-popover:has( > .tiptap-combobox-list) {
  display: flex;
  overflow: hidden;
  flex-direction: column;
}

.tiptap-combobox-popover > .tiptap-combobox-list {
  overflow-y: auto;
  overscroll-behavior: contain;
  flex: auto;
  min-height: 0;
}

.tiptap-combobox-popover:has( > .tiptap-combobox-list:empty) {
  display: none !important;
}

.tiptap-combobox-label {
  display: flex;
  user-select: none;
  align-items:  center;
  gap: .5rem;
  font-size: .875rem;
  font-weight: 500;
  line-height: 1;
}

.group[data-disabled="true"] .tiptap-combobox-label {
  opacity: .5;
  pointer-events: none;
}

input:disabled ~ .tiptap-combobox-label {
  opacity: .5;
  cursor: not-allowed;
}

.tiptap-combobox-label:has( ~ input:disabled) {
  opacity: .5;
  cursor: not-allowed;
}

.tiptap-combobox-group {
  display: none;
}

.tiptap-combobox-group:has([role="menuitem"]) {
  display: block;
}

.tiptap-combobox-group:has([role="option"]) {
  display: block;
}

.tiptap-combobox-group-label {
  --tt-label-color: var(--tt-gray-light-a-800);
}

.dark .tiptap-combobox-group-label {
  --tt-label-color: var(--tt-gray-dark-a-800);
}

.tiptap-combobox-group-label {
  color: var(--tt-label-color);
  margin: .75rem .5rem .25rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: normal;
}

.tiptap-combobox-item {
  width: 100%;
}

/* components/tiptap-ui-primitive/input/input.scss */
:root {
  --tt-input-placeholder: var(--tt-gray-light-a-400);
  --tt-input-border: var(--tt-gray-light-a-200);
  --tt-input-border-focus: var(--tt-gray-light-a-300);
}

.dark {
  --tt-input-placeholder: var(--tt-gray-dark-a-400);
  --tt-input-border: var(--tt-gray-dark-a-200);
  --tt-input-border-focus: var(--tt-gray-dark-a-300);
}

.tiptap-input {
  border-radius: var(--tt-radius-md);
  border: 1px solid var(--tt-input-border);
  outline: none;
  background: none;
  width: 100%;
  min-width: 0;
  height: 2rem;
  padding: .25rem .625rem;
  transition: color, background-color, border-color .15s;
  font-size: 1rem;
}

.tiptap-input::placeholder {
  color: var(--tt-input-placeholder);
}

.tiptap-input:focus-visible {
  border-color: var(--tt-input-border-focus);
}

@media (min-width: 768px) {
  .tiptap-input {
    font-size: .875rem;
  }
}

/* components/tiptap-ui-primitive/textarea/textarea.scss */
:root {
  --tt-textarea-placeholder: var(--tt-gray-light-a-400);
  --tt-textarea-border: var(--tt-gray-light-a-200);
  --tt-textarea-border-focus: var(--tt-gray-light-a-300);
}

.dark {
  --tt-textarea-placeholder: var(--tt-gray-dark-a-400);
  --tt-textarea-border: var(--tt-gray-dark-a-200);
  --tt-textarea-border-focus: var(--tt-gray-dark-a-300);
}

.tiptap-textarea {
  display: flex;
  border: 1px solid var(--tt-textarea-border);
  field-sizing: content;
  outline: none;
  background: none;
  border-radius: .5rem;
  width: 100%;
  min-height: 4rem;
  padding: .5rem .625rem;
  transition: color, background-color, border-color .15s;
  font-size: 1rem;
}

.tiptap-textarea::placeholder {
  color: var(--tt-textarea-placeholder);
}

.tiptap-textarea:focus-visible {
  border-color: var(--tt-textarea-border-focus);
}

@media (min-width: 768px) {
  .tiptap-textarea {
    font-size: .875rem;
  }
}

/* components/tiptap-ui-primitive/input-group/input-group.scss */
:root {
  --tt-ig-placeholder: var(--tt-gray-light-a-400);
  --tt-ig-border: var(--tt-gray-light-a-200);
  --tt-ig-border-focus: var(--tt-gray-light-a-300);
  --tt-ig-addon-color: var(--tt-gray-light-a-400);
}

.dark {
  --tt-ig-placeholder: var(--tt-gray-dark-a-400);
  --tt-ig-border: var(--tt-gray-dark-a-200);
  --tt-ig-border-focus: var(--tt-gray-dark-a-300);
  --tt-ig-addon-color: var(--tt-gray-dark-a-400);
}

.tiptap-input-group {
  position: relative;
  display: flex;
  border: 1px solid var(--tt-ig-border);
  outline: none;
  background-color: #0000;
  border-radius: .5rem;
  align-items:  center;
  width: 100%;
  min-width: 0;
  height: 2rem;
  transition: color, background-color, border-color .15s;
}

.tiptap-input-group:has( > textarea) {
  height: auto;
}

.tiptap-input-group:has( > [data-align="block-end"]) {
  height: auto;
}

.tiptap-input-group:has( > [data-align="block-start"]) {
  height: auto;
}

.tiptap-input-group:has( > [data-align="block-end"]) {
  flex-direction: column;
}

.tiptap-input-group:has( > [data-align="block-start"]) {
  flex-direction: column;
}

.tiptap-input-group:has( > [data-align="inline-end"]) > input {
  padding-right: .375rem;
}

.tiptap-input-group:has( > [data-align="inline-start"]) > input {
  padding-left: .375rem;
}

.tiptap-input-group:has( > [data-align="block-end"]) > input {
  padding-top: .75rem;
}

.tiptap-input-group:has( > [data-align="block-start"]) > input {
  padding-bottom: .75rem;
}

.tiptap-input-group:has([data-slot="tiptap-input-group-control"]:focus-visible) {
  border-color: var(--tt-ig-border-focus);
}

[data-slot="combobox-content"] .tiptap-input-group:focus-within {
  border-color: inherit;
  box-shadow: none;
}

.tiptap-input-group-addon {
  display: flex;
  color: var(--tt-ig-addon-color);
  cursor: text;
  user-select: none;
  justify-content: center;
  align-items:  center;
  gap: .5rem;
  height: auto;
  padding: .375rem 0;
  font-size: .875rem;
  font-weight: 500;
}

.tiptap-input-group-addon > svg:not([class*="size-"]) {
  width: 1rem;
  height: 1rem;
}

.tiptap-input-group-addon > kbd {
  border-radius: 9994px;
}

.tiptap-input-group[data-disabled="true"] .tiptap-input-group-addon {
  opacity: .5;
}

.tiptap-input-group-addon--inline-start {
  order: -1;
  padding-left: .5rem;
}

.tiptap-input-group-addon--inline-start:has( > button) {
  margin-left: -.3rem;
}

.tiptap-input-group-addon--inline-start:has( > kbd) {
  margin-left: -.15rem;
}

.tiptap-input-group-addon--inline-end {
  order: 9999;
  padding-right: .5rem;
}

.tiptap-input-group-addon--inline-end:has( > button) {
  margin-right: -.3rem;
}

.tiptap-input-group-addon--inline-end:has( > kbd) {
  margin-right: -.15rem;
}

.tiptap-input-group-addon--block-start {
  order: -1;
  justify-content: flex-start;
  width: 100%;
  padding: .5rem .625rem 0;
}

.tiptap-input-group-addon--block-start .border-b {
  padding-bottom: .5rem;
}

.tiptap-input-group-addon--block-end {
  order: 9999;
  justify-content: flex-start;
  width: 100%;
  padding: 0 .625rem .5rem;
}

.tiptap-input-group-addon--block-end .border-t {
  padding-top: .5rem;
}

.tiptap-input-group-button {
  display: flex;
  box-shadow: none;
  align-items:  center;
  gap: .5rem;
  font-size: .875rem;
}

.tiptap-input-group-button--xs {
  border-radius: 9996px;
  gap: .25rem;
  height: 1.5rem;
  padding: 0 .375rem;
}

.tiptap-input-group-button--xs > svg:not([class*="size-"]) {
  width: .875rem;
  height: .875rem;
}

.tiptap-input-group-button--icon-xs {
  border-radius: 9996px;
  width: 1.5rem;
  min-width: auto;
  height: 1.5rem;
  padding: 0;
}

.tiptap-input-group-button--icon-sm {
  width: 2rem;
  height: 2rem;
  padding: 0;
}

.tiptap-input-group-text {
  display: flex;
  color: var(--tt-ig-addon-color);
  align-items:  center;
  gap: .5rem;
  font-size: .875rem;
}

.tiptap-input-group-text svg:not([class*="size-"]) {
  width: 1rem;
  height: 1rem;
}

.tiptap-input-group-text svg {
  pointer-events: none;
}

.tiptap-input-group-control {
  box-shadow: none;
  outline: none;
  background: none;
  border: 0;
  border-radius: 0;
  flex: 1;
}

.tiptap-input-group-control[aria-invalid="true"], .tiptap-input-group-control:disabled {
  box-shadow: none;
  background: none;
}

.tiptap-input-group-control:focus-visible {
  box-shadow: none;
  background: none;
}

@media (prefers-color-scheme: dark) {
  .tiptap-input-group-control, .tiptap-input-group-control:disabled {
    background: none;
  }
}

.tiptap-input-group-control--textarea {
  resize: none;
  padding-block-start: .5rem;
  padding-block-end: .5rem;
}

/* components/tiptap-ui-primitive/menu/menu.scss */
.tiptap-menu-content {
  --tt-combobox-bg-color: var(--white);
  --tt-combobox-border-color: var(--tt-gray-light-a-100);
  --tt-combobox-text-color: var(--tt-gray-light-a-600);
}

.dark .tiptap-menu-content {
  --tt-combobox-border-color: var(--tt-gray-dark-a-50);
  --tt-combobox-bg-color: var(--tt-gray-dark-50);
  --tt-combobox-text-color: var(--tt-gray-dark-a-600);
}

.tiptap-menu-content {
  --padding: .375rem;
  --border-width: 1px;
  z-index: 50;
  display: flex;
  outline: none;
  min-width: var(--popover-anchor-width);
  border-radius: calc(var(--padding)  + var(--tt-radius-lg)  + var(--border-width));
  border: var(--border-width) solid var(--tt-combobox-border-color);
  background-color: var(--tt-combobox-bg-color);
  color: var(--tt-combobox-text-color);
  padding: var(--padding);
  box-shadow: var(--tt-shadow-elevated-md);
  max-height: var(--popover-available-height);
  overflow-y: auto;
  flex-direction: column;
  max-width: 16rem;
  height: 100%;
  margin-block-start: .375rem;
  margin-block-end: .375rem;
}

.tiptap-menu-content:has( > .tiptap-combobox-list) {
  overflow: hidden;
}

.tiptap-menu-content > .tiptap-combobox-list {
  overflow-y: auto;
  overscroll-behavior: contain;
  flex: auto;
  min-height: 0;
}

.tiptap-menu-content:has( > .tiptap-combobox-list:empty) {
  display: none !important;
}

.tiptap-menu-content[data-state="closed"] {
  animation: dropdown-out .1s ease forwards;
}

.tiptap-menu-content[data-state="open"] {
  animation: dropdown-in .1s ease forwards;
}

.tiptap-menu-group {
  display: none;
}

.tiptap-menu-group:has([role="menuitem"]) {
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.tiptap-menu-group:has([role="option"]) {
  display: flex;
  flex-direction: column;
  gap: .1rem;
}

.tiptap-menu-item {
  width: 100%;
}

.tiptap-menu-group-label {
  --tt-label-color: var(--tt-gray-light-a-800);
}

.dark .tiptap-menu-group-label {
  --tt-label-color: var(--tt-gray-dark-a-800);
}

.tiptap-menu-group-label {
  color: var(--tt-label-color);
  margin: .75rem .5rem .25rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: normal;
}

.tiptap-separator {
  --tt-link-border-color: var(--tt-gray-light-a-200);
}

.dark .tiptap-separator {
  --tt-link-border-color: var(--tt-gray-dark-a-200);
}

.tiptap-menu-separator {
  background-color: var(--tt-link-border-color);
  flex-shrink: 0;
  width: 100%;
  height: 1px;
  margin: .5rem 0;
}

@keyframes popover {
  from {
    opacity: 0;
    transform: scale(.95)translateY(-2px);
  }

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

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

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

/* components/tiptap-ui/color-text-button/color-text-button.scss */
.tiptap-button-color-text {
  display: flex;
  position: relative;
  border-radius: var(--tt-radius-xl);
  justify-content: center;
  align-items:  center;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 -.175rem;
  transition: transform .2s;
}

.tiptap-button-color-text:after {
  content: "";
  position: absolute;
  border-radius: inherit;
  box-sizing: border-box;
  border: 1px solid var(--color-text-button-color);
  filter: brightness(150%);
  mix-blend-mode: multiply;
  opacity: .5;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.dark .tiptap-button-color-text:after {
  filter: brightness(140%);
  mix-blend-mode: lighten;
}

.tiptap-button[data-active-state="on"] .tiptap-button-color-text:after {
  filter: brightness(80%);
}

.dark .tiptap-button[data-active-state="on"] .tiptap-button-color-text:after {
  filter: brightness(180%);
}

/* components/tiptap-ui/color-highlight-button/color-highlight-button.scss */
.tiptap-button-highlight {
  position: relative;
  border-radius: var(--tt-radius-xl);
  background-color: var(--highlight-color);
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 -.175rem;
  transition: transform .2s;
}

.tiptap-button-highlight:after {
  content: "";
  position: absolute;
  border-radius: inherit;
  box-sizing: border-box;
  border: 1px solid var(--highlight-color);
  filter: brightness(95%);
  mix-blend-mode: multiply;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.dark .tiptap-button-highlight:after {
  filter: brightness(140%);
  mix-blend-mode: lighten;
}

.tiptap-button[data-active-state="on"] .tiptap-button-highlight:after {
  filter: brightness(80%);
}

.dark .tiptap-button[data-active-state="on"] .tiptap-button-highlight:after {
  filter: brightness(180%);
}

/* components/tiptap-ui/color-text-popover/color-text-popover.scss */
:root {
  --tiptap-ouline-fallback-color: var(--tt-gray-light-a-200);
}

.dark {
  --tiptap-ouline-fallback-color: var(--tt-gray-dark-a-200);
}

.tiptap-button-color-text-popover {
  position: relative;
  border-radius: var(--tt-radius-xl);
  background-color: var(--active-highlight-color);
  display: flex;
  justify-content: center;
  align-items:  center;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 -.175rem;
  transition: transform .2s;
}

.tiptap-button-color-text-popover:after {
  content: "";
  position: absolute;
  border-radius: inherit;
  box-sizing: border-box;
  border: 1px solid var(--active-highlight-color, var(--tiptap-ouline-fallback-color));
  filter: brightness(95%);
  mix-blend-mode: multiply;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.dark .tiptap-button-color-text-popover:after {
  filter: brightness(140%);
  mix-blend-mode: lighten;
}

/* components/tiptap-ui-primitive/button-group/button-group.scss */
.tiptap-button-group {
  display: flex;
  align-items: stretch;
  width: -moz-fit-content;
  width: fit-content;
}

.tiptap-button-group:has( > [data-slot="tiptap-button-group"]) {
  gap: .125rem;
}

.tiptap-button-group > :focus-visible {
  position: relative;
  z-index: 10;
}

.tiptap-button-group > [data-slot="select-trigger"]:not([class*="w-"]) {
  width: -moz-fit-content;
  width: fit-content;
}

.tiptap-button-group > input {
  flex: 1;
}

.tiptap-button-group-horizontal > [data-slot]:has( ~ [data-slot]) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.tiptap-button-group-horizontal > [data-slot] ~ [data-slot] {
  border-left-width: 0;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.tiptap-button-group-vertical {
  flex-direction: column;
}

.tiptap-button-group-vertical > [data-slot]:has( ~ [data-slot]) {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.tiptap-button-group-vertical > [data-slot] ~ [data-slot] {
  border-top-width: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.tiptap-button-group-separator {
  position: relative;
  align-self: stretch;
}

.tiptap-button-group-separator[data-orientation="horizontal"] {
  margin-left: 1px;
  margin-right: 1px;
}

.tiptap-button-group-separator[data-orientation="horizontal"] {
  width: auto;
}

.tiptap-button-group-separator[data-orientation="vertical"] {
  margin-top: 1px;
  margin-bottom: 1px;
}

.tiptap-button-group-separator[data-orientation="vertical"] {
  height: auto;
}

/* components/bundle/tiptap-node/table-node/ui/table-handle-menu/table-handle-menu.scss */
:root {
  --tt-table-handle-bg-color: var(--tt-gray-light-a-100);
}

.dark {
  --tt-table-handle-bg-color: var(--tt-gray-dark-a-100);
}

.tiptap-table-handle-menu {
  display: flex;
  background-color: var(--tt-table-handle-bg-color);
  border-radius: var(--tt-radius-lg);
  cursor: grab;
  border: none;
  justify-content: center;
  align-items:  center;
}

.tiptap-table-handle-menu .tiptap-button-icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.tiptap-table-handle-menu.menu-opened {
  background-color: var(--tt-brand-color-500);
}

.tiptap-table-handle-menu.menu-opened .tiptap-button-icon {
  color: var(--white);
}

.tiptap-table-handle-menu.is-dragging {
  cursor: grabbing;
  background-color: var(--tt-brand-color-500);
}

.tiptap-table-handle-menu.is-dragging .tiptap-button-icon {
  color: var(--white);
}

.tiptap-table-handle-menu.row {
  height: var(--table-handle-ref-height);
  width: .75rem;
}

.tiptap-table-handle-menu.column {
  width: var(--table-handle-ref-width);
  height: .75rem;
}

.tiptap-table-handle-menu.column .tiptap-button-icon {
  transform: rotate(90deg);
}

/* components/bundle/tiptap-node/table-node/ui/table-cell-handle-menu/table-cell-handle-menu.scss */
.expandable-menu-button {
  --button-size: 16px;
  --button-offset: -8px;
  --dot-size-small: 8px;
  --dot-size-large: 16px;
  --dot-offset-small: 3px;
  --dot-offset-large: 0;
  --border-radius-full: 9999px;
  --transition-duration: 50ms;
  --transition-timing: ease;
  --icon-scale-small: .9;
  --icon-scale-large: 1;
  position: absolute;
  top: 50%;
  right: var(--button-offset);
  width: var(--button-size);
  height: var(--button-size);
  border-radius: var(--border-radius-full);
  cursor: pointer;
  display: flex;
  pointer-events: auto;
  background: none;
  justify-content: center;
  align-items:  center;
  transform: translateY(-50%);
}

.expandable-menu-button:before {
  content: "";
  position: absolute;
  top: 50%;
  right: var(--dot-offset-small);
  width: var(--dot-size-small);
  height: var(--dot-size-small);
  background: var(--tt-brand-color-600);
  border-radius: var(--border-radius-full);
  transition: width var(--transition-duration) var(--transition-timing), height var(--transition-duration) var(--transition-timing), right var(--transition-duration) var(--transition-timing), background var(--transition-duration) var(--transition-timing);
  transform: translateY(-50%);
}

.expandable-menu-button svg {
  position: relative;
  z-index: 1;
  width: var(--button-size);
  height: var(--button-size);
  color: var(--white);
  opacity: 0;
  transform: scale(var(--icon-scale-small));
  transition: opacity var(--transition-duration) var(--transition-timing), transform var(--transition-duration) var(--transition-timing);
  pointer-events: none;
  flex-shrink: 0;
}

@media (hover: none) and (pointer: coarse) {
  .expandable-menu-button:before {
    width: var(--dot-size-large);
    height: var(--dot-size-large);
    right: var(--dot-offset-large);
  }

  .expandable-menu-button svg {
    opacity: 1;
    transform: scale(var(--icon-scale-large));
  }
}

@media (hover: hover) {
  .expandable-menu-button:hover:before, .expandable-menu-button.menu-opened:before {
    width: var(--dot-size-large);
    height: var(--dot-size-large);
    right: var(--dot-offset-large);
  }

  .expandable-menu-button:focus-visible:before {
    width: var(--dot-size-large);
    height: var(--dot-size-large);
    right: var(--dot-offset-large);
  }

  .expandable-menu-button:hover svg, .expandable-menu-button.menu-opened svg {
    opacity: 1;
    transform: scale(var(--icon-scale-large));
  }

  .expandable-menu-button:focus-visible svg {
    opacity: 1;
    transform: scale(var(--icon-scale-large));
  }
}

.expandable-menu-button:focus-visible {
  outline: 2px solid var(--tt-brand-color-600);
  outline-offset: 2px;
}

.expandable-menu-button:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.expandable-menu-button:disabled:before {
  background: var(--tt-disabled-color, #ccc);
}

@media (prefers-reduced-motion: reduce) {
  .expandable-menu-button:before, .expandable-menu-button svg {
    transition: none;
  }
}

/* components/bundle/tiptap-node/table-node/ui/table-extend-row-column-button/table-extend-row-column-button.scss */
:root {
  --tt-table-handle-bg-color: var(--tt-gray-light-a-100);
  --tt-table-extend-icon-color: var(--tt-gray-light-a-400);
}

.dark {
  --tt-table-handle-bg-color: var(--tt-gray-dark-a-100);
  --tt-table-extend-icon-color: var(--tt-gray-dark-a-400);
}

.tiptap-table-extend-row-column-button {
  display: flex;
  background-color: var(--tt-table-handle-bg-color);
  border-radius: var(--tt-radius-lg);
  border: none;
  justify-content: center;
  align-items:  center;
}

.tiptap-table-extend-row-column-button .tiptap-button-icon {
  color: var(--tt-table-extend-icon-color);
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.tiptap-table-extend-row-column-button.tiptap-table-row-end-add-remove {
  cursor: row-resize;
  width: 100%;
  height: .75rem;
}

.tiptap-table-extend-row-column-button.tiptap-table-column-end-add-remove {
  cursor: col-resize;
  width: .75rem;
}

/* components/tiptap-ui-primitive/toolbar/toolbar.scss */
:root {
  --tt-toolbar-height: 2.75rem;
  --tt-safe-area-bottom: env(safe-area-inset-bottom, 0px);
  --tt-toolbar-bg-color: var(--white);
  --tt-toolbar-border-color: var(--tt-gray-light-a-100);
}

.dark {
  --tt-toolbar-bg-color: var(--black);
  --tt-toolbar-border-color: var(--tt-gray-dark-a-50);
}

.tiptap-toolbar {
  display: flex;
  align-items:  center;
  gap: .25rem;
}

.tiptap-toolbar-group {
  display: flex;
  align-items:  center;
  gap: .125rem;
}

.tiptap-toolbar-group:empty, .tiptap-toolbar-group:empty + .tiptap-separator, .tiptap-separator + .tiptap-toolbar-group:empty {
  display: none;
}

.tiptap-toolbar[data-variant="fixed"] {
  position: sticky;
  z-index: 50;
  min-height: var(--tt-toolbar-height);
  background: var(--tt-toolbar-bg-color);
  border-bottom: 1px solid var(--tt-toolbar-border-color);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  width: 100%;
  padding: 0 .5rem;
  top: 0;
}

.tiptap-toolbar[data-variant="fixed"]::-webkit-scrollbar {
  display: none;
}

@media (max-width: 480px) {
  .tiptap-toolbar[data-variant="fixed"] {
    position: absolute;
    height: calc(var(--tt-toolbar-height)  + var(--tt-safe-area-bottom));
    border-top: 1px solid var(--tt-toolbar-border-color);
    padding: 0 .5rem var(--tt-safe-area-bottom);
    border-bottom: none;
    flex-wrap: nowrap;
    justify-content: flex-start;
    top: auto;
  }

  .tiptap-toolbar[data-variant="fixed"] .tiptap-toolbar-group {
    flex: none;
  }
}

.tiptap-toolbar[data-variant="floating"] {
  --tt-toolbar-padding: .125rem;
  --tt-toolbar-border-width: 1px;
  border-radius: calc(var(--tt-toolbar-padding)  + var(--tt-radius-lg)  + var(--tt-toolbar-border-width));
  border: var(--tt-toolbar-border-width) solid var(--tt-toolbar-border-color);
  background-color: var(--tt-toolbar-bg-color);
  box-shadow: var(--tt-shadow-elevated-md);
  outline: none;
  overflow: hidden;
  padding: .188rem;
}

.tiptap-toolbar[data-variant="floating"][data-plain="true"] {
  box-shadow: none;
  background-color: #0000;
  border: none;
  border-radius: 0;
  padding: 0;
}

@media screen and (max-width: 480px) {
  .tiptap-toolbar[data-variant="floating"] {
    box-shadow: none;
    border: none;
    border-radius: 0;
    width: 100%;
  }
}

/* components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.scss */
:root {
  --tt-dropdown-menu-bg-color: var(--white);
  --tt-dropdown-menu-text-color: var(--tt-gray-light-a-600);
  --tt-dropdown-menu-label-color: var(--tt-gray-light-a-800);
}

:root.dark, .dark {
  --tt-dropdown-menu-bg-color: var(--tt-gray-dark-50);
  --tt-dropdown-menu-text-color: var(--tt-gray-dark-a-600);
  --tt-dropdown-menu-label-color: var(--tt-gray-dark-a-800);
}

.tiptap-dropdown-menu-content {
  --slide-x: 0px;
  --slide-y: 0px;
  --padding: .375rem;
  position: relative;
  z-index: 50;
  max-height: var(--radix-dropdown-menu-content-available-height);
  overflow-x: hidden;
  overflow-y: auto;
  border-radius: calc(var(--padding)  + var(--tt-radius-lg));
  background-color: var(--tt-dropdown-menu-bg-color);
  color: var(--tt-dropdown-menu-text-color);
  box-shadow: var(--tt-shadow-elevated-md);
  transform-origin: var(--radix-dropdown-menu-content-transform-origin);
  min-width: 8rem;
  padding: .375rem;
  transition-duration: .1s;
}

.tiptap-dropdown-menu-content[data-side="bottom"] {
  --slide-y: -.5rem;
}

.tiptap-dropdown-menu-content[data-side="top"] {
  --slide-y: .5rem;
}

.tiptap-dropdown-menu-content[data-side="left"] {
  --slide-x: .5rem;
}

.tiptap-dropdown-menu-content[data-side="right"] {
  --slide-x: -.5rem;
}

.tiptap-dropdown-menu-content[data-state="open"] {
  animation: dropdown-in .1s ease forwards;
}

.tiptap-dropdown-menu-content[data-state="closed"] {
  animation: dropdown-out .1s ease forwards;
  overflow: hidden;
}

.tiptap-dropdown-menu-sub-content {
  --slide-x: 0px;
  --slide-y: 0px;
  --padding: .375rem;
  z-index: 50;
  overflow: hidden;
  border-radius: calc(var(--padding)  + var(--tt-radius-lg));
  background-color: var(--tt-dropdown-menu-bg-color);
  box-shadow: var(--tt-shadow-elevated-md);
  color: var(--tt-dropdown-menu-text-color);
  transform-origin: var(--radix-dropdown-menu-content-transform-origin);
  min-width: 6rem;
  padding: .25rem;
  transition-duration: .1s;
}

.tiptap-dropdown-menu-sub-content[data-side="bottom"] {
  --slide-y: -.5rem;
}

.tiptap-dropdown-menu-sub-content[data-side="top"] {
  --slide-y: .5rem;
}

.tiptap-dropdown-menu-sub-content[data-side="left"] {
  --slide-x: .5rem;
}

.tiptap-dropdown-menu-sub-content[data-side="right"] {
  --slide-x: -.5rem;
}

.tiptap-dropdown-menu-sub-content[data-state="open"] {
  animation: dropdown-in .1s ease forwards;
}

.tiptap-dropdown-menu-sub-content[data-state="closed"] {
  animation: dropdown-out .1s ease forwards;
}

@keyframes dropdown-in {
  from {
    opacity: 0;
    transform: scale(.95) translate(var(--slide-x), var(--slide-y));
  }

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

@keyframes dropdown-out {
  from {
    opacity: 1;
    transform: scale(1)translate(0);
  }

  to {
    opacity: 0;
    transform: scale(.95) translate(var(--slide-x), var(--slide-y));
  }
}

.tiptap-dropdown-menu-label {
  text-transform: capitalize;
  color: var(--tt-dropdown-menu-label-color);
  padding: .75rem .5rem .25rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: normal;
}

.tiptap-dropdown-menu-label[data-inset="true"] {
  padding-left: 1.75rem;
}

.tiptap-dropdown-menu-group, .tiptap-dropdown-menu-group[data-orientation="vertical"] {
  display: flex;
  flex-direction: column;
}

.tiptap-dropdown-menu-group[data-orientation="horizontal"] {
  display: flex;
  flex-direction: row;
  align-items:  center;
  gap: .25rem;
}

/* components/tiptap-ui/link-popover/link-popover.scss */
.tiptap-link-input {
  text-overflow: ellipsis;
  white-space: nowrap;
  border: none;
  min-width: 12rem;
  padding-right: 0;
  font-size: .875rem;
}

.tiptap-link-input:focus {
  text-overflow: clip;
  overflow: visible;
}

/* components/tiptap-ui-primitive/switch/switch.scss */
:root {
  --tiptap-switch-track: var(--tt-gray-light-a-300);
  --tiptap-switch-track-checked: var(--tt-brand-color-500);
  --tiptap-switch-thumb: var(--white);
  --tiptap-switch-ring: var(--tt-brand-color-500);
}

.dark {
  --tiptap-switch-track: var(--tt-gray-dark-a-300);
  --tiptap-switch-track-checked: var(--tt-brand-color-500);
  --tiptap-switch-thumb: var(--white);
  --tiptap-switch-ring: var(--tt-brand-color-500);
}

.tiptap-switch {
  position: relative;
  display: inline-flex;
  background-color: var(--tiptap-switch-track);
  outline: none;
  cursor: pointer;
  border: 1px solid #0000;
  border-radius: 9999px;
  flex-shrink: 0;
  align-items:  center;
  transition: background-color .15s, box-shadow .15s, border-color .15s;
}

.tiptap-switch:after {
  content: "";
  position: absolute;
  inset: -.5rem -.75rem;
}

.tiptap-switch[data-size="default"] {
  width: 32px;
  height: 18.4px;
}

.tiptap-switch[data-size="sm"] {
  width: 24px;
  height: 14px;
}

.tiptap-switch[data-checked] {
  background-color: var(--tiptap-switch-track-checked);
}

.tiptap-switch:focus-visible {
  border-color: var(--tiptap-switch-ring);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--tiptap-switch-ring) 50%, transparent);
}

.tiptap-switch[data-disabled] {
  cursor: not-allowed;
  opacity: .5;
}

.tiptap-switch-thumb {
  pointer-events: none;
  display: block;
  background-color: var(--tiptap-switch-thumb);
  border-radius: 9999px;
  transition: transform .15s;
  transform: translateX(0);
}

.tiptap-switch[data-size="default"] .tiptap-switch-thumb {
  width: 16px;
  height: 16px;
}

.tiptap-switch[data-size="sm"] .tiptap-switch-thumb {
  width: 12px;
  height: 12px;
}

.tiptap-switch[data-checked] .tiptap-switch-thumb {
  transform: translateX(calc(100% - 2px));
}

/* components/tiptap-ui/search-and-replace/search-and-replace.scss */
.tiptap-search-replace {
  --tiptap-search-replace-count-color: var(--tt-gray-light-a-400);
  --tiptap-search-replace-option-text-color: var(--tt-gray-light-a-600);
  --tiptap-search-replace-option-icon-color: var(--tt-gray-light-a-500);
  --tiptap-search-replace-option-hover-bg-color: var(--tt-gray-light-a-200);
  --tiptap-search-replace-kbd-bg: var(--white);
  --tiptap-search-replace-kbd-border: var(--tt-gray-light-a-200);
  --tiptap-search-replace-kbd-color: var(--tt-gray-light-a-500);
  --tiptap-search-replace-help-bg: var(--tt-gray-light-100);
  --tiptap-search-replace-help-label-color: var(--tt-gray-light-a-500);
  --tiptap-search-replace-code-bg: var(--tt-gray-light-a-100);
  --tiptap-search-replace-code-border: var(--tt-gray-light-a-200);
  --tiptap-search-replace-code-color: var(--tt-gray-light-a-700);
  --tiptap-search-replace-focus-border: var(--tt-brand-color-500);
  --tiptap-search-replace-focus-ring: color-mix(in srgb, var(--tt-brand-color-500) 20%, transparent);
  width: 19rem;
  max-width: 100%;
}

.dark .tiptap-search-replace {
  --tiptap-search-replace-count-color: var(--tt-gray-dark-a-400);
  --tiptap-search-replace-option-text-color: var(--tt-gray-dark-a-600);
  --tiptap-search-replace-option-icon-color: var(--tt-gray-dark-a-500);
  --tiptap-search-replace-option-hover-bg-color: var(--tt-gray-dark-a-200);
  --tiptap-search-replace-kbd-bg: var(--tt-gray-dark-a-50);
  --tiptap-search-replace-kbd-border: var(--tt-gray-dark-a-200);
  --tiptap-search-replace-kbd-color: var(--tt-gray-dark-a-500);
  --tiptap-search-replace-help-bg: var(--tt-gray-dark-100);
  --tiptap-search-replace-help-label-color: var(--tt-gray-dark-a-500);
  --tiptap-search-replace-code-bg: var(--tt-gray-dark-a-100);
  --tiptap-search-replace-code-border: var(--tt-gray-dark-a-200);
  --tiptap-search-replace-code-color: var(--tt-gray-dark-a-700);
  --tiptap-search-replace-focus-border: var(--tt-brand-color-400);
  --tiptap-search-replace-focus-ring: color-mix(in srgb, var(--tt-brand-color-400) 25%, transparent);
}

.tiptap-card-body.tiptap-search-replace-body {
  width: 100%;
  padding: 0;
}

.tiptap-search-replace-query-controls {
  display: flex;
  flex-direction: column;
  gap: .375rem;
}

.tiptap-search-replace[data-open="true"] {
  animation: fadeIn .15s cubic-bezier(.16, 1, .3, 1), zoomIn .15s cubic-bezier(.16, 1, .3, 1);
}

.tiptap-search-replace[data-open="false"] {
  display: none;
}

@media (max-width: 480px) {
  .tiptap-search-replace {
    width: 100%;
  }
}

.tiptap-card-header.tiptap-search-replace-header {
  border: 0;
  gap: .25rem;
}

.tiptap-search-replace-count {
  font-variant-numeric: tabular-nums;
  color: var(--tiptap-search-replace-count-color);
  white-space: nowrap;
  padding-left: .625rem;
  font-size: .625rem;
  font-weight: 700;
}

.tiptap-search-replace-nav-group {
  display: flex;
  align-items:  center;
  gap: .25rem;
  margin-left: auto;
}

.tiptap-search-replace-inputs, .tiptap-search-replace-options, .tiptap-search-replace-regex-toggle {
  display: flex;
  flex-direction: column;
  padding-inline-start: .375rem;
  padding-inline-end: .375rem;
}

.tiptap-search-replace-inputs, .tiptap-search-replace-regex-toggle {
  gap: .25rem;
}

.tiptap-search-replace-input-group {
  border-radius: var(--tt-radius-lg);
}

.tiptap-search-replace-input-group:has([data-slot="tiptap-input-group-control"]:focus-visible) {
  border-color: var(--tiptap-search-replace-focus-border);
}

.tiptap-search-replace-keyboard-hint-addon {
  display: none;
}

.tiptap-search-replace-input-group:focus-within .tiptap-search-replace-keyboard-hint-addon {
  display: flex;
}

.tiptap-search-replace-keyboard-hint {
  display: flex;
  color: var(--tiptap-search-replace-kbd-color);
  background-color: var(--tiptap-search-replace-kbd-bg);
  border: 1px solid var(--tiptap-search-replace-kbd-border);
  justify-content: center;
  align-items:  center;
  width: 1.25rem;
  height: 1rem;
  padding: .125rem .25rem .25rem;
  font-size: .75rem;
  font-weight: 600;
}

.tiptap-input-group-addon > kbd.tiptap-search-replace-keyboard-hint {
  border-radius: var(--tt-radius-xs);
}

.tiptap-search-replace-regex-toggle-row {
  display: flex;
  border-radius: var(--tt-radius-md, .375rem);
  color: var(--tiptap-search-replace-option-text-color);
  cursor: pointer;
  justify-content: space-between;
  align-items:  center;
  gap: .5rem;
  width: 100%;
  transition: background-color .15s;
  font-size: .875rem;
  font-weight: 500;
}

.tiptap-search-replace-regex-toggle-row {
  padding: .5rem .625rem;
}

.tiptap-search-replace-regex-toggle-label {
  flex: 1;
}

.tiptap-search-replace-regex-help, .tiptap-search-replace-regex-help-section {
  display: flex;
  flex-direction: column;
}

.tiptap-search-replace-regex-help {
  border-radius: var(--tt-radius-lg, .75rem);
  background-color: var(--tiptap-search-replace-help-bg);
  gap: .375rem;
  padding: 1rem .375rem;
}

.tiptap-search-replace-regex-help-section {
  gap: .75rem;
}

.tiptap-search-replace-regex-help-label {
  color: var(--tiptap-search-replace-help-label-color);
  padding-inline-start: .375rem;
  padding-inline-end: .375rem;
  font-size: .75rem;
  font-weight: 600;
}

.tiptap-search-replace-regex-example-list.tiptap-button-group:has( > [data-slot="tiptap-button-group"]) {
  gap: .25rem;
}

.tiptap-search-replace-regex-example-list, .tiptap-search-replace-regex-example-row {
  width: 100%;
}

.tiptap-search-replace-regex-example-button {
  flex: 1;
}

.tiptap-search-replace-regex-example-button code {
  border-radius: var(--tt-radius-xs, .25rem);
  background-color: var(--tiptap-search-replace-code-bg);
  border: 1px solid var(--tiptap-search-replace-code-border);
  color: var(--tiptap-search-replace-code-color);
  padding: .125rem .25rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: .688rem;
}

.tiptap-search-replace-regex-help-separator {
  margin-block-start: .25rem;
  margin-block-end: .25rem;
}

.tiptap-search-replace-regex-docs-link {
  display: flex;
  border-radius: var(--tt-radius-md, .375rem);
  color: var(--tiptap-search-replace-option-text-color);
  text-decoration: none;
  align-items:  center;
  gap: .375rem;
  padding: .375rem;
  transition: background-color .15s;
  font-size: .75rem;
  font-weight: 500;
}

.tiptap-search-replace-regex-toggle-row:hover, .tiptap-search-replace-regex-docs-link:hover {
  background-color: var(--tiptap-search-replace-option-hover-bg-color);
}

.tiptap-search-replace-regex-docs-link:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px var(--tiptap-search-replace-focus-ring);
}

.tiptap-search-replace-regex-toggle-row:has([data-slot="tiptap-switch"][data-disabled]) {
  cursor: not-allowed;
  opacity: .5;
}

.tiptap-search-replace-regex-docs-link-icon {
  color: var(--tiptap-search-replace-option-icon-color);
  width: .875rem;
  height: .875rem;
}

.tiptap-search-replace-actions {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  padding: .125rem .75rem .625rem;
}

@media (prefers-reduced-motion: reduce) {
  .tiptap-search-replace, .tiptap-search-replace * {
    animation: none !important;
    transition: none !important;
  }
}

.find-and-replace-result {
  background-color: color-mix(in srgb, var(--tt-brand-color-300) 20%, transparent);
}

.find-and-replace-result-current {
  background-color: color-mix(in srgb, var(--tt-color-green-base) 40%, transparent);
}

/* components/tiptap-ui/slash-dropdown-menu/slash-dropdown-menu.scss */
:root {
  --tt-slash-decoration-bg-color: var(--tt-gray-light-a-100);
  --tt-slash-decoration-color: var(--tt-gray-light-a-400);
}

.dark {
  --tt-slash-decoration-bg-color: var(--tt-gray-dark-a-100);
  --tt-slash-decoration-color: var(--tt-gray-dark-a-400);
}

span.tiptap-slash-decoration {
  background: var(--tt-slash-decoration-bg-color);
  border-radius: var(--tt-radius-xs);
  outline: 5.5px solid var(--tt-slash-decoration-bg-color);
}

span.tiptap-slash-decoration:after {
  color: var(--tt-slash-decoration-color);
}

span.tiptap-slash-decoration.is-empty:after {
  content: attr(data-decoration-content);
}

.tiptap-slash-card-body {
  width: 100%;
}

@media screen and (min-width: 480px) {
  .tiptap-slash-card {
    min-width: 15rem;
  }
}

/* components/bundle/section-editor/section-editor.scss */
.section-editor {
  display: flex;
  overflow: hidden;
  background-color: var(--tt-bg-color, #fff);
  color: var(--tt-theme-text, var(--tt-gray-light-900));
  flex-direction: column;
  height: 100%;
}

.section-editor__toolbar {
  border-bottom: 1px solid var(--tt-border-color, #e5e5e5);
  flex-shrink: 0;
}

.section-editor__content {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.section-editor__content-error {
  color: #7a5b00;
  background: #fff8e6;
  border: 1px solid #f0c36d;
  border-radius: 6px;
  margin: .75rem 2.5rem 0;
  padding: .625rem .875rem;
  font-size: 13px;
  line-height: 1.4;
}

.section-editor__content .tiptap.ProseMirror {
  outline: none;
  color: var(--tt-theme-text, #111827);
  flex: 1;
  padding: 2rem 2.5rem 10rem;
  font-family: Arial, sans-serif;
  line-height: 1.15;
}

.section-editor__content .tiptap.ProseMirror:focus {
  outline: none;
}

.section-editor__content .tiptap.ProseMirror [data-type]:not([data-type="asset-spec"]):not([data-type="drone-block"]):not([data-type="field-chip"]):not([data-type="horizontalRule"]) {
  display: block;
  border: 1px dashed var(--tt-border-color, #d4d4d4);
  background-color: var(--tt-gray-light-50, #fafafa);
  color: var(--tt-gray-light-500, #737373);
  font-size: 13px;
  font-family: var(--font-geist-mono), monospace;
  border-radius: 6px;
  margin: 8px 0;
  padding: 12px 16px;
}

.section-editor__content .tiptap.ProseMirror a {
  color: var(--tt-brand-color-600, #2563eb);
  text-decoration: underline;
  cursor: pointer;
}

.section-editor__content .tiptap.ProseMirror code {
  border-radius: 3px;
  padding: 2px 4px;
  font-size: .9em;
}

.section-editor__content .tiptap.ProseMirror pre {
  overflow-x: auto;
  border-radius: 6px;
  padding: 16px;
}

.section-editor__content .tiptap.ProseMirror pre code {
  background: none;
  padding: 0;
}

.section-editor__content .tiptap.ProseMirror blockquote {
  border-left: 3px solid var(--tt-border-color, #d4d4d4);
  padding-left: 16px;
}

.section-editor__content .tiptap.ProseMirror hr {
  border: none;
  border-top: 1px solid var(--tt-border-color, #e5e5e5);
  margin: 24px 0;
}

.section-editor__content .tiptap.ProseMirror img {
  border-radius: 6px;
  max-width: 100%;
}

.section-editor[data-read-only="true"] .section-editor__toolbar {
  display: none;
}

.section-editor[data-read-only="true"] .section-editor__content .tiptap.ProseMirror {
  cursor: default;
}

.section-editor__content img[data-align="left"] {
  display: block;
  margin-left: 0;
  margin-right: auto;
}

.section-editor__content img[data-align="center"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.section-editor__content img[data-align="right"] {
  display: block;
  margin-left: auto;
  margin-right: 0;
}

/* components/bundle/section-tree/section-tree.scss */
.section-tree {
  display: flex;
  color: var(--tt-gray-light-a-800);
  user-select: none;
  flex-direction: column;
  height: 100%;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, sans-serif;
  font-size: .875rem;
  line-height: 1.5;
}

.section-tree__header {
  display: flex;
  border-bottom: 1px solid var(--tt-border-color);
  background: var(--tt-sidebar-bg-color);
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  justify-content: space-between;
  align-items:  center;
  min-height: 2.5rem;
  padding: .5rem .75rem;
}

.section-tree__header-title {
  text-transform: uppercase;
  letter-spacing: .03em;
  color: var(--tt-gray-light-a-500);
  font-size: .8125rem;
  font-weight: 600;
}

.section-tree__header-actions {
  display: flex;
  gap: .25rem;
}

.section-tree__header-btn {
  display: inline-flex;
  border-radius: var(--tt-radius-sm);
  color: var(--tt-gray-light-a-500);
  cursor: pointer;
  transition: background var(--tt-transition-duration-short) var(--tt-transition-easing-default), color var(--tt-transition-duration-short) var(--tt-transition-easing-default);
  background: none;
  border: none;
  justify-content: center;
  align-items:  center;
  width: 1.75rem;
  height: 1.75rem;
  font-size: .875rem;
}

.section-tree__header-btn:hover {
  background: var(--tt-gray-light-a-100);
  color: var(--tt-gray-light-a-700);
}

.section-tree__header-btn:active {
  background: var(--tt-gray-light-a-200);
}

.section-tree__header-btn--disabled {
  opacity: .4;
  pointer-events: none;
}

.section-tree__body {
  overflow-y: auto;
  overflow-x: hidden;
  flex: 1;
  padding: .25rem 0;
}

.section-tree__body::-webkit-scrollbar {
  width: 4px;
}

.section-tree__body::-webkit-scrollbar-thumb {
  background: var(--tt-scrollbar-color);
  border-radius: 2px;
}

.section-tree__empty {
  display: flex;
  color: var(--tt-gray-light-a-400);
  justify-content: center;
  align-items:  center;
  height: 100%;
  font-size: .8125rem;
  font-style: italic;
}

.section-tree__node {
  position: relative;
}

.section-tree__node-row {
  display: flex;
  padding: .25rem .5rem;
  padding-left: calc(.5rem + var(--indent-level, 0) * 1rem);
  cursor: pointer;
  border-radius: var(--tt-radius-xs);
  transition: background var(--tt-transition-duration-short) var(--tt-transition-easing-default);
  align-items:  center;
  gap: .25rem;
  min-height: 2rem;
  margin: 1px .25rem;
}

.section-tree__node-row:hover {
  background: var(--tt-gray-light-a-50);
}

.section-tree__node-row--selected {
  background: var(--tt-brand-color-50);
}

.section-tree__node-row--selected:hover {
  background: var(--tt-brand-color-100);
}

.section-tree__node-row--dragging {
  opacity: .5;
}

.section-tree__collapse-btn {
  display: inline-flex;
  cursor: pointer;
  color: var(--tt-gray-light-a-400);
  border-radius: var(--tt-radius-xs);
  transition: transform var(--tt-transition-duration-short) var(--tt-transition-easing-default), color var(--tt-transition-duration-short) var(--tt-transition-easing-default);
  background: none;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items:  center;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  font-size: .625rem;
}

.section-tree__collapse-btn:hover {
  color: var(--tt-gray-light-a-600);
}

.section-tree__collapse-btn--collapsed {
  transform: rotate(-90deg);
}

.section-tree__collapse-btn--hidden {
  visibility: hidden;
}

.section-tree__number-label {
  color: var(--tt-gray-light-a-400);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  min-width: 1.5rem;
  font-size: .75rem;
  font-weight: 600;
}

.section-tree__title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--tt-gray-light-a-700);
  flex: 1;
  min-width: 0;
  font-size: .8125rem;
  line-height: 1.4;
}

.section-tree__title-input {
  border: 1px solid var(--tt-brand-color-400);
  border-radius: var(--tt-radius-xs);
  background: var(--tt-bg-color);
  color: var(--tt-gray-light-a-800);
  outline: none;
  flex: 1;
  min-width: 0;
  padding: .125rem .25rem;
  font-family: inherit;
  font-size: .8125rem;
  line-height: 1.4;
  box-shadow: 0 0 0 2px #6229ff26;
}

.section-tree__title-input:focus {
  border-color: var(--tt-brand-color-500);
}

.section-tree__link-badge {
  border-radius: var(--tt-radius-xs);
  flex-shrink: 0;
  padding: .0625rem .25rem;
  font-size: .625rem;
  font-weight: 500;
}

.section-tree__link-badge--linked {
  background: var(--tt-color-green-inc-4);
  color: var(--tt-color-green-dec-2);
}

.section-tree__link-badge--overridden {
  background: var(--tt-color-yellow-inc-4);
  color: var(--tt-color-yellow-dec-2);
}

.section-tree__link-badge--unlinked {
  display: none;
}

.section-tree__children {
  list-style: none;
  margin: 0;
  padding: 0;
}

.section-tree__ghost {
  background: var(--tt-brand-color-50);
  border: 1px dashed var(--tt-brand-color-300);
  border-radius: var(--tt-radius-sm);
  opacity: .8;
}

.section-tree--read-only .section-tree__delete-btn {
  display: none;
}

.section-tree--read-only .section-tree__node-row {
  cursor: default;
}

.dark .section-tree {
  color: var(--tt-gray-dark-a-800);
}

.dark .section-tree__header-title, .dark .section-tree__header-btn {
  color: var(--tt-gray-dark-a-500);
}

.dark .section-tree__header-btn:hover {
  background: var(--tt-gray-dark-a-100);
  color: var(--tt-gray-dark-a-700);
}

.dark .section-tree__header-btn:active {
  background: var(--tt-gray-dark-a-200);
}

.dark .section-tree__collapse-btn {
  color: var(--tt-gray-dark-a-400);
}

.dark .section-tree__collapse-btn:hover {
  color: var(--tt-gray-dark-a-600);
}

.dark .section-tree__number-label {
  color: var(--tt-gray-dark-a-400);
}

.dark .section-tree__title {
  color: var(--tt-gray-dark-a-700);
}

.dark .section-tree__title-input {
  background: var(--tt-bg-color);
  color: var(--tt-gray-dark-a-800);
}

.dark .section-tree__delete-btn {
  color: var(--tt-gray-dark-a-300);
}

.dark .section-tree__node-row:hover {
  background: var(--tt-gray-dark-a-50);
}

.dark .section-tree__node-row--selected {
  background: #6229ff1f;
}

.dark .section-tree__node-row--selected:hover {
  background: #6229ff2e;
}

/* components/bundle/section-diff-viewer/section-diff-viewer.scss */
.section-diff-viewer {
  display: flex;
  position: relative;
  color: var(--tt-theme-text, var(--tt-gray-light-900));
  background-color: var(--tt-bg-color, #fff);
  width: 100%;
  height: 100%;
  font-family: Inter, sans-serif;
}

.section-diff-viewer__loading {
  position: absolute;
  z-index: 10;
  display: flex;
  background-color: var(--tt-brand-color-50, #efeeff);
  border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  color: var(--tt-brand-color-700, #4b00cc);
  justify-content: center;
  align-items:  center;
  padding: .5rem 1rem;
  font-size: .8125rem;
  top: 0;
  left: 0;
  right: 0;
}

.dark .section-diff-viewer__loading {
  background-color: var(--tt-brand-color-950, #0d002e);
  color: var(--tt-brand-color-300, #9d8aff);
}

.section-diff-viewer__panels {
  display: flex;
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

.section-diff-viewer__panel {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.section-diff-viewer__divider {
  background-color: var(--tt-border-color, var(--tt-gray-light-a-200));
  flex-shrink: 0;
  width: 1px;
}

.section-diff-viewer__panel-header {
  display: flex;
  border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  background-color: var(--tt-sidebar-bg-color, var(--tt-gray-light-100));
  flex-shrink: 0;
  align-items:  center;
  padding: .5rem 1rem;
}

.section-diff-viewer__panel-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--tt-gray-light-500, #7d7f82);
  font-size: .75rem;
  font-weight: 600;
}

.dark .section-diff-viewer__panel-label {
  color: var(--tt-gray-dark-500, #7c7c83);
}

.section-diff-viewer__panel-content {
  overflow-y: auto;
  flex: 1;
  min-height: 0;
  padding: 1rem;
}

.section-diff-viewer__placeholder {
  display: flex;
  text-align: center;
  justify-content: center;
  align-items:  center;
  min-height: 8rem;
  padding: 2rem;
}

.section-diff-viewer__placeholder p {
  color: var(--tt-gray-light-400, #a6a7ab);
  font-size: .875rem;
  font-style: italic;
}

.dark .section-diff-viewer__placeholder p {
  color: var(--tt-gray-dark-400, #636369);
}

.section-diff-viewer__editor {
  height: 100%;
}

.section-diff-viewer__editor .tiptap.ProseMirror {
  outline: none;
  min-height: 4rem;
  padding: 0;
  font-family: Arial, sans-serif;
}

.section-diff-viewer__content-preview {
  font-family: Arial, sans-serif;
  font-size: .9375rem;
  line-height: 1.6;
}

.section-diff-viewer__node {
  margin: 0 0 .5rem;
}

.section-diff-viewer__empty {
  color: var(--tt-gray-light-400, #a6a7ab);
  font-style: italic;
}

.dark .section-diff-viewer__empty {
  color: var(--tt-gray-dark-400, #636369);
}

.section-diff-viewer__panel--revised .diff-addition, .section-diff-viewer__panel--revised .tiptap-snapshot-addition {
  background-color: var(--tt-color-highlight-green, #dcfce7);
  border-radius: var(--tt-radius-xxs, .125rem);
}

.dark .section-diff-viewer__panel--revised .diff-addition, .dark .section-diff-viewer__panel--revised .tiptap-snapshot-addition {
  background-color: var(--tt-color-highlight-green, #509568);
}

.section-diff-viewer__panel--original .diff-deletion, .section-diff-viewer__panel--original .tiptap-snapshot-deletion {
  background-color: var(--tt-color-highlight-red, #ffe4e6);
  text-decoration: line-through;
  text-decoration-color: var(--tt-color-red-base, #ff3014);
  border-radius: var(--tt-radius-xxs, .125rem);
}

.dark .section-diff-viewer__panel--original .diff-deletion, .dark .section-diff-viewer__panel--original .tiptap-snapshot-deletion {
  background-color: var(--tt-color-highlight-red, #743e42);
  text-decoration-color: var(--tt-color-red-inc-1, #ff5d47);
}

@media screen and (max-width: 640px) {
  .section-diff-viewer__panels {
    flex-direction: column;
  }

  .section-diff-viewer__divider {
    width: 100%;
    height: 1px;
  }

  .section-diff-viewer__panel {
    max-height: 50%;
  }
}

.section-diff-viewer__text {
  color: var(--tt-theme-text, #1f2937);
  white-space: pre-wrap;
  word-break: break-word;
  font-family: Arial, sans-serif;
  font-size: 15px;
  line-height: 1.7;
}

.section-diff-viewer__added {
  background-color: #48c78e4d;
  border-radius: 2px;
  padding: 1px 0;
}

.section-diff-viewer__removed {
  text-decoration: line-through;
  text-decoration-color: #dc262699;
  background-color: #ff6b6b40;
  border-radius: 2px;
  padding: 1px 0;
}

.diff-added {
  background-color: #48c78e4d;
  border-radius: 2px;
}

.diff-removed {
  text-decoration: line-through;
  text-decoration-color: #dc262699;
  background-color: #ff6b6b40;
  border-radius: 2px;
}

.diff-modified {
  background-color: #fbbf244d;
  border-radius: 2px;
}

.section-diff-viewer[data-diff-mode="changebar-only"] .diff-added, .section-diff-viewer[data-diff-mode="changebar-only"] .diff-removed, .section-diff-viewer[data-diff-mode="changebar-only"] .diff-modified {
  text-decoration: none !important;
  background-color: #0000 !important;
}

.section-diff-viewer[data-diff-mode="diff-only"] .diff-change-bar-indicator {
  display: none !important;
}

/* components/bundle/page-editor/page-editor.scss */
.page-editor {
  --pe-bg-canvas: #fff;
  --pe-text-primary: #111827;
  --pe-text-secondary: #6b7280;
  --pe-text-muted: #9ca3af;
  position: relative;
  background: var(--pe-bg-canvas);
  color: var(--pe-text-primary);
  width: 100%;
  min-height: 100%;
}

.page-editor__loading, .page-editor__error, .page-editor__empty {
  display: flex;
  text-align: center;
  color: var(--pe-text-secondary);
  justify-content: center;
  align-items:  center;
  padding: 2rem;
  font-size: .875rem;
}

.page-editor__error {
  color: #dc2626;
}

.page-editor__export-overlay {
  position: absolute;
  z-index: 10;
  display: flex;
  color: var(--pe-text-secondary);
  background: #ffffffd9;
  justify-content: center;
  align-items:  center;
  font-size: .875rem;
  inset: 0;
}

.page-editor .tiptap.ProseMirror {
  outline: none;
  color: var(--pe-text-primary);
  font-family: Arial, sans-serif;
}

.page-editor .tiptap.ProseMirror, .page-editor .tiptap.ProseMirror * {
  opacity: 1 !important;
}

.page-editor .tiptap.ProseMirror:focus {
  outline: none;
}

.page-editor .tiptap.ProseMirror [data-type]:not([data-type="asset-spec"]):not([data-type="drone-block"]):not([data-type="field-chip"]) {
  display: block;
  color: #737373;
  font-size: 13px;
  font-family: var(--font-geist-mono), monospace;
  background-color: #fafafa;
  border: 1px dashed #d4d4d4;
  border-radius: 6px;
  margin: 8px 0;
  padding: 12px 16px;
}

.page-editor .tiptap.ProseMirror a {
  color: #2563eb;
  text-decoration: underline;
  pointer-events: none;
}

.page-editor .tiptap.ProseMirror hr {
  border: none;
  border-top: 2px solid #e5e7eb;
}

.page-editor .tiptap.ProseMirror img {
  max-width: 100%;
  height: auto;
}

.page-editor .tiptap.ProseMirror img[src=""], .page-editor .tiptap.ProseMirror img:not([src]) {
  display: none;
}

.page-editor .tiptap.ProseMirror table {
  border-collapse: collapse;
  width: 100%;
}

.page-editor .tiptap.ProseMirror .tableWrapper {
  overflow: visible;
  width: 100%;
}

.page-editor .tiptap.ProseMirror th, .page-editor .tiptap.ProseMirror td {
  text-align: left;
  border: 1px solid #d1d5db;
}

.page-editor .tiptap.ProseMirror th {
  background-color: #f9fafb;
}

.page-editor .tiptap.ProseMirror p[data-role="cover-spacer"] {
  line-height: 1.4;
}

.page-editor .tiptap.ProseMirror ul[data-type="taskList"] {
  list-style: none;
  padding-left: 0;
}

.page-editor .tiptap.ProseMirror ul[data-type="taskList"] li {
  display: flex;
  align-items:  flex-start;
  gap: .5rem;
}

.page-editor .tiptap.ProseMirror blockquote {
  color: var(--pe-text-secondary);
  border-left: 3px solid #d1d5db;
}

.page-editor .tiptap.ProseMirror pre {
  overflow-x: auto;
  font-family: var(--font-geist-mono), monospace;
  background-color: #f3f4f6;
  border-radius: 6px;
}

.page-editor .tiptap.ProseMirror code {
  font-family: var(--font-geist-mono), monospace;
  background-color: #f3f4f6;
  border-radius: 3px;
  padding: .125rem .25rem;
  font-size: .875em;
}

.page-editor .tiptap.ProseMirror pre code {
  background: none;
  border-radius: 0;
  padding: 0;
}

.page-editor .tiptap.ProseMirror [data-type="pageBreak"], .page-editor .tiptap.ProseMirror .tiptap-page-break-filler {
  background: none !important;
  border: none !important;
}

.page-editor .tiptap-page-header {
  height: 87.92px !important;
  min-height: 87.92px !important;
  margin-bottom: 6px !important;
  padding-top: 23.62px !important;
  padding-bottom: 4px !important;
}

.page-editor .tiptap-page-header td, .page-editor .tiptap-page-header th {
  color: #000 !important;
  box-shadow: none !important;
  border: none !important;
  padding: 1px 8px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
}

.page-editor .tiptap-page-header tr:first-child td, .page-editor .tiptap-page-header tr:first-child th {
  box-shadow: none !important;
  border-top: 1px solid #b0b0b0 !important;
}

.page-editor .tiptap-page-header tr:last-child td, .page-editor .tiptap-page-header tr:last-child th {
  border-bottom: 1px solid #b0b0b0 !important;
}

.page-editor .tiptap-page-header td:first-child, .page-editor .tiptap-page-header th:first-child {
  border-left: 1px solid #b0b0b0 !important;
}

.page-editor .tiptap-page-header td:last-child, .page-editor .tiptap-page-header th:last-child {
  border-right: 1px solid #b0b0b0 !important;
}

.page-editor .tiptap-page-header p {
  color: #000 !important;
  margin: 0 !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
}

.page-editor .tiptap-page-header table {
  width: 100% !important;
}

.page-editor .tiptap-page-header tr {
  grid-template-columns: 70% 30% !important;
}

.page-editor .tiptap.ProseMirror > img:first-child {
  object-fit: contain;
  max-width: 220px;
  max-height: 100px;
}

.page-editor .tiptap.ProseMirror [data-borderless] {
  --tt-table-border-color: transparent;
  --pages-tablekit-border-color: transparent;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.page-editor .tiptap.ProseMirror [data-borderless] table, .page-editor .tiptap.ProseMirror [data-borderless] td, .page-editor .tiptap.ProseMirror [data-borderless] th {
  box-shadow: none !important;
  border: #0000 !important;
}

.page-editor .tiptap.ProseMirror [data-borderless] td:first-child, .page-editor .tiptap.ProseMirror [data-borderless] th:first-child {
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.page-editor .tiptap.ProseMirror [data-borderless] td, .page-editor .tiptap.ProseMirror [data-borderless] th {
  padding-top: .1rem !important;
  padding-bottom: .1rem !important;
}

.page-editor .tiptap.ProseMirror [data-borderless] td p, .page-editor .tiptap.ProseMirror [data-borderless] th p {
  line-height: 1.4;
  margin: 0 !important;
}

/* components/bundle/master-diff-viewer/master-diff-viewer.scss */
.master-diff-viewer {
  display: flex;
  position: relative;
  color: var(--tt-theme-text, var(--tt-gray-light-900));
  background-color: var(--tt-bg-color, #fff);
  width: 100%;
  height: 100%;
  font-family: Inter, sans-serif;
}

.master-diff-viewer__sidebar {
  display: flex;
  border-right: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  background-color: var(--tt-sidebar-bg-color, var(--tt-gray-light-100));
  overflow: hidden;
  flex-direction: column;
  flex-shrink: 0;
  width: 14rem;
}

.dark .master-diff-viewer__sidebar {
  background-color: var(--tt-sidebar-bg-color, var(--tt-gray-dark-100, #1e1e1e));
}

.master-diff-viewer__search {
  border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  flex-shrink: 0;
  padding: .5rem;
}

.master-diff-viewer__search-input {
  border: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  border-radius: var(--tt-radius-sm, .25rem);
  background-color: var(--tt-bg-color, #fff);
  color: var(--tt-theme-text, var(--tt-gray-light-900));
  outline: none;
  width: 100%;
  padding: .375rem .5rem;
  transition: border-color .15s;
  font-size: .8125rem;
  line-height: 1.4;
}

.master-diff-viewer__search-input::placeholder {
  color: var(--tt-gray-light-400, #a6a7ab);
}

.master-diff-viewer__search-input:focus {
  border-color: var(--tt-brand-color-500, #6938ef);
  box-shadow: 0 0 0 2px var(--tt-brand-color-100, #efeeff66);
}

.dark .master-diff-viewer__search-input {
  background-color: var(--tt-gray-dark-200, #2a2a2a);
  border-color: var(--tt-gray-dark-a-200, #ffffff1a);
  color: var(--tt-gray-dark-900, #e0e0e0);
}

.dark .master-diff-viewer__search-input::placeholder {
  color: var(--tt-gray-dark-400, #636369);
}

.dark .master-diff-viewer__search-input:focus {
  border-color: var(--tt-brand-color-400, #8266ff);
}

.master-diff-viewer__template-list {
  overflow-y: auto;
  flex: 1;
  padding: .25rem 0;
}

.master-diff-viewer__template-item {
  display: flex;
  cursor: pointer;
  text-align: left;
  color: var(--tt-theme-text, var(--tt-gray-light-900));
  background: none;
  border: none;
  align-items:  center;
  width: 100%;
  margin: 0;
  padding: .375rem .5rem;
  transition: background-color .1s;
  font-size: .8125rem;
  line-height: 1.4;
}

.master-diff-viewer__template-item:hover {
  background-color: var(--tt-gray-light-a-100, #00000008);
}

.dark .master-diff-viewer__template-item:hover {
  background-color: var(--tt-gray-dark-a-100, #ffffff0a);
}

.master-diff-viewer__template-item--selected {
  background-color: var(--tt-brand-color-50, #efeeff);
  color: var(--tt-brand-color-700, #4b00cc);
  font-weight: 500;
}

.dark .master-diff-viewer__template-item--selected {
  background-color: var(--tt-brand-color-950, #0d002e);
  color: var(--tt-brand-color-300, #9d8aff);
}

.master-diff-viewer__template-item--selected:hover {
  background-color: var(--tt-brand-color-100, #efeeff99);
}

.dark .master-diff-viewer__template-item--selected:hover {
  background-color: var(--tt-brand-color-900, #170740);
}

.master-diff-viewer__template-name {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.master-diff-viewer__no-results {
  display: flex;
  justify-content: center;
  align-items:  center;
  padding: 1.5rem .5rem;
}

.master-diff-viewer__no-results p {
  color: var(--tt-gray-light-400, #a6a7ab);
  font-size: .75rem;
  font-style: italic;
}

.dark .master-diff-viewer__no-results p {
  color: var(--tt-gray-dark-400, #636369);
}

.master-diff-viewer__content {
  display: flex;
  position: relative;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.master-diff-viewer__loading {
  position: absolute;
  z-index: 10;
  display: flex;
  background-color: var(--tt-brand-color-50, #efeeff);
  border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  color: var(--tt-brand-color-700, #4b00cc);
  justify-content: center;
  align-items:  center;
  padding: .5rem 1rem;
  font-size: .8125rem;
  top: 0;
  left: 0;
  right: 0;
}

.dark .master-diff-viewer__loading {
  background-color: var(--tt-brand-color-950, #0d002e);
  color: var(--tt-brand-color-300, #9d8aff);
}

.master-diff-viewer__panels {
  display: flex;
  overflow: hidden;
  flex: 1;
  min-height: 0;
}

.master-diff-viewer__panel {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.master-diff-viewer__divider {
  background-color: var(--tt-border-color, var(--tt-gray-light-a-200));
  flex-shrink: 0;
  width: 1px;
}

.master-diff-viewer__panel-header {
  display: flex;
  border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
  background-color: var(--tt-sidebar-bg-color, var(--tt-gray-light-100));
  flex-shrink: 0;
  align-items:  center;
  padding: .5rem 1rem;
}

.master-diff-viewer__panel-label {
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--tt-gray-light-500, #7d7f82);
  font-size: .75rem;
  font-weight: 600;
}

.dark .master-diff-viewer__panel-label {
  color: var(--tt-gray-dark-500, #7c7c83);
}

.master-diff-viewer__panel-content {
  overflow-y: auto;
  flex: 1;
  min-height: 0;
  padding: 1rem;
}

.master-diff-viewer__placeholder {
  display: flex;
  text-align: center;
  justify-content: center;
  align-items:  center;
  min-height: 8rem;
  padding: 2rem;
}

.master-diff-viewer__placeholder p {
  color: var(--tt-gray-light-400, #a6a7ab);
  font-size: .875rem;
  font-style: italic;
}

.dark .master-diff-viewer__placeholder p {
  color: var(--tt-gray-dark-400, #636369);
}

.master-diff-viewer__editor {
  height: 100%;
}

.master-diff-viewer__editor .tiptap.ProseMirror {
  outline: none;
  min-height: 4rem;
  padding: 0;
  font-family: Arial, sans-serif;
}

.master-diff-viewer__content-preview {
  font-family: Arial, sans-serif;
  font-size: .9375rem;
  line-height: 1.6;
}

.master-diff-viewer__node {
  margin: 0 0 .5rem;
}

.master-diff-viewer__empty {
  color: var(--tt-gray-light-400, #a6a7ab);
  font-style: italic;
}

.dark .master-diff-viewer__empty {
  color: var(--tt-gray-dark-400, #636369);
}

.master-diff-viewer__panel--template .diff-addition, .master-diff-viewer__panel--template .tiptap-snapshot-addition {
  background-color: var(--tt-color-highlight-green, #dcfce7);
  border-radius: var(--tt-radius-xxs, .125rem);
}

.dark .master-diff-viewer__panel--template .diff-addition, .dark .master-diff-viewer__panel--template .tiptap-snapshot-addition {
  background-color: var(--tt-color-highlight-green, #509568);
}

.master-diff-viewer__panel--local .diff-deletion, .master-diff-viewer__panel--local .tiptap-snapshot-deletion {
  background-color: var(--tt-color-highlight-red, #ffe4e6);
  text-decoration: line-through;
  text-decoration-color: var(--tt-color-red-base, #ff3014);
  border-radius: var(--tt-radius-xxs, .125rem);
}

.dark .master-diff-viewer__panel--local .diff-deletion, .dark .master-diff-viewer__panel--local .tiptap-snapshot-deletion {
  background-color: var(--tt-color-highlight-red, #743e42);
  text-decoration-color: var(--tt-color-red-inc-1, #ff5d47);
}

@media screen and (max-width: 768px) {
  .master-diff-viewer {
    flex-direction: column;
  }

  .master-diff-viewer__sidebar {
    border-right: none;
    border-bottom: 1px solid var(--tt-border-color, var(--tt-gray-light-a-200));
    width: 100%;
    max-height: 10rem;
  }
}

@media screen and (max-width: 640px) {
  .master-diff-viewer__panels {
    flex-direction: column;
  }

  .master-diff-viewer__divider {
    width: 100%;
    height: 1px;
  }

  .master-diff-viewer__panel {
    max-height: 50%;
  }
}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */



  :root, :host {
    --font-sans: var(--font-geist-sans);
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-300: oklch(87.9% 0.169 91.605);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-400: oklch(79.2% 0.209 151.711);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-green-800: oklch(44.8% 0.119 151.328);
    --color-blue-50: oklch(97% 0.014 254.604);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-400: oklch(70.7% 0.165 254.624);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-blue-600: oklch(54.6% 0.245 262.881);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-blue-800: oklch(42.4% 0.199 265.638);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-800: oklch(43.8% 0.218 303.724);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-neutral-200: oklch(92.2% 0 none);
    --color-neutral-400: oklch(70.8% 0 none);
    --color-neutral-500: oklch(55.6% 0 none);
    --color-neutral-600: oklch(43.9% 0 none);
    --color-neutral-700: oklch(37.1% 0 none);
    --color-neutral-800: oklch(26.9% 0 none);
    --color-neutral-900: oklch(20.5% 0 none);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-2xl: 42rem;
    --container-4xl: 56rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --leading-snug: 1.375;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --radius-md: calc(var(--radius) * 0.8);
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-xs: 4px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-geist-sans);
    --default-mono-font-family: var(--font-geist-mono);
    --color-border: var(--border);
    --color-primary: var(--primary);
  }


  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring:where(:not(iframe)) {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }


  .\@container\/card-header {
    container-type: inline-size;
    container-name: card-header;
  }
  .\@container {
    container-type: inline-size;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip-path: none;
    white-space: normal;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .-inset-1 {
    inset: calc(var(--spacing) * -1);
  }
  .inset-0 {
    inset: 0px;
  }
  .top-0 {
    top: 0px;
  }
  .top-1 {
    top: var(--spacing);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-2 {
    top: calc(var(--spacing) * 2);
  }
  .right-0 {
    right: 0px;
  }
  .right-1 {
    right: var(--spacing);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .bottom-1 {
    bottom: var(--spacing);
  }
  .left-0 {
    left: 0px;
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .isolate {
    isolation: isolate;
  }
  .isolation-auto {
    isolation: auto;
  }
  .z-10 {
    z-index: 10;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[-1\] {
    z-index: -1;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-2 {
    grid-row: span 2 / span 2;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .clear-none {
    clear: none;
  }
  .\!container {
    width: 100% !important;
    @media (width >= 40rem) {
      max-width: 40rem !important;
    }
    @media (width >= 48rem) {
      max-width: 48rem !important;
    }
    @media (width >= 64rem) {
      max-width: 64rem !important;
    }
    @media (width >= 80rem) {
      max-width: 80rem !important;
    }
    @media (width >= 96rem) {
      max-width: 96rem !important;
    }
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .m-1 {
    margin: var(--spacing);
  }
  .m-2 {
    margin: calc(var(--spacing) * 2);
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .mx-3 {
    margin-inline: calc(var(--spacing) * 3);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: var(--spacing);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mr-1\.5 {
    margin-right: calc(var(--spacing) * 1.5);
  }
  .-mb-4 {
    margin-bottom: calc(var(--spacing) * -4);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .ml-0\.5 {
    margin-left: calc(var(--spacing) * 0.5);
  }
  .ml-1 {
    margin-left: var(--spacing);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-5 {
    margin-left: calc(var(--spacing) * 5);
  }
  .ml-8 {
    margin-left: calc(var(--spacing) * 8);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .flow-root {
    display: flow-root;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .inline-table {
    display: inline-table;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .table\! {
    display: table !important;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-column {
    display: table-column;
  }
  .table-column-group {
    display: table-column-group;
  }
  .table-footer-group {
    display: table-footer-group;
  }
  .table-header-group {
    display: table-header-group;
  }
  .table-row {
    display: table-row;
  }
  .table-row-group {
    display: table-row-group;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-3 {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .size-3\.5 {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .size-4 {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .size-5 {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }
  .size-6 {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .size-7 {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
  }
  .size-8 {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .size-9 {
    width: calc(var(--spacing) * 9);
    height: calc(var(--spacing) * 9);
  }
  .size-10 {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
  }
  .size-12 {
    width: calc(var(--spacing) * 12);
    height: calc(var(--spacing) * 12);
  }
  .size-32 {
    width: calc(var(--spacing) * 32);
    height: calc(var(--spacing) * 32);
  }
  .size-64 {
    width: calc(var(--spacing) * 64);
    height: calc(var(--spacing) * 64);
  }
  .size-full {
    width: 100%;
    height: 100%;
  }
  .\!h-8 {
    height: calc(var(--spacing) * 8) !important;
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-8\! {
    height: calc(var(--spacing) * 8) !important;
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-40 {
    height: calc(var(--spacing) * 40);
  }
  .h-84 {
    height: calc(var(--spacing) * 84);
  }
  .h-120 {
    height: calc(var(--spacing) * 120);
  }
  .h-\[80vh\] {
    height: 80vh;
  }
  .h-\[150px\] {
    height: 150px;
  }
  .h-\[300px\] {
    height: 300px;
  }
  .h-\[600px\] {
    height: 600px;
  }
  .h-\[var\(--active-tab-height\)\] {
    height: var(--active-tab-height);
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-screen {
    height: 100vh;
  }
  .max-h-96 {
    max-height: calc(var(--spacing) * 96);
  }
  .max-h-\[150px\] {
    max-height: 150px;
  }
  .max-h-full {
    max-height: 100%;
  }
  .min-h-6 {
    min-height: calc(var(--spacing) * 6);
  }
  .min-h-\[60px\] {
    min-height: 60px;
  }
  .min-h-\[200px\] {
    min-height: 200px;
  }
  .min-h-full {
    min-height: 100%;
  }
  .min-h-px {
    min-height: 1px;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-72 {
    width: calc(var(--spacing) * 72);
  }
  .w-80 {
    width: calc(var(--spacing) * 80);
  }
  .w-\[95\%\] {
    width: 95%;
  }
  .w-\[200px\] {
    width: 200px;
  }
  .w-\[300px\] {
    width: 300px;
  }
  .w-\[400px\] {
    width: 400px;
  }
  .w-\[var\(--active-tab-width\)\] {
    width: var(--active-tab-width);
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-\[140px\] {
    max-width: 140px;
  }
  .max-w-\[calc\(100\%-2rem\)\] {
    max-width: calc(100% - 2rem);
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-0 {
    min-width: 0px;
  }
  .min-w-6 {
    min-width: calc(var(--spacing) * 6);
  }
  .min-w-16 {
    min-width: calc(var(--spacing) * 16);
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink {
    flex-shrink: 1;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .grow {
    flex-grow: 1;
  }
  .basis-full {
    flex-basis: 100%;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .origin-\(--transform-origin\) {
    transform-origin: var(--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-\[var\(--active-tab-left\)\] {
    --tw-translate-x: var(--active-tab-left);
    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-none {
    translate: none;
  }
  .scale-1 {
    --tw-scale-x: 1%;
    --tw-scale-y: 1%;
    --tw-scale-z: 1%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .scale-3d {
    scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
  }
  .-rotate-90 {
    rotate: calc(90deg * -1);
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .transform\! {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,) !important;
  }
  .shimmer {
    --_spread: var(--shimmer-spread, calc(3ch + 40px));
    --_base: currentColor;
    --_highlight: var(
    --shimmer-color,
    oklch(from currentColor l c h / calc(alpha* 0.2))
  );
    background-image: var( --shimmer-image, linear-gradient( calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), var(--_highlight) calc(50% - var(--_spread) * 0.5), var(--_highlight) 50%, var(--_highlight) calc(50% + var(--_spread) * 0.5), var(--_base) calc(50% + var(--_spread)) ) );
    @supports (color: color-mix(in lab, red, red)) {
      background-image: var( --shimmer-image, linear-gradient( calc(90deg + var(--shimmer-angle)), var(--_base) calc(50% - var(--_spread)), color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% - var(--_spread) * 0.5), var(--_highlight) 50%, color-mix(in oklch, var(--_highlight), var(--_base) 50%) calc(50% + var(--_spread) * 0.5), var(--_base) calc(50% + var(--_spread)) ) );
    }
    background-repeat: no-repeat;
    background-size: calc(200% + var(--_spread) * 2) 100%;
    background-position: 0 0;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: var(--shimmer-text-fill, transparent);
    animation: tw-shimmer var(--shimmer-duration, 2s) linear infinite;
    &:is(.dark *) {
      --_highlight: var(
      --shimmer-color,
      oklch(from currentColor max(0.8, calc(l + 0.4)) c h / calc(alpha + 0.4))
    );
    }
    &:where([dir="rtl"], [dir="rtl"] *) {
      animation-direction: reverse;
    }
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-grab {
    cursor: grab;
  }
  .cursor-grab\! {
    cursor: grab !important;
  }
  .cursor-grabbing {
    cursor: grabbing;
  }
  .cursor-grabbing\! {
    cursor: grabbing !important;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-text {
    cursor: text;
  }
  .touch-pinch-zoom {
    --tw-pinch-zoom: pinch-zoom;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .resize {
    resize: both;
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-disc {
    list-style-type: disc;
  }
  .auto-rows-min {
    grid-auto-rows: min-content;
  }
  .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-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .gap-\(--card-spacing\) {
    gap: var(--card-spacing);
  }
  .gap-0 {
    gap: 0px;
  }
  .gap-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: var(--spacing);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .space-y-1 > :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(var(--spacing) * var(--tw-space-y-reverse));
    margin-block-end: calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)));
  }
  .space-y-2 > :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
  }
  .space-y-3 > :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
  }
  .space-y-4 > :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
  }
  .space-y-6 > :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
  }
  .space-y-reverse > :not(:last-child) {
    --tw-space-y-reverse: 1;
  }
  .space-x-reverse > :not(:last-child) {
    --tw-space-x-reverse: 1;
  }
  .divide-x > :not(:last-child) {
    --tw-divide-x-reverse: 0;
    border-inline-style: var(--tw-border-style);
    border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
    border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
  }
  .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)));
  }
  .divide-y-reverse > :not(:last-child) {
    --tw-divide-y-reverse: 1;
  }
  .self-start {
    align-self: flex-start;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-4xl {
    border-radius: calc(var(--radius) * 2.6);
  }
  .rounded-\[5px\] {
    border-radius: 5px;
  }
  .rounded-\[min\(var\(--radius-md\)\,10px\)\] {
    border-radius: min(var(--radius-md), 10px);
  }
  .rounded-\[min\(var\(--radius-md\)\,12px\)\] {
    border-radius: min(var(--radius-md), 12px);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius);
  }
  .rounded-md {
    border-radius: calc(var(--radius) * 0.8);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: calc(var(--radius) * 0.6);
  }
  .rounded-xl {
    border-radius: calc(var(--radius) * 1.4);
  }
  .rounded-s {
    border-start-start-radius: 0.25rem;
    border-end-start-radius: 0.25rem;
  }
  .rounded-ss {
    border-start-start-radius: 0.25rem;
  }
  .rounded-e {
    border-start-end-radius: 0.25rem;
    border-end-end-radius: 0.25rem;
  }
  .rounded-se {
    border-start-end-radius: 0.25rem;
  }
  .rounded-ee {
    border-end-end-radius: 0.25rem;
  }
  .rounded-es {
    border-end-start-radius: 0.25rem;
  }
  .rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .rounded-t-xl {
    border-top-left-radius: calc(var(--radius) * 1.4);
    border-top-right-radius: calc(var(--radius) * 1.4);
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-tl {
    border-top-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-tr {
    border-top-right-radius: 0.25rem;
  }
  .rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-b-none {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
  }
  .rounded-b-xl {
    border-bottom-right-radius: calc(var(--radius) * 1.4);
    border-bottom-left-radius: calc(var(--radius) * 1.4);
  }
  .rounded-br {
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-bl {
    border-bottom-left-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border\! {
    border-style: var(--tw-border-style) !important;
    border-width: 1px !important;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-x {
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }
  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }
  .border-bs {
    border-block-start-style: var(--tw-border-style);
    border-block-start-width: 1px;
  }
  .border-be {
    border-block-end-style: var(--tw-border-style);
    border-block-end-width: 1px;
  }
  .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-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-0 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-l-\[3px\] {
    border-left-style: var(--tw-border-style);
    border-left-width: 3px;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-amber-300 {
    border-color: var(--color-amber-300);
  }
  .border-border {
    border-color: var(--border);
  }
  .border-input {
    border-color: var(--input);
  }
  .border-neutral-200 {
    border-color: var(--color-neutral-200);
  }
  .border-red-200 {
    border-color: var(--color-red-200);
  }
  .border-transparent {
    border-color: transparent;
  }
  .bg-\[\#e6ffec\] {
    background-color: #e6ffec;
  }
  .bg-\[\#ffebe9\] {
    background-color: #ffebe9;
  }
  .bg-\[\#ffefc6\] {
    background-color: #ffefc6;
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-background {
    background-color: var(--background);
  }
  .bg-black\/10 {
    background-color: color-mix(in srgb, #000 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 10%, transparent);
    }
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-50\/50 {
    background-color: color-mix(in srgb, oklch(97% 0.014 254.604) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 50%, transparent);
    }
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }
  .bg-border {
    background-color: var(--border);
  }
  .bg-card {
    background-color: var(--card);
  }
  .bg-destructive\/10 {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-muted {
    background-color: var(--muted);
  }
  .bg-muted\/50 {
    background-color: var(--muted);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }
  .bg-neutral-700 {
    background-color: var(--color-neutral-700);
  }
  .bg-popover {
    background-color: var(--popover);
  }
  .bg-primary {
    background-color: var(--primary);
  }
  .bg-primary\/10 {
    background-color: var(--primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }
  .bg-purple-100 {
    background-color: var(--color-purple-100);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-secondary {
    background-color: var(--secondary);
  }
  .bg-sidebar {
    background-color: var(--sidebar);
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .bg-repeat {
    background-repeat: repeat;
  }
  .mask-no-clip {
    mask-clip: no-clip;
  }
  .mask-repeat {
    mask-repeat: repeat;
  }
  .object-contain {
    object-fit: contain;
  }
  .p-\(--card-spacing\) {
    padding: var(--card-spacing);
  }
  .p-0 {
    padding: 0px;
  }
  .p-1 {
    padding: var(--spacing);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .px-\(--card-spacing\) {
    padding-inline: var(--card-spacing);
  }
  .px-0 {
    padding-inline: 0px;
  }
  .px-0\.5 {
    padding-inline: calc(var(--spacing) * 0.5);
  }
  .px-1 {
    padding-inline: var(--spacing);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .py-\(--card-spacing\) {
    padding-block: var(--card-spacing);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: var(--spacing);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-12 {
    padding-right: calc(var(--spacing) * 12);
  }
  .pl-1 {
    padding-left: var(--spacing);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .align-bottom {
    vertical-align: bottom;
  }
  .align-middle {
    vertical-align: middle;
  }
  .align-top {
    vertical-align: top;
  }
  .font-heading {
    font-family: var(--font-sans);
  }
  .font-mono {
    font-family: var(--font-geist-mono);
  }
  .font-sans {
    font-family: var(--font-geist-sans);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[0\.8rem\] {
    font-size: 0.8rem;
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .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-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .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);
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .break-all {
    word-break: break-all;
  }
  .text-clip {
    text-overflow: clip;
  }
  .text-ellipsis {
    text-overflow: ellipsis;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .text-amber-900 {
    color: var(--color-amber-900);
  }
  .text-blue-800 {
    color: var(--color-blue-800);
  }
  .text-card-foreground {
    color: var(--card-foreground);
  }
  .text-destructive {
    color: var(--destructive);
  }
  .text-foreground {
    color: var(--foreground);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .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-muted-foreground {
    color: var(--muted-foreground);
  }
  .text-muted-foreground\/40 {
    color: var(--muted-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--muted-foreground) 40%, transparent);
    }
  }
  .text-muted-foreground\/60 {
    color: var(--muted-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--muted-foreground) 60%, transparent);
    }
  }
  .text-muted-foreground\/70 {
    color: var(--muted-foreground);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--muted-foreground) 70%, transparent);
    }
  }
  .text-neutral-400 {
    color: var(--color-neutral-400);
  }
  .text-neutral-500 {
    color: var(--color-neutral-500);
  }
  .text-neutral-600 {
    color: var(--color-neutral-600);
  }
  .text-neutral-700 {
    color: var(--color-neutral-700);
  }
  .text-neutral-900 {
    color: var(--color-neutral-900);
  }
  .text-popover-foreground {
    color: var(--popover-foreground);
  }
  .text-primary {
    color: var(--primary);
  }
  .text-primary-foreground {
    color: var(--primary-foreground);
  }
  .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-secondary-foreground {
    color: var(--secondary-foreground);
  }
  .text-transparent {
    color: transparent;
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .italic\! {
    font-style: italic !important;
  }
  .not-italic {
    font-style: normal;
  }
  .diagonal-fractions {
    --tw-numeric-fraction: diagonal-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .lining-nums {
    --tw-numeric-figure: lining-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .oldstyle-nums {
    --tw-numeric-figure: oldstyle-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .proportional-nums {
    --tw-numeric-spacing: proportional-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .slashed-zero {
    --tw-slashed-zero: slashed-zero;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .stacked-fractions {
    --tw-numeric-fraction: stacked-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .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,);
  }
  .normal-nums {
    font-variant-numeric: normal;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .underline\! {
    text-decoration-line: underline !important;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-1 {
    --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);
  }
  .inset-ring {
    --tw-inset-ring-shadow: inset 0 0 0 1px var(--tw-inset-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-foreground\/10 {
    --tw-ring-color: var(--foreground);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--foreground) 10%, transparent);
    }
  }
  .ring-offset-background {
    --tw-ring-offset-color: var(--background);
  }
  .outline-hidden {
    --tw-outline-style: none;
    outline-style: none;
    @media (forced-colors: active) {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .outline-2 {
    outline-style: var(--tw-outline-style);
    outline-width: 2px;
  }
  .outline-blue-400 {
    outline-color: var(--color-blue-400);
  }
  .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,);
  }
  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.1))) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.06)));
    --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .sepia {
    --tw-sepia: sepia(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .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-grayscale {
    --tw-backdrop-grayscale: grayscale(100%);
    -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-invert {
    --tw-backdrop-invert: invert(100%);
    -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-sepia {
    --tw-backdrop-sepia: sepia(100%);
    -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-filter {
    -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-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-100 {
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .duration-150 {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .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);
  }
  .outline-dashed {
    --tw-outline-style: dashed;
    outline-style: dashed;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-all {
    -webkit-user-select: all;
    user-select: all;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .\[--card-spacing\:--spacing\(4\)\] {
    --card-spacing: calc(var(--spacing) * 4);
  }
  .divide-x-reverse > :not(:last-child) {
    --tw-divide-x-reverse: 1;
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  @media (hover: hover) {
    .group-hover\:opacity-0:is(:where(.group):hover *) {
      opacity: 0%;
    }
    .group-hover\:opacity-100:is(:where(.group):hover *) {
      opacity: 100%;
    }
  }
  .group-has-data-\[slot\=item-description\]\/item\:translate-y-0\.5:is(:where(.group\/item):has([data-slot="item-description"]) *) {
    --tw-translate-y: calc(var(--spacing) * 0.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .group-has-data-\[slot\=item-description\]\/item\:self-start:is(:where(.group\/item):has([data-slot="item-description"]) *) {
    align-self: flex-start;
  }
  .group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled="true"] *) {
    pointer-events: none;
  }
  .group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled="true"] *) {
    opacity: 50%;
  }
  .group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size="sm"] *) {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .group-data-\[size\=sm\]\/item\:size-8:is(:where(.group\/item)[data-size="sm"] *) {
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
  }
  .group-data-\[size\=xs\]\/item\:size-6:is(:where(.group\/item)[data-size="xs"] *) {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }
  .group-data-\[size\=xs\]\/item\:gap-0:is(:where(.group\/item)[data-size="xs"] *) {
    gap: 0px;
  }
  .group-data-\[size\=xs\]\/item\:text-xs:is(:where(.group\/item)[data-size="xs"] *) {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .group-\[\.is-user\]\:bg-primary:is(:where(.group):is(.is-user) *) {
    background-color: var(--primary);
  }
  .group-\[\.is-user\]\:px-4:is(:where(.group):is(.is-user) *) {
    padding-inline: calc(var(--spacing) * 4);
  }
  .group-\[\.is-user\]\:py-3:is(:where(.group):is(.is-user) *) {
    padding-block: calc(var(--spacing) * 3);
  }
  .group-\[\.is-user\]\:text-primary-foreground:is(:where(.group):is(.is-user) *) {
    color: var(--primary-foreground);
  }
  .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
    cursor: not-allowed;
  }
  .peer-disabled\:opacity-50:is(:where(.peer):disabled ~ *) {
    opacity: 50%;
  }
  .file\:mr-4::file-selector-button {
    margin-right: calc(var(--spacing) * 4);
  }
  .file\:inline-flex::file-selector-button {
    display: inline-flex;
  }
  .file\:h-6::file-selector-button {
    height: calc(var(--spacing) * 6);
  }
  .file\:rounded-md::file-selector-button {
    border-radius: calc(var(--radius) * 0.8);
  }
  .file\:border-0::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .file\:bg-primary::file-selector-button {
    background-color: var(--primary);
  }
  .file\:bg-transparent::file-selector-button {
    background-color: transparent;
  }
  .file\:px-4::file-selector-button {
    padding-inline: calc(var(--spacing) * 4);
  }
  .file\:py-2::file-selector-button {
    padding-block: calc(var(--spacing) * 2);
  }
  .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);
  }
  .file\:text-foreground::file-selector-button {
    color: var(--foreground);
  }
  .file\:text-primary-foreground::file-selector-button {
    color: var(--primary-foreground);
  }
  .placeholder\:text-muted-foreground::placeholder {
    color: var(--muted-foreground);
  }
  .focus-within\:ring-2:focus-within {
    --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-within\:ring-ring:focus-within {
    --tw-ring-color: var(--ring);
  }
  .focus-within\:ring-offset-2:focus-within {
    --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);
  }
  @media (hover: hover) {
    .hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover {
        background-color: color-mix(in oklch,var(--secondary),var(--foreground) 5%);
      }
    }
    .hover\:bg-blue-700:hover {
      background-color: var(--color-blue-700);
    }
    .hover\:bg-destructive\/20:hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-destructive\/20:hover {
        background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
    .hover\:bg-muted:hover {
      background-color: var(--muted);
    }
    .hover\:bg-muted-foreground\/20:hover {
      background-color: var(--muted-foreground);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted-foreground\/20:hover {
        background-color: color-mix(in oklab, var(--muted-foreground) 20%, transparent);
      }
    }
    .hover\:bg-muted\/50:hover {
      background-color: var(--muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-muted\/50:hover {
        background-color: color-mix(in oklab, var(--muted) 50%, transparent);
      }
    }
    .hover\:bg-neutral-800:hover {
      background-color: var(--color-neutral-800);
    }
    .hover\:bg-primary\/80:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/80:hover {
        background-color: color-mix(in oklab, var(--primary) 80%, transparent);
      }
    }
    .hover\:bg-primary\/90:hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .hover\:bg-primary\/90:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
    .hover\:text-foreground:hover {
      color: var(--foreground);
    }
    .hover\:text-muted-foreground:hover {
      color: var(--muted-foreground);
    }
    .hover\:no-underline:hover {
      text-decoration-line: none;
    }
    .hover\:underline:hover {
      text-decoration-line: underline;
    }
    .hover\:file\:bg-primary\/90:hover::file-selector-button {
      background-color: var(--primary);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
  }
  .focus-visible\:border-destructive\/40:focus-visible {
    border-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .focus-visible\:border-ring:focus-visible {
    border-color: var(--ring);
  }
  .focus-visible\:ring-0:focus-visible {
    --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);
  }
  .focus-visible\:ring-2:focus-visible {
    --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-visible\:ring-3:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-\[3px\]:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .focus-visible\:ring-destructive\/20:focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .focus-visible\:ring-ring:focus-visible {
    --tw-ring-color: var(--ring);
  }
  .focus-visible\:ring-ring\/50:focus-visible {
    --tw-ring-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  .active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]) {
    --tw-translate-y: 1px;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .disabled\:pointer-events-none:disabled {
    pointer-events: none;
  }
  .disabled\:cursor-not-allowed:disabled {
    cursor: not-allowed;
  }
  .disabled\:bg-input\/50:disabled {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 50%, transparent);
    }
  }
  .disabled\:opacity-50:disabled {
    opacity: 50%;
  }
  :where([data-slot="button-group"]) .in-data-\[slot\=button-group\]\:rounded-lg {
    border-radius: var(--radius);
  }
  :where([data-slot="dropdown-menu-content"]) .in-data-\[slot\=dropdown-menu-content\]\:p-0 {
    padding: 0px;
  }
  .has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon="inline-end"]) {
    padding-right: calc(var(--spacing) * 1.5);
  }
  .has-data-\[icon\=inline-end\]\:pr-2:has([data-icon="inline-end"]) {
    padding-right: calc(var(--spacing) * 2);
  }
  .has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon="inline-start"]) {
    padding-left: calc(var(--spacing) * 1.5);
  }
  .has-data-\[icon\=inline-start\]\:pl-2:has([data-icon="inline-start"]) {
    padding-left: calc(var(--spacing) * 2);
  }
  .has-data-\[size\=sm\]\:gap-2\.5:has([data-size="sm"]) {
    gap: calc(var(--spacing) * 2.5);
  }
  .has-data-\[size\=xs\]\:gap-2:has([data-size="xs"]) {
    gap: calc(var(--spacing) * 2);
  }
  .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot="card-action"]) {
    grid-template-columns: 1fr auto;
  }
  .has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot="card-description"]) {
    grid-template-rows: auto auto;
  }
  .has-data-\[slot\=card-footer\]\:pb-0:has([data-slot="card-footer"]) {
    padding-bottom: 0px;
  }
  .has-\[\>img\:first-child\]\:pt-0:has( > img:first-child) {
    padding-top: 0px;
  }
  .aria-expanded\:bg-muted[aria-expanded="true"] {
    background-color: var(--muted);
  }
  .aria-expanded\:bg-secondary[aria-expanded="true"] {
    background-color: var(--secondary);
  }
  .aria-expanded\:text-foreground[aria-expanded="true"] {
    color: var(--foreground);
  }
  .aria-expanded\:text-secondary-foreground[aria-expanded="true"] {
    color: var(--secondary-foreground);
  }
  .aria-invalid\:border-destructive[aria-invalid="true"] {
    border-color: var(--destructive);
  }
  .aria-invalid\:ring-3[aria-invalid="true"] {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .data-\[selected\]\:bg-background[data-selected] {
    background-color: var(--background);
  }
  .data-\[selected\]\:text-foreground[data-selected] {
    color: var(--foreground);
  }
  .data-\[selected\]\:shadow-sm[data-selected] {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size="sm"] {
    --card-spacing: calc(var(--spacing) * 3);
  }
  .data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size="sm"]:has([data-slot="card-footer"]) {
    padding-bottom: 0px;
  }
  @supports (backdrop-filter: var(--tw)) {
    .supports-backdrop-filter\: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,);
    }
  }
  @media (width >= 40rem) {
    .sm\:max-w-\[80vw\] {
      max-width: 80vw;
    }
    .sm\:max-w-\[480px\] {
      max-width: 480px;
    }
    .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\:justify-between {
      justify-content: space-between;
    }
    .sm\:justify-end {
      justify-content: flex-end;
    }
  }
  @media (width >= 48rem) {
    .md\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .dark\:border-input:is(.dark *) {
    border-color: var(--input);
  }
  .dark\:bg-destructive\/20:is(.dark *) {
    background-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
  .dark\:bg-input\/30:is(.dark *) {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 30%, transparent);
    }
  }
  .dark\:text-green-400:is(.dark *) {
    color: var(--color-green-400);
  }
  @media (hover: hover) {
    .dark\:hover\:bg-destructive\/30:is(.dark *):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-destructive\/30:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--destructive) 30%, transparent);
      }
    }
    .dark\:hover\:bg-input\/50:is(.dark *):hover {
      background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-input\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--input) 50%, transparent);
      }
    }
    .dark\:hover\:bg-muted\/50:is(.dark *):hover {
      background-color: var(--muted);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .dark\:hover\:bg-muted\/50:is(.dark *):hover {
        background-color: color-mix(in oklab, var(--muted) 50%, transparent);
      }
    }
  }
  .dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .dark\:disabled\:bg-input\/80:is(.dark *):disabled {
    background-color: var(--input);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--input) 80%, transparent);
    }
  }
  .dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid="true"] {
    border-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--destructive) 50%, transparent);
    }
  }
  .dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 40%, transparent);
    }
  }
  .data-horizontal\:h-px:where([data-orientation="horizontal"]) {
    height: 1px;
  }
  .data-horizontal\:w-full:where([data-orientation="horizontal"]) {
    width: 100%;
  }
  .data-vertical\:w-px:where([data-orientation="vertical"]) {
    width: 1px;
  }
  .data-vertical\:self-stretch:where([data-orientation="vertical"]) {
    align-self: stretch;
  }
  .\[\&_img\]\:size-full img {
    width: 100%;
    height: 100%;
  }
  .\[\&_img\]\:object-cover img {
    object-fit: cover;
  }
  .\[\&_svg\]\:pointer-events-none svg {
    pointer-events: none;
  }
  .\[\&_svg\]\:shrink-0 svg {
    flex-shrink: 0;
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*='size-']) {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*='size-']) {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }
  .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*='size-']) {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
  .\[\&\+\[data-slot\=item-content\]\]\:flex-none + [data-slot=item-content] {
    flex: none;
  }
  .\[\.border-b\]\:pb-\(--card-spacing\):is(.border-b) {
    padding-bottom: var(--card-spacing);
  }
  .\[a\]\:transition-colors:is(a) {
    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));
  }
  :is(.\*\:\[a\]\:underline > *):is(a) {
    text-decoration-line: underline;
  }
  :is(.\*\:\[a\]\:underline-offset-3 > *):is(a) {
    text-underline-offset: 3px;
  }
  @media (hover: hover) {
    .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
      background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-destructive\/20:is(a):hover {
        background-color: color-mix(in oklab, var(--destructive) 20%, transparent);
      }
    }
    .\[a\]\:hover\:bg-muted:is(a):hover {
      background-color: var(--muted);
    }
    .\[a\]\:hover\:bg-primary\/80:is(a):hover {
      background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-primary\/80:is(a):hover {
        background-color: color-mix(in oklab, var(--primary) 80%, transparent);
      }
    }
    .\[a\]\:hover\:bg-secondary\/80:is(a):hover {
      background-color: var(--secondary);
    }
    @supports (color: color-mix(in lab, red, red)) {
      .\[a\]\:hover\:bg-secondary\/80:is(a):hover {
        background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
      }
    }
    .\[a\]\:hover\:text-muted-foreground:is(a):hover {
      color: var(--muted-foreground);
    }
    :is(.\*\:\[a\]\:hover\:text-foreground > *):is(a):hover {
      color: var(--foreground);
    }
  }
  :is(.\*\:\[img\:first-child\]\:rounded-t-xl > *):is(img:first-child) {
    border-top-left-radius: calc(var(--radius) * 1.4);
    border-top-right-radius: calc(var(--radius) * 1.4);
  }
  :is(.\*\:\[img\:last-child\]\:rounded-b-xl > *):is(img:last-child) {
    border-bottom-right-radius: calc(var(--radius) * 1.4);
    border-bottom-left-radius: calc(var(--radius) * 1.4);
  }
  .\[\&\>a\]\:underline > a {
    text-decoration-line: underline;
  }
  .\[\&\>a\]\:underline-offset-4 > a {
    text-underline-offset: 4px;
  }
  .\[\&\>a\:hover\]\:text-primary > a:hover {
    color: var(--primary);
  }
  .\[\&\>div\]\:h-full > div {
    height: 100%;
  }
  .\[\&\>div\>div\]\:h-full > div > div {
    height: 100%;
  }
  .\[\&\>svg\]\:pointer-events-none > svg {
    pointer-events: none;
  }
  .\[\&\>svg\]\:size-3\! > svg {
    width: calc(var(--spacing) * 3) !important;
    height: calc(var(--spacing) * 3) !important;
  }

@property --scroll-fade-t {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-b {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-s {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-e {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0px;
}
@property --scroll-fade-mask {
  syntax: "*";
  inherits: false;
}
@property --shimmer-angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: 20deg;
}
@property --shimmer-image {
  syntax: "*";
  inherits: false;
}
@property --shimmer-text-fill {
  syntax: "*";
  inherits: false;
}
@media (prefers-reduced-motion: reduce) {
  .shimmer {
    animation: none;
    background-image: none;
    -webkit-text-fill-color: currentColor;
  }
}
:root {
  --font-geist-sans: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --font-dm-sans: 'DM Sans', 'Inter', ui-sans-serif, system-ui, sans-serif;
  --font-geist-mono: ui-monospace, 'SFMono-Regular', 'Menlo', 'Consolas', monospace;
  --background: oklch(1 0 0);
  --foreground: oklch(0.145 0 0);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);
  --primary: oklch(0.205 0 0);
  --primary-foreground: oklch(0.985 0 0);
  --secondary: oklch(0.97 0 0);
  --secondary-foreground: oklch(0.205 0 0);
  --muted: oklch(0.97 0 0);
  --muted-foreground: oklch(0.556 0 0);
  --accent: oklch(0.97 0 0);
  --accent-foreground: oklch(0.205 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --border: oklch(0.922 0 0);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.708 0 0);
  --chart-1: oklch(0.87 0 0);
  --chart-2: oklch(0.556 0 0);
  --chart-3: oklch(0.439 0 0);
  --chart-4: oklch(0.371 0 0);
  --chart-5: oklch(0.269 0 0);
  --radius: 0.625rem;
  --sidebar: oklch(0.985 0 0);
  --sidebar-foreground: oklch(0.145 0 0);
  --sidebar-primary: oklch(0.205 0 0);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.97 0 0);
  --sidebar-accent-foreground: oklch(0.205 0 0);
  --sidebar-border: oklch(0.922 0 0);
  --sidebar-ring: oklch(0.708 0 0);
}
.dark {
  --background: oklch(0.145 0 0);
  --foreground: oklch(0.985 0 0);
  --card: oklch(0.205 0 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: oklch(0.205 0 0);
  --popover-foreground: oklch(0.985 0 0);
  --primary: oklch(0.922 0 0);
  --primary-foreground: oklch(0.205 0 0);
  --secondary: oklch(0.269 0 0);
  --secondary-foreground: oklch(0.985 0 0);
  --muted: oklch(0.269 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --accent: oklch(0.269 0 0);
  --accent-foreground: oklch(0.985 0 0);
  --destructive: oklch(0.704 0.191 22.216);
  --border: oklch(1 0 0 / 10%);
  --input: oklch(1 0 0 / 15%);
  --ring: oklch(0.556 0 0);
  --chart-1: oklch(0.87 0 0);
  --chart-2: oklch(0.556 0 0);
  --chart-3: oklch(0.439 0 0);
  --chart-4: oklch(0.371 0 0);
  --chart-5: oklch(0.269 0 0);
  --sidebar: oklch(0.205 0 0);
  --sidebar-foreground: oklch(0.985 0 0);
  --sidebar-primary: oklch(0.488 0.243 264.376);
  --sidebar-primary-foreground: oklch(0.985 0 0);
  --sidebar-accent: oklch(0.269 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(1 0 0 / 10%);
  --sidebar-ring: oklch(0.556 0 0);
}

  * {
    border-color: var(--border);
    outline-color: var(--ring);
    @supports (color: color-mix(in lab, red, red)) {
      outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }
  body {
    background-color: var(--background);
    color: var(--foreground);
  }
  html {
    font-family: var(--font-geist-sans);
  }

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  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-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  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: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@keyframes tw-shimmer {
  from {
    background-position: 100% 0;
  }
  to {
    background-position: 0 0;
  }
}

  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    :root, :host {
      --shimmer-angle: 20deg;
    }
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-leading: initial;
      --tw-font-weight: 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;
      --scroll-fade-t: 0px;
      --scroll-fade-b: 0px;
      --scroll-fade-s: 0px;
      --scroll-fade-e: 0px;
      --scroll-fade-mask: initial;
      --shimmer-image: initial;
      --shimmer-text-fill: initial;
    }
  }

