/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;

@layer theme {

  :root,
  :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --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-red-800: oklch(44.4% 0.177 26.899);
    --color-red-900: oklch(39.6% 0.141 25.723);
    --color-red-950: oklch(25.8% 0.092 26.042);
    --color-orange-100: oklch(95.4% 0.038 75.164);
    --color-orange-200: oklch(90.1% 0.076 70.697);
    --color-orange-400: oklch(75% 0.183 55.934);
    --color-orange-950: oklch(26.6% 0.079 36.259);
    --color-yellow-50: oklch(98.7% 0.026 102.212);
    --color-yellow-100: oklch(97.3% 0.071 103.193);
    --color-yellow-200: oklch(94.5% 0.129 101.54);
    --color-yellow-400: oklch(85.2% 0.199 91.936);
    --color-yellow-500: oklch(79.5% 0.184 86.047);
    --color-yellow-600: oklch(68.1% 0.162 75.834);
    --color-yellow-700: oklch(55.4% 0.135 66.442);
    --color-yellow-800: oklch(47.6% 0.114 61.907);
    --color-yellow-900: oklch(42.1% 0.095 57.708);
    --color-yellow-950: oklch(28.6% 0.066 53.813);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --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-green-900: oklch(39.3% 0.095 152.535);
    --color-green-950: oklch(26.6% 0.065 152.934);
    --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-blue-900: oklch(37.9% 0.146 265.522);
    --color-blue-950: oklch(28.2% 0.091 267.935);
    --color-violet-50: oklch(96.9% 0.016 293.756);
    --color-violet-100: oklch(94.3% 0.029 294.588);
    --color-violet-200: oklch(89.4% 0.057 293.283);
    --color-violet-500: oklch(60.6% 0.25 292.717);
    --color-violet-600: oklch(54.1% 0.281 293.009);
    --color-violet-700: oklch(49.1% 0.27 292.581);
    --color-violet-800: oklch(43.2% 0.232 292.759);
    --color-violet-950: oklch(28.3% 0.141 291.089);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-400: oklch(71.4% 0.203 305.504);
    --color-purple-500: oklch(62.7% 0.265 303.9);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-purple-700: oklch(49.6% 0.265 301.924);
    --color-purple-800: oklch(43.8% 0.218 303.724);
    --color-purple-900: oklch(38.1% 0.176 304.987);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-zinc-50: oklch(98.5% 0 0);
    --color-zinc-100: oklch(96.7% 0.001 286.375);
    --color-zinc-200: oklch(92% 0.004 286.32);
    --color-zinc-300: oklch(87.1% 0.006 286.286);
    --color-zinc-400: oklch(70.5% 0.015 286.067);
    --color-zinc-500: oklch(55.2% 0.016 285.938);
    --color-zinc-600: oklch(44.2% 0.017 285.786);
    --color-zinc-800: oklch(27.4% 0.006 286.033);
    --color-zinc-900: oklch(21% 0.006 285.885);
    --color-zinc-950: oklch(14.1% 0.005 285.823);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-700: oklch(37.1% 0 0);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --breakpoint-sm: 40rem;
    --breakpoint-md: 48rem;
    --breakpoint-lg: 64rem;
    --breakpoint-xl: 80rem;
    --breakpoint-2xl: 96rem;
    --container-md: 28rem;
    --container-2xl: 42rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --tracking-tight: -0.025em;
    --leading-tight: 1.25;
    --leading-relaxed: 1.625;
    --radius-xs: 0.125rem;
    --radius-sm: calc(var(--radius) - 4px);
    --radius-md: calc(var(--radius) - 2px);
    --radius-lg: var(--radius);
    --radius-xl: calc(var(--radius) + 4px);
    --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-sm: 8px;
    --blur-md: 12px;
    --aspect-video: 16 / 9;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --color-background: var(--background);
    --color-popover: var(--popover);
    --color-muted-foreground: var(--muted-foreground);
    --color-accent: var(--accent);
    --color-primary: var(--primary);
    --color-primary-foreground: var(--primary-foreground);
    --color-secondary-foreground: var(--secondary-foreground);
    --color-destructive: var(--destructive);
    --color-mono: var(--mono);
    --color-border: var(--border);
    --color-input: var(--input);
    --text-2sm: 0.8125rem;
    --text-2sm--line-height: calc(1.075 / 0.8125);
    --text-2xs: 0.6875rem;
    --text-2xs--line-height: calc(0.825 / 0.6875);
  }
}

@layer base {

  *,
  ::after,
  ::before,
  ::backdrop,
  ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }

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

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

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

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

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

  b,
  strong {
    font-weight: bolder;
  }

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

  small {
    font-size: 80%;
  }

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

  sub {
    bottom: -0.25em;
  }

  sup {
    top: -0.5em;
  }

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

  :-moz-focusring {
    outline: auto;
  }

  progress {
    vertical-align: baseline;
  }

  summary {
    display: list-item;
  }

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

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

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

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

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

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

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

  ::placeholder {
    opacity: 1;
  }

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

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

  textarea {
    resize: vertical;
  }

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

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

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

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

  ::-webkit-datetime-edit,
  ::-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;
  }
}

@layer utilities {
  .collapse {
    visibility: collapse;
  }

  .invisible {
    visibility: hidden;
  }

  .visible {
    visibility: visible;
  }

  .absolute {
    position: absolute;
  }

  .fixed {
    position: fixed;
  }

  .relative {
    position: relative;
  }

  .static {
    position: static;
  }

  .sticky {
    position: sticky;
  }

  .-start-\[3px\] {
    inset-inline-start: calc(3px * -1);
  }

  .start-\(--sidebar-width\) {
    inset-inline-start: var(--sidebar-width);
  }

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

  .start-1\/2 {
    inset-inline-start: calc(1/2 * 100%);
  }

  .start-2\/4 {
    inset-inline-start: calc(2/4 * 100%);
  }

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

  .start-\[93px\] {
    inset-inline-start: 93px;
  }

  .start-full {
    inset-inline-start: 100%;
  }

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

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

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

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

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

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

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

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

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

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

  .top-\(--header-height\) {
    top: var(--header-height);
  }

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

  .top-1\/2 {
    top: calc(1/2 * 100%);
  }

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

  .top-2\/4 {
    top: calc(2/4 * 100%);
  }

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

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

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

  .top-\[1\.5rem\] {
    top: 1.5rem;
  }

  .top-\[3rem\] {
    top: 3rem;
  }

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

  .top-\[15px\] {
    top: 15px;
  }

  .top-\[17px\] {
    top: 17px;
  }

  .top-\[calc\(var\(--header-height\)\+1\.5rem\)\] {
    top: calc(var(--header-height) + 1.5rem);
  }

  .top-\[calc\(var\(--header-height\)\+1rem\)\] {
    top: calc(var(--header-height) + 1rem);
  }

  .top-\[calc\(var\(--header-height\)\+var\(--navbar-height\)\+1rem\)\] {
    top: calc(var(--header-height) + var(--navbar-height) + 1rem);
  }

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

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

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

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

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

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

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

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

  .left-1\/2 {
    left: calc(1/2 * 100%);
  }

  .left-2\/4 {
    left: calc(2/4 * 100%);
  }

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

  .left-\[2\.2px\] {
    left: 2.2px;
  }

  .left-\[2px\] {
    left: 2px;
  }

  .left-auto {
    left: auto;
  }

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

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


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


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

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

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

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

  .order-1 {
    order: 1;
  }

  .order-2 {
    order: 2;
  }

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

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

  .container {
    width: 100%;
  }

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

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

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

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

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

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

  .m-\[15px\] {
    margin: 15px;
  }

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

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

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

  .mx-3\.5 {
    margin-inline: calc(var(--spacing) * 3.5);
  }

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

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

  .mx-7\.5 {
    margin-inline: calc(var(--spacing) * 7.5);
  }

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

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

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

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

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

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

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

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

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

  .my-\[3\%\] {
    margin-block: 3%;
  }

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

  .-ms-2 {
    margin-inline-start: calc(var(--spacing) * -2);
  }

  .-ms-2\.5 {
    margin-inline-start: calc(var(--spacing) * -2.5);
  }

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

  .ms-2 {
    margin-inline-start: calc(var(--spacing) * 2);
  }

  .ms-2\.5 {
    margin-inline-start: calc(var(--spacing) * 2.5);
  }

  .ms-5 {
    margin-inline-start: calc(var(--spacing) * 5);
  }

  .ms-7\.5 {
    margin-inline-start: calc(var(--spacing) * 7.5);
  }

  .ms-auto {
    margin-inline-start: auto;
  }

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

  .-me-1\.5 {
    margin-inline-end: calc(var(--spacing) * -1.5);
  }

  .-me-2 {
    margin-inline-end: calc(var(--spacing) * -2);
  }

  .me-0\.5 {
    margin-inline-end: calc(var(--spacing) * 0.5);
  }

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

  .me-1\.5 {
    margin-inline-end: calc(var(--spacing) * 1.5);
  }

  .me-1\.25 {
    margin-inline-end: calc(var(--spacing) * 1.25);
  }

  .me-2 {
    margin-inline-end: calc(var(--spacing) * 2);
  }

  .me-2\.5 {
    margin-inline-end: calc(var(--spacing) * 2.5);
  }

  .me-3 {
    margin-inline-end: calc(var(--spacing) * 3);
  }

  .me-5 {
    margin-inline-end: calc(var(--spacing) * 5);
  }

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

  .\!mt-\[30px\] {
    margin-top: 30px !important;
  }

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

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

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

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

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

  .-mt-px {
    margin-top: -1px;
  }

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

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

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

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

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

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

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

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

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

  .mt-\[2px\] {
    margin-top: 2px;
  }

  .mt-\[7px\] {
    margin-top: 7px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mb-px {
    margin-bottom: 1px;
  }

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

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

  .block {
    display: block;
  }

  .contents {
    display: contents;
  }

  .flex {
    display: flex;
  }

  .grid {
    display: grid;
  }

  .hidden {
    display: none;
  }

  .inline {
    display: inline;
  }

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

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

  .table {
    display: table;
  }

  .aspect-video {
    aspect-ratio: var(--aspect-video);
  }

  .size-0\.75 {
    width: calc(var(--spacing) * 0.75);
    height: calc(var(--spacing) * 0.75);
  }

  .size-1 {
    width: calc(var(--spacing) * 1);
    height: calc(var(--spacing) * 1);
  }

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

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

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

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

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

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

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

  .size-15 {
    width: calc(var(--spacing) * 15);
    height: calc(var(--spacing) * 15);
  }

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

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

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

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

  .size-\[5px\] {
    width: 5px;
    height: 5px;
  }

  .size-\[11px\] {
    width: 11px;
    height: 11px;
  }

  .size-\[18px\] {
    width: 18px;
    height: 18px;
  }

  .size-\[30px\] {
    width: 30px;
    height: 30px;
  }

  .size-\[34px\] {
    width: 34px;
    height: 34px;
  }

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

  .size-\[45px\] {
    width: 45px;
    height: 45px;
  }

  .size-\[50px\] {
    width: 50px;
    height: 50px;
  }

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

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

  .size-\[90px\] {
    width: 90px;
    height: 90px;
  }

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

  .size-\[120px\] {
    width: 120px;
    height: 120px;
  }

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

  .h-\(--header-height\) {
    height: var(--header-height);
  }

  .h-\(--navbar-height\) {
    height: var(--navbar-height);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .h-\[1\.875rem\] {
    height: 1.875rem;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .h-auto {
    height: auto;
  }

  .h-full {
    height: 100%;
  }

  .h-px {
    height: 1px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .max-h-\[calc\(100dvh-10px\)\)\] {
    max-height: calc(100dvh - 10px);
  }

  .min-h-8\.5 {
    min-height: calc(var(--spacing) * 8.5);
  }

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

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

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

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

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

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

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

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

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

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

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

  .w-\(--sidebar-width\) {
    width: var(--sidebar-width);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .w-\[1\.875rem\] {
    width: 1.875rem;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .w-auto {
    width: auto;
  }

  .w-full {
    width: 100%;
  }

  .w-screen {
    width: 100vw;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .flex-1 {
    flex: 1;
  }

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

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

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

  .grow {
    flex-grow: 1;
  }

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

  .basis-1\/2 {
    flex-basis: calc(1/2 * 100%);
  }

  .basis-1\/4 {
    flex-basis: calc(1/4 * 100%);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .cursor-pointer {
    cursor: pointer;
  }

  .resize {
    resize: both;
  }

  .appearance-none {
    appearance: none;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .gap-1\.25 {
    gap: calc(var(--spacing) * 1.25);
  }

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

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

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

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

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

  .gap-4\.5 {
    gap: calc(var(--spacing) * 4.5);
  }

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

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

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

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

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

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

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

  .gap-\[5px\] {
    gap: 5px;
  }

  .gap-\[10px\] {
    gap: 10px;
  }

  .gap-\[14px\] {
    gap: 14px;
  }

  .gap-px {
    gap: 1px;
  }

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

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

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

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

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

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

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

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

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

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

  .gap-y-3\.5 {
    row-gap: calc(var(--spacing) * 3.5);
  }

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

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

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

  .place-self-end {
    place-self: end;
  }

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

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

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

  .overflow-auto {
    overflow: auto;
  }

  .overflow-hidden {
    overflow: hidden;
  }

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

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

  .rounded-full {
    border-radius: calc(infinity * 1px);
  }

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

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

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

  .rounded-xl {
    border-radius: calc(var(--radius) + 4px);
  }

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

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

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

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

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

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

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

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

  .border-\[0\.5px\] {
    border-style: var(--tw-border-style);
    border-width: 0.5px;
  }

  .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-s-2 {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 2px;
  }

  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-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-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }

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

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

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

  .border-black\/10\! {
    border-color: color-mix(in srgb, #000 10%, transparent) !important;
  }

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

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

  .border-destructive\/10 {
    border-color: var(--destructive);
  }

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

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

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

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

  .border-input {
    border-color: var(--input);
  }

  .border-mono\/25 {
    border-color: var(--mono);
  }

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

  .border-muted-foreground {
    border-color: var(--muted-foreground);
  }

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

  .border-primary {
    border-color: var(--primary);
  }

  .border-primary\/10 {
    border-color: var(--primary);
  }

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

  .border-transparent {
    border-color: transparent;
  }

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

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

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

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

  .border-s-border {
    border-inline-start-color: var(--border);
  }

  .border-s-input {
    border-inline-start-color: var(--input);
  }

  .border-e-border {
    border-inline-end-color: var(--border);
  }

  .border-e-input {
    border-inline-end-color: var(--input);
  }

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

  .border-r-input {
    border-right-color: var(--input);
  }

  .border-b-border {
    border-bottom-color: var(--border);
  }

  .border-b-input {
    border-bottom-color: var(--input);
  }

  .border-b-primary\/10 {
    border-bottom-color: var(--primary);
  }

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

  .border-b-transparent {
    border-bottom-color: transparent;
  }

  .bg-accent\/50 {
    background-color: var(--accent);
  }

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

  .bg-accent\/60 {
    background-color: var(--accent);
  }

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

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

  .bg-background\/70 {
    background-color: var(--background);
  }

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

  .bg-black\/25 {
    background-color: color-mix(in srgb, #000 25%, transparent);
  }

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

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

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

  .bg-destructive\/5 {
    background-color: var(--destructive);
  }

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

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

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

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

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

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

  .bg-mono\/30 {
    background-color: var(--mono);
  }

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

  .bg-mono\/50 {
    background-color: var(--mono);
  }

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

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

  .bg-muted\! {
    background-color: var(--muted) !important;
  }

  .bg-muted-foreground\/60 {
    background-color: var(--muted-foreground);
  }

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

  .bg-muted\/25 {
    background-color: var(--muted);
  }

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

  .bg-muted\/30 {
    background-color: var(--muted);
  }

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

  .bg-muted\/40 {
    background-color: var(--muted);
  }

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

  .bg-muted\/50 {
    background-color: var(--muted);
  }

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

  .bg-muted\/70 {
    background-color: var(--muted);
  }

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

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

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

  .bg-primary\/5 {
    background-color: var(--primary);
  }

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

  .bg-primary\/10 {
    background-color: var(--primary);
  }

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

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

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

  .bg-transparent\! {
    background-color: transparent !important;
  }

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

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

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

  .bg-white\/70 {
    background-color: color-mix(in srgb, #fff 70%, transparent);
  }

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

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

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

  .bg-linear-to-t {
    --tw-gradient-position: to top;
  }

  @supports (background-image: linear-gradient(in lab, red, red)) {
    .bg-linear-to-t {
      --tw-gradient-position: to top in oklab;
    }
  }

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

  .from-3\% {
    --tw-gradient-from-position: 3%;
  }

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

  .bg-\[length\:80\%\] {
    background-size: 80%;
  }

  .bg-\[length\:85\%\] {
    background-size: 85%;
  }

  .bg-\[length\:500px\] {
    background-size: 500px;
  }

  .bg-\[length\:550px\] {
    background-size: 550px;
  }

  .bg-\[length\:600px\] {
    background-size: 600px;
  }

  .bg-\[length\:650px\] {
    background-size: 650px;
  }

  .bg-\[length\:660px_310px\] {
    background-size: 660px 310px;
  }

  .bg-\[length\:700px\] {
    background-size: 700px;
  }

  .bg-\[length\:750px\] {
    background-size: 750px;
  }

  .bg-cover {
    background-size: cover;
  }

  .\[background-position\:7\.5rem_-3\.5rem\] {
    background-position: 7.5rem -3.5rem;
  }

  .\[background-position\:9rem_-4rem\] {
    background-position: 9rem -4rem;
  }

  .\[background-position\:121\%_41\%\] {
    background-position: 121% 41%;
  }

  .\[background-position\:175\%_25\%\] {
    background-position: 175% 25%;
  }

  .\[background-position\:195px_-85px\] {
    background-position: 195px -85px;
  }

  .bg-\[center_right_-8rem\] {
    background-position: center right -8rem;
  }

  .bg-\[center_top_1\.3rem\] {
    background-position: center top 1.3rem;
  }

  .bg-\[right_top_-1\.7rem\] {
    background-position: right top -1.7rem;
  }

  .bg-center {
    background-position: center;
  }

  .bg-top {
    background-position: top;
  }

  .bg-no-repeat {
    background-repeat: no-repeat;
  }

  .fill-border {
    fill: var(--border);
  }

  .fill-destructive\/5 {
    fill: var(--destructive);
  }

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

  .fill-green-50 {
    fill: var(--color-green-50);
  }

  .fill-green-100 {
    fill: var(--color-green-100);
  }

  .fill-muted\/30 {
    fill: var(--muted);
  }

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

  .fill-primary\/5 {
    fill: var(--primary);
  }

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

  .fill-violet-50 {
    fill: var(--color-violet-50);
  }

  .fill-violet-100 {
    fill: var(--color-violet-100);
  }

  .fill-yellow-100 {
    fill: var(--color-yellow-100);
  }

  .stroke-border {
    stroke: var(--border);
  }

  .stroke-destructive\/10 {
    stroke: var(--destructive);
  }

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

  .stroke-green-200 {
    stroke: var(--color-green-200);
  }

  .stroke-input {
    stroke: var(--input);
  }

  .stroke-primary\/10 {
    stroke: var(--primary);
  }

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

  .stroke-violet-100 {
    stroke: var(--color-violet-100);
  }

  .stroke-violet-200 {
    stroke: var(--color-violet-200);
  }

  .stroke-yellow-100 {
    stroke: var(--color-yellow-100);
  }

  .stroke-yellow-200 {
    stroke: var(--color-yellow-200);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .px-2\.75 {
    padding-inline: calc(var(--spacing) * 2.75);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .py-2\.25 {
    padding-block: calc(var(--spacing) * 2.25);
  }

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

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

  .py-3\.5\! {
    padding-block: calc(var(--spacing) * 3.5) !important;
  }

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

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

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

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

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

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

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

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

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

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

  .ps-2 {
    padding-inline-start: calc(var(--spacing) * 2);
  }

  .ps-2\.5 {
    padding-inline-start: calc(var(--spacing) * 2.5);
  }

  .ps-3 {
    padding-inline-start: calc(var(--spacing) * 3);
  }

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

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

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

  .ps-7 {
    padding-inline-start: calc(var(--spacing) * 7);
  }

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

  .ps-12 {
    padding-inline-start: calc(var(--spacing) * 12);
  }

  .ps-\[10px\] {
    padding-inline-start: 10px;
  }

  .ps-\[14\.5px\] {
    padding-inline-start: 14.5px;
  }

  .ps-\[22px\] {
    padding-inline-start: 22px;
  }

  .ps-px {
    padding-inline-start: 1px;
  }

  .pe-1 {
    padding-inline-end: calc(var(--spacing) * 1);
  }

  .pe-2 {
    padding-inline-end: calc(var(--spacing) * 2);
  }

  .pe-2\.5 {
    padding-inline-end: calc(var(--spacing) * 2.5);
  }

  .pe-3 {
    padding-inline-end: calc(var(--spacing) * 3);
  }

  .pe-3\.5 {
    padding-inline-end: calc(var(--spacing) * 3.5);
  }

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

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

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

  .pe-7\.5 {
    padding-inline-end: calc(var(--spacing) * 7.5);
  }

  .pe-10 {
    padding-inline-end: calc(var(--spacing) * 10);
  }

  .pe-\[10px\] {
    padding-inline-end: 10px;
  }

  .pt-\(--header-height\) {
    padding-top: var(--header-height);
  }

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

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

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

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

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

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

  .pt-2\.25 {
    padding-top: calc(var(--spacing) * 2.25);
  }

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

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

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

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

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

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

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

  .pt-7\.5\! {
    padding-top: calc(var(--spacing) * 7.5) !important;
  }

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

  .pt-\[1px\] {
    padding-top: 1px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .pb-7\.5 {
    padding-bottom: calc(var(--spacing) * 7.5);
  }

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

  .pb-px {
    padding-bottom: 1px;
  }

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

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

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

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

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

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

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

  .align-bottom {
    vertical-align: bottom;
  }

  .align-middle {
    vertical-align: middle;
  }

  .text-2sm {
    font-size: var(--text-2sm);
    line-height: var(--tw-leading, var(--text-2sm--line-height));
  }

  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }

  .text-2xs {
    font-size: var(--text-2xs);
    line-height: var(--tw-leading, var(--text-2xs--line-height));
  }

  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }

  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }

  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .text-base\! {
    font-size: var(--text-base) !important;
    line-height: var(--tw-leading, var(--text-base--line-height)) !important;
  }

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

  .text-\[1\.875rem\] {
    font-size: 1.875rem;
  }

  .text-\[2\.25rem\] {
    font-size: 2.25rem;
  }

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

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

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

  .leading-3 {
    --tw-leading: calc(var(--spacing) * 3);
    line-height: calc(var(--spacing) * 3);
  }

  .leading-4 {
    --tw-leading: calc(var(--spacing) * 4);
    line-height: calc(var(--spacing) * 4);
  }

  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }

  .leading-5\.5 {
    --tw-leading: calc(var(--spacing) * 5.5);
    line-height: calc(var(--spacing) * 5.5);
  }

  .leading-6 {
    --tw-leading: calc(var(--spacing) * 6);
    line-height: calc(var(--spacing) * 6);
  }

  .leading-\[14px\] {
    --tw-leading: 14px;
    line-height: 14px;
  }

  .leading-\[22px\] {
    --tw-leading: 22px;
    line-height: 22px;
  }

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

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

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

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

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

  .text-nowrap {
    text-wrap: nowrap;
  }

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

  .text-accent-foreground\/60 {
    color: var(--accent-foreground);
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .text-primary-foreground {
    color: var(--primary-foreground);
  }

  .text-secondary-foreground {
    color: var(--secondary-foreground);
  }

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

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

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

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

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

  .lowercase {
    text-transform: lowercase;
  }

  .uppercase {
    text-transform: uppercase;
  }

  .italic {
    font-style: italic;
  }

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

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

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

  .opacity-25 {
    opacity: 25%;
  }

  .opacity-75 {
    opacity: 75%;
  }

  .opacity-80 {
    opacity: 80%;
  }

  .shadow-\[0px_3px_11px_0px_rgba\(45\,72\,126\,0\.10\)\] {
    --tw-shadow: 0px 3px 11px 0px var(--tw-shadow-color, rgba(45, 72, 126, 0.10));
    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-none {
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .shadow-xs {
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    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);
  }

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

  .shadow-black\/5 {
    --tw-shadow-color: color-mix(in srgb, #000 5%, transparent);
  }

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

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

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

  .ring-destructive\/20 {
    --tw-ring-color: var(--destructive);
  }

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

  .ring-green-200 {
    --tw-ring-color: var(--color-green-200);
  }

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

  .ring-primary\/10 {
    --tw-ring-color: var(--primary);
  }

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

  .ring-primary\/20 {
    --tw-ring-color: var(--primary);
  }

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

  .ring-violet-50 {
    --tw-ring-color: var(--color-violet-50);
  }

  .ring-violet-200 {
    --tw-ring-color: var(--color-violet-200);
  }

  .ring-yellow-200 {
    --tw-ring-color: var(--color-yellow-200);
  }

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

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

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

  .outline-background {
    outline-color: var(--background);
  }

  .outline-gray-50 {
    outline-color: var(--color-gray-50);
  }

  .outline-muted\/70 {
    outline-color: var(--muted);
  }

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

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

  .filter {
    filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
  }

  .backdrop-blur-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
  }

  .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-\[height\] {
    transition-property: height;
    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));
  }

  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }

  .\[--header-height-default\:95px\] {
    --header-height-default: 95px;
  }

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

  .\[--header-height\:54px\] {
    --header-height: 54px;
  }

  .\[--header-height\:58px\] {
    --header-height: 58px;
  }

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

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

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

  .\[--header-height\:var\(--header-height-default\)\] {
    --header-height: var(--header-height-default);
  }

  .\[--kt-drawer-enable\:true\] {
    --kt-drawer-enable: true;
  }

  .\[--kt-reparent-mode\:prepend\] {
    --kt-reparent-mode: prepend;
  }

  .\[--kt-reparent-target\:\#contentContainer\] {
    --kt-reparent-target: #contentContainer;
  }

  .\[--kt-reparent-target\:body\] {
    --kt-reparent-target: body;
  }

  .\[--kt-scrollbar-width\:auto\] {
    --kt-scrollbar-width: auto;
  }

  .\[--navbar-height\:56px\] {
    --navbar-height: 56px;
  }

  .\[--sidebar-width\:58px\] {
    --sidebar-width: 58px;
  }

  .\[--sidebar-width\:90px\] {
    --sidebar-width: 90px;
  }

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

  .\[--sidebar-width\:270px\] {
    --sidebar-width: 270px;
  }

  .\[--sidebar-width\:290px\] {
    --sidebar-width: 290px;
  }

  :is(.\*\:border-border > *) {
    border-color: var(--border);
  }

  .not-last\:block:not(*:last-child) {
    display: block;
  }

  .not-last\:border-e:not(*:last-child) {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }

  .not-last\:border-b:not(*:last-child) {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

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

  .group-has-checked\:hidden:is(:where(.group):has(*:checked) *) {
    display: none;
  }

  .group-has-checked\:inline:is(:where(.group):has(*:checked) *) {
    display: inline;
  }

  .placeholder\:text-secondary-foreground::placeholder {
    color: var(--secondary-foreground);
  }

  .before\:absolute::before {
    content: var(--tw-content);
    position: absolute;
  }

  .before\:start-\[20px\]::before {
    content: var(--tw-content);
    inset-inline-start: 20px;
  }

  .before\:start-\[32px\]::before {
    content: var(--tw-content);
    inset-inline-start: 32px;
  }

  .before\:top-0::before {
    content: var(--tw-content);
    top: calc(var(--spacing) * 0);
  }

  .before\:bottom-0::before {
    content: var(--tw-content);
    bottom: calc(var(--spacing) * 0);
  }

  .before\:left-\[11px\]::before {
    content: var(--tw-content);
    left: 11px;
  }

  .before\:size-1\.5::before {
    content: var(--tw-content);
    width: calc(var(--spacing) * 1.5);
    height: calc(var(--spacing) * 1.5);
  }

  .before\:size-\[6px\]::before {
    content: var(--tw-content);
    width: 6px;
    height: 6px;
  }

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

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

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

  .before\:rounded-full::before {
    content: var(--tw-content);
    border-radius: calc(infinity * 1px);
  }

  .before\:border-s::before {
    content: var(--tw-content);
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }

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

  .before\:border-border::before {
    content: var(--tw-content);
    border-color: var(--border);
  }

  .last\:me-5:last-child {
    margin-inline-end: calc(var(--spacing) * 5);
  }

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

  .last-of-type\:hidden:last-of-type {
    display: none;
  }

  @media (hover: hover) {
    .hover\:z-5:hover {
      z-index: 5;
    }
  }

  @media (hover: hover) {
    .hover\:rounded-lg:hover {
      border-radius: var(--radius);
    }
  }

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

  @media (hover: hover) {
    .hover\:border-input:hover {
      border-color: var(--input);
    }
  }

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

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

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

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

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

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

  @media (hover: hover) {
    .hover\:font-medium:hover {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }

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

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

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

  .focus\:border-primary\/10:focus {
    border-color: var(--primary);
  }

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

  .focus\:ring-3:focus {
    --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\:ring-primary\/10:focus {
    --tw-ring-color: var(--primary);
  }

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

  :where(*[data-kt-sticky-header="on"]) .in-data-\[kt-sticky-header\=on\]\:pt-\(--header-height\) {
    padding-top: var(--header-height);
  }

  :where(*:is(.authors-row)) .in-\[\.authors-row\]\:start-\[64px\] {
    inset-inline-start: 64px;
  }

  :where(*:is(.authors-row)) .in-\[\.authors-row\]\:size-\[80px\] {
    width: 80px;
    height: 80px;
  }

  :where(*:is(.kt-menu-dropdown)) .in-\[\.kt-menu-dropdown\]\:-rotate-90 {
    rotate: calc(90deg * -1);
  }

  :where(*:is(.menu-dropdown)) .in-\[\.menu-dropdown\]\:-rotate-90 {
    rotate: calc(90deg * -1);
  }

  .has-checked\:border-3:has(*:checked) {
    border-style: var(--tw-border-style);
    border-width: 3px;
  }

  .has-checked\:border-green-500:has(*:checked) {
    border-color: var(--color-green-500);
  }

  .has-checked\:border-primary:has(*:checked) {
    border-color: var(--primary);
  }

  .data-\[kt-sticky-header\=on\]\:\[--header-height\:60px\][data-kt-sticky-header="on"] {
    --header-height: 60px;
  }

  @media (width >=40rem) {
    .sm\:ms-8 {
      margin-inline-start: calc(var(--spacing) * 8);
    }
  }

  @media (width >=40rem) {
    .sm\:me-0 {
      margin-inline-end: calc(var(--spacing) * 0);
    }
  }

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

  @media (width >=40rem) {
    .sm\:max-w-full {
      max-width: 100%;
    }
  }

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

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

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

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

  @media (width >=40rem) {
    .sm\:flex-nowrap {
      flex-wrap: nowrap;
    }
  }

  @media (width >=40rem) {
    .sm\:flex-wrap {
      flex-wrap: wrap;
    }
  }

  @media (width >=40rem) {
    .sm\:items-center {
      align-items: center;
    }
  }

  @media (width >=40rem) {
    .sm\:justify-end {
      justify-content: flex-end;
    }
  }

  @media (width >=40rem) {
    .sm\:ps-8 {
      padding-inline-start: calc(var(--spacing) * 8);
    }
  }

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

  @media (width >=48rem) {
    .md\:order-2 {
      order: 2;
    }
  }

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

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

  @media (width >=48rem) {
    .md\:inline {
      display: inline;
    }
  }

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

  @media (width >=48rem) {
    .md\:max-w-\[60\%\] {
      max-width: 60%;
    }
  }

  @media (width >=48rem) {
    .md\:flex-1 {
      flex: 1;
    }
  }

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

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

  @media (width >=48rem) {
    .md\:flex-nowrap {
      flex-wrap: nowrap;
    }
  }

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

  @media (width >=48rem) {
    .md\:justify-between {
      justify-content: space-between;
    }
  }

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

  @media (width >=64rem) {
    .lg\:fixed {
      position: fixed;
    }
  }

  @media (width >=64rem) {
    .lg\:start-auto {
      inset-inline-start: auto;
    }
  }

  @media (width >=64rem) {
    .lg\:top-\(--header-height\) {
      top: var(--header-height);
    }
  }

  @media (width >=64rem) {
    .lg\:top-\[15\%\] {
      top: 15%;
    }
  }

  @media (width >=64rem) {
    .lg\:top-\[80px\] {
      top: 80px;
    }
  }

  @media (width >=64rem) {
    .lg\:right-auto {
      right: auto;
    }
  }

  @media (width >=64rem) {
    .lg\:order-1 {
      order: 1;
    }
  }

  @media (width >=64rem) {
    .lg\:order-2 {
      order: 2;
    }
  }

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

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

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

  @media (width >=64rem) {
    .lg\:m-5 {
      margin: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:mx-0 {
      margin-inline: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:mx-3 {
      margin-inline: calc(var(--spacing) * 3);
    }
  }

  @media (width >=64rem) {
    .lg\:ms-\(--sidebar-width\) {
      margin-inline-start: var(--sidebar-width);
    }
  }

  @media (width >=64rem) {
    .lg\:ms-4 {
      margin-inline-start: calc(var(--spacing) * 4);
    }
  }

  @media (width >=64rem) {
    .lg\:me-10 {
      margin-inline-end: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:mt-\(--navbar-height\) {
      margin-top: var(--navbar-height);
    }
  }

  @media (width >=64rem) {
    .lg\:mt-0 {
      margin-top: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:mt-5 {
      margin-top: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:mt-\[15px\] {
      margin-top: 15px;
    }
  }

  @media (width >=64rem) {
    .lg\:mb-0 {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-5 {
      margin-bottom: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-6 {
      margin-bottom: calc(var(--spacing) * 6);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-7 {
      margin-bottom: calc(var(--spacing) * 7);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-7\.5 {
      margin-bottom: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-8 {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-9 {
      margin-bottom: calc(var(--spacing) * 9);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-10 {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:mb-11 {
      margin-bottom: calc(var(--spacing) * 11);
    }
  }

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

  @media (width >=64rem) {
    .lg\:flex {
      display: flex;
    }
  }

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

  @media (width >=64rem) {
    .lg\:inline {
      display: inline;
    }
  }

  @media (width >=64rem) {
    .lg\:inline-flex {
      display: inline-flex;
    }
  }

  @media (width >=64rem) {
    .lg\:h-\(--header-height\) {
      height: var(--header-height);
    }
  }

  @media (width >=64rem) {
    .lg\:h-\[50px\] {
      height: 50px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-h-\[calc\(100dvh-70px\)\)\] {
      max-height: calc(100dvh - 70px);
    }
  }

  @media (width >=64rem) {
    .lg\:w-\(--sidebar-width\) {
      width: var(--sidebar-width);
    }
  }

  @media (width >=64rem) {
    .lg\:w-60 {
      width: calc(var(--spacing) * 60);
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[50px\] {
      width: 50px;
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[240px\] {
      width: 240px;
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[250px\] {
      width: 250px;
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[260px\] {
      width: 260px;
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[280px\] {
      width: 280px;
    }
  }

  @media (width >=64rem) {
    .lg\:w-\[400px\] {
      width: 400px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[220px\] {
      max-width: 220px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[600px\] {
      max-width: 600px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[670px\] {
      max-width: 670px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[700px\] {
      max-width: 700px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[900px\] {
      max-width: 900px;
    }
  }

  @media (width >=64rem) {
    .lg\:max-w-\[1240px\] {
      max-width: 1240px;
    }
  }

  @media (width >=64rem) {
    .lg\:min-w-24 {
      min-width: calc(var(--spacing) * 24);
    }
  }

  @media (width >=64rem) {
    .lg\:grow-0 {
      flex-grow: 0;
    }
  }

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

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

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

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

  @media (width >=64rem) {
    .lg\:flex-col {
      flex-direction: column;
    }
  }

  @media (width >=64rem) {
    .lg\:flex-row {
      flex-direction: row;
    }
  }

  @media (width >=64rem) {
    .lg\:flex-nowrap {
      flex-wrap: nowrap;
    }
  }

  @media (width >=64rem) {
    .lg\:flex-wrap {
      flex-wrap: wrap;
    }
  }

  @media (width >=64rem) {
    .lg\:items-center {
      align-items: center;
    }
  }

  @media (width >=64rem) {
    .lg\:items-end {
      align-items: flex-end;
    }
  }

  @media (width >=64rem) {
    .lg\:items-stretch {
      align-items: stretch;
    }
  }

  @media (width >=64rem) {
    .lg\:justify-between {
      justify-content: space-between;
    }
  }

  @media (width >=64rem) {
    .lg\:justify-center {
      justify-content: center;
    }
  }

  @media (width >=64rem) {
    .lg\:justify-end {
      justify-content: flex-end;
    }
  }

  @media (width >=64rem) {
    .lg\:gap-1\.5 {
      gap: calc(var(--spacing) * 1.5);
    }
  }

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

  @media (width >=64rem) {
    .lg\:gap-2\.5 {
      gap: calc(var(--spacing) * 2.5);
    }
  }

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

  @media (width >=64rem) {
    .lg\:gap-3\.5 {
      gap: calc(var(--spacing) * 3.5);
    }
  }

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

  @media (width >=64rem) {
    .lg\:gap-4\.5 {
      gap: calc(var(--spacing) * 4.5);
    }
  }

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

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

  @media (width >=64rem) {
    .lg\:gap-7\.5 {
      gap: calc(var(--spacing) * 7.5);
    }
  }

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

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

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

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

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

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

  @media (width >=64rem) {
    .lg\:overflow-hidden {
      overflow: hidden;
    }
  }

  @media (width >=64rem) {
    .lg\:overflow-visible {
      overflow: visible;
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-none {
      border-radius: 0;
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-xl {
      border-radius: calc(var(--radius) + 4px);
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-e-xl {
      border-start-end-radius: calc(var(--radius) + 4px);
      border-end-end-radius: calc(var(--radius) + 4px);
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-t-none {
      border-top-left-radius: 0;
      border-top-right-radius: 0;
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-l-none {
      border-top-left-radius: 0;
      border-bottom-left-radius: 0;
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-l-xl {
      border-top-left-radius: calc(var(--radius) + 4px);
      border-bottom-left-radius: calc(var(--radius) + 4px);
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-tl-xl {
      border-top-left-radius: calc(var(--radius) + 4px);
    }
  }

  @media (width >=64rem) {
    .lg\:rounded-r-none {
      border-top-right-radius: 0;
      border-bottom-right-radius: 0;
    }
  }

  @media (width >=64rem) {
    .lg\:border {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-0 {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-s {
      border-inline-start-style: var(--tw-border-style);
      border-inline-start-width: 1px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-e {
      border-inline-end-style: var(--tw-border-style);
      border-inline-end-width: 1px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-t {
      border-top-style: var(--tw-border-style);
      border-top-width: 1px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-r {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
  }

  @media (width >=64rem) {
    .lg\:border-border {
      border-color: var(--border);
    }
  }

  @media (width >=64rem) {
    .lg\:border-s-border {
      border-inline-start-color: var(--border);
    }
  }

  @media (width >=64rem) {
    .lg\:border-e-border {
      border-inline-end-color: var(--border);
    }
  }

  @media (width >=64rem) {
    .lg\:border-t-border {
      border-top-color: var(--border);
    }
  }

  @media (width >=64rem) {
    .lg\:border-r-border {
      border-right-color: var(--border);
    }
  }

  @media (width >=64rem) {
    .lg\:p-0 {
      padding: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:p-7 {
      padding: calc(var(--spacing) * 7);
    }
  }

  @media (width >=64rem) {
    .lg\:p-7\.5 {
      padding: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=64rem) {
    .lg\:p-10 {
      padding: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:p-12 {
      padding: calc(var(--spacing) * 12);
    }
  }

  @media (width >=64rem) {
    .lg\:p-16 {
      padding: calc(var(--spacing) * 16);
    }
  }

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

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

  @media (width >=64rem) {
    .lg\:px-7\.5 {
      padding-inline: calc(var(--spacing) * 7.5);
    }
  }

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

  @media (width >=64rem) {
    .lg\:py-0 {
      padding-block: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:py-3\.5 {
      padding-block: calc(var(--spacing) * 3.5);
    }
  }

  @media (width >=64rem) {
    .lg\:py-4 {
      padding-block: calc(var(--spacing) * 4);
    }
  }

  @media (width >=64rem) {
    .lg\:py-5 {
      padding-block: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:py-6 {
      padding-block: calc(var(--spacing) * 6);
    }
  }

  @media (width >=64rem) {
    .lg\:py-7\.5 {
      padding-block: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=64rem) {
    .lg\:py-9 {
      padding-block: calc(var(--spacing) * 9);
    }
  }

  @media (width >=64rem) {
    .lg\:py-10 {
      padding-block: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:ps-0 {
      padding-inline-start: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:ps-4 {
      padding-inline-start: calc(var(--spacing) * 4);
    }
  }

  @media (width >=64rem) {
    .lg\:ps-5 {
      padding-inline-start: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-0 {
      padding-inline-end: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-3 {
      padding-inline-end: calc(var(--spacing) * 3);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-5 {
      padding-inline-end: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-6 {
      padding-inline-end: calc(var(--spacing) * 6);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-8 {
      padding-inline-end: calc(var(--spacing) * 8);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-10 {
      padding-inline-end: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-12 {
      padding-inline-end: calc(var(--spacing) * 12);
    }
  }

  @media (width >=64rem) {
    .lg\:pe-12\.5 {
      padding-inline-end: calc(var(--spacing) * 12.5);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-0 {
      padding-top: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-4 {
      padding-top: calc(var(--spacing) * 4);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-5 {
      padding-top: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-6 {
      padding-top: calc(var(--spacing) * 6);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-7 {
      padding-top: calc(var(--spacing) * 7);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-7\.5 {
      padding-top: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-9 {
      padding-top: calc(var(--spacing) * 9);
    }
  }

  @media (width >=64rem) {
    .lg\:pt-10 {
      padding-top: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:pr-12\.5 {
      padding-right: calc(var(--spacing) * 12.5);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-0 {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-2\.5 {
      padding-bottom: calc(var(--spacing) * 2.5);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-4 {
      padding-bottom: calc(var(--spacing) * 4);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-5 {
      padding-bottom: calc(var(--spacing) * 5);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-7 {
      padding-bottom: calc(var(--spacing) * 7);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-7\.5 {
      padding-bottom: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-9 {
      padding-bottom: calc(var(--spacing) * 9);
    }
  }

  @media (width >=64rem) {
    .lg\:pb-10 {
      padding-bottom: calc(var(--spacing) * 10);
    }
  }

  @media (width >=64rem) {
    .lg\:text-end {
      text-align: end;
    }
  }

  @media (width >=64rem) {
    .lg\:text-right {
      text-align: right;
    }
  }

  @media (width >=64rem) {
    .lg\:text-2xl {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }

  @media (width >=64rem) {
    .lg\:text-sm {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-drawer-enable\:false\] {
      --kt-drawer-enable: false;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-reparent-mode\:prepend\] {
      --kt-reparent-mode: prepend;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-reparent-target\:\#headerContainer\] {
      --kt-reparent-target: #headerContainer;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-reparent-target\:\#megaMenuContainer\] {
      --kt-reparent-target: #megaMenuContainer;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-reparent-target\:\#megaMenuWrapper\] {
      --kt-reparent-target: #megaMenuWrapper;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--kt-scrollbar-width\:auto\] {
      --kt-scrollbar-width: auto;
    }
  }

  @media (width >=64rem) {
    .lg\:\[--scrollbar-width\:auto\] {
      --scrollbar-width: auto;
    }
  }

  @media (width >=64rem) {
    .lg\:\[scrollbar-width\:auto\] {
      scrollbar-width: auto;
    }
  }

  @media (width >=80rem) {
    .xl\:me-14 {
      margin-inline-end: calc(var(--spacing) * 14);
    }
  }

  @media (width >=80rem) {
    .xl\:me-16 {
      margin-inline-end: calc(var(--spacing) * 16);
    }
  }

  @media (width >=80rem) {
    .xl\:w-\[38\.75rem\] {
      width: 38.75rem;
    }
  }

  @media (width >=80rem) {
    .xl\:max-w-96 {
      max-width: calc(var(--spacing) * 96);
    }
  }

  @media (width >=80rem) {
    .xl\:min-w-24 {
      min-width: calc(var(--spacing) * 24);
    }
  }

  @media (width >=80rem) {
    .xl\:grid-cols-1 {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }

  @media (width >=80rem) {
    .xl\:grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  @media (width >=80rem) {
    .xl\:grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }

  @media (width >=80rem) {
    .xl\:grid-cols-4 {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }

  @media (width >=80rem) {
    .xl\:grid-cols-7 {
      grid-template-columns: repeat(7, minmax(0, 1fr));
    }
  }

  @media (width >=80rem) {
    .xl\:flex-row {
      flex-direction: row;
    }
  }

  @media (width >=80rem) {
    .xl\:flex-nowrap {
      flex-wrap: nowrap;
    }
  }

  @media (width >=80rem) {
    .xl\:gap-7\.5 {
      gap: calc(var(--spacing) * 7.5);
    }
  }

  @media (width >=80rem) {
    .xl\:bg-cover {
      background-size: cover;
    }
  }

  @media (width >=96rem) {
    .\32 xl\:-ml-\[60px\] {
      margin-left: calc(60px * -1);
    }
  }

  .ltr\:rounded-tl-xl:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) {
    border-top-left-radius: calc(var(--radius) + 4px);
  }

  .ltr\:rounded-tr-xl:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) {
    border-top-right-radius: calc(var(--radius) + 4px);
  }

  .ltr\:border-l:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }

  .rtl\:start-0:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    inset-inline-start: calc(var(--spacing) * 0);
  }

  .rtl\:-translate-x-1\/2:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rtl\:translate-x-1\/2:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    --tw-translate-x: calc(1/2 * 100%);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rtl\:translate-x-2\/4:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    --tw-translate-x: calc(2/4 * 100%);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .rtl\:rotate-180:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    rotate: 180deg;
  }

  .rtl\:transform:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }

  .rtl\:justify-start:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    justify-content: flex-start;
  }

  .rtl\:rounded-tl-xl:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    border-top-left-radius: calc(var(--radius) + 4px);
  }

  .rtl\:rounded-tr-xl:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    border-top-right-radius: calc(var(--radius) + 4px);
  }

  .rtl\:border-s:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }

  .rtl\:\[background-position\:-3rem_-3\.5rem\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: -3rem -3.5rem;
  }

  .rtl\:\[background-position\:-4rem_-4rem\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: -4rem -4rem;
  }

  .rtl\:\[background-position\:-30\%_41\%\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: -30% 41%;
  }

  .rtl\:\[background-position\:-70\%_25\%\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: -70% 25%;
  }

  .rtl\:\[background-position\:-195px_-85px\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: -195px -85px;
  }

  .rtl\:bg-\[center_left_-8rem\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: center left -8rem;
  }

  .rtl\:bg-\[left_top_-1\.7rem\]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    background-position: left top -1.7rem;
  }

  .rtl\:before\:translate-x-1\/2:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *)::before {
    content: var(--tw-content);
    --tw-translate-x: calc(1/2 * 100%);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .dark\:block:is(.dark *) {
    display: block;
  }

  .dark\:hidden:is(.dark *) {
    display: none;
  }

  .dark\:inline-block:is(.dark *) {
    display: inline-block;
  }

  .dark\:border-green-950:is(.dark *) {
    border-color: var(--color-green-950);
  }

  .dark\:border-orange-950:is(.dark *) {
    border-color: var(--color-orange-950);
  }

  .dark\:border-violet-950:is(.dark *) {
    border-color: var(--color-violet-950);
  }

  .dark\:border-yellow-950:is(.dark *) {
    border-color: var(--color-yellow-950);
  }

  .dark\:border-zinc-600:is(.dark *) {
    border-color: var(--color-zinc-600);
  }

  .dark\:bg-background:is(.dark *) {
    background-color: var(--background);
  }

  .dark\:bg-background\/70:is(.dark *) {
    background-color: var(--background);
  }

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

  .dark\:bg-green-950\/30:is(.dark *) {
    background-color: color-mix(in srgb, oklch(26.6% 0.065 152.934) 30%, transparent);
  }

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

  .dark\:bg-orange-950\/30:is(.dark *) {
    background-color: color-mix(in srgb, oklch(26.6% 0.079 36.259) 30%, transparent);
  }

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

  .dark\:bg-violet-950\/30:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.3% 0.141 291.089) 30%, transparent);
  }

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

  .dark\:bg-yellow-950\/30:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.6% 0.066 53.813) 30%, transparent);
  }

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

  .dark\:fill-green-950\/30:is(.dark *) {
    fill: color-mix(in srgb, oklch(26.6% 0.065 152.934) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark\:fill-green-950\/30:is(.dark *) {
      fill: color-mix(in oklab, var(--color-green-950) 30%, transparent);
    }
  }

  .dark\:fill-violet-950\/30:is(.dark *) {
    fill: color-mix(in srgb, oklch(28.3% 0.141 291.089) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark\:fill-violet-950\/30:is(.dark *) {
      fill: color-mix(in oklab, var(--color-violet-950) 30%, transparent);
    }
  }

  .dark\:fill-yellow-950\/30:is(.dark *) {
    fill: color-mix(in srgb, oklch(28.6% 0.066 53.813) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark\:fill-yellow-950\/30:is(.dark *) {
      fill: color-mix(in oklab, var(--color-yellow-950) 30%, transparent);
    }
  }

  .dark\:stroke-green-950:is(.dark *) {
    stroke: var(--color-green-950);
  }

  .dark\:stroke-violet-950:is(.dark *) {
    stroke: var(--color-violet-950);
  }

  .dark\:stroke-yellow-950:is(.dark *) {
    stroke: var(--color-yellow-950);
  }

  .dark\:text-black\/30:is(.dark *) {
    color: color-mix(in srgb, #000 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark\:text-black\/30:is(.dark *) {
      color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
  }

  .dark\:text-gray-400:is(.dark *) {
    color: var(--color-gray-400);
  }

  .dark\:ring-green-950:is(.dark *) {
    --tw-ring-color: var(--color-green-950);
  }

  .dark\:ring-violet-950:is(.dark *) {
    --tw-ring-color: var(--color-violet-950);
  }

  .dark\:ring-yellow-950:is(.dark *) {
    --tw-ring-color: var(--color-yellow-950);
  }

  .kt-accordion-active\:hidden.active[data-kt-accordion-item] {
    display: none;
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-active\:hidden {
    display: none;
  }

  .active[data-kt-accordion-item]>.kt-accordion-active\:hidden[data-kt-accordion-toggle] {
    display: none;
  }

  .kt-accordion-active\:inline-flex.active[data-kt-accordion-item] {
    display: inline-flex;
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-active\:inline-flex {
    display: inline-flex;
  }

  .active[data-kt-accordion-item]>.kt-accordion-active\:inline-flex[data-kt-accordion-toggle] {
    display: inline-flex;
  }

  .open[data-kt-dropdown-initialized]>.kt-dropdown-open\:bg-background[data-kt-dropdown-toggle] {
    background-color: var(--background);
  }

  .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-open\:bg-background {
    background-color: var(--background);
  }

  .open[data-kt-dropdown-initialized]>.kt-dropdown-open\:bg-primary\/10[data-kt-dropdown-toggle] {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .open[data-kt-dropdown-initialized]>.kt-dropdown-open\:bg-primary\/10[data-kt-dropdown-toggle] {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-open\:bg-primary\/10 {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-open\:bg-primary\/10 {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .open[data-kt-dropdown-initialized]>.kt-dropdown-open\:bg-transparent[data-kt-dropdown-toggle] {
    background-color: transparent;
  }

  .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-open\:bg-transparent {
    background-color: transparent;
  }

  .empty[data-kt-image-input-initialized] .kt-image-input-empty\:border-input {
    border-color: var(--input);
  }

  .kt-modal-open\:\!flex.open[data-kt-modal-initialized] {
    display: flex !important;
  }

  .open[data-kt-modal-initialized] .kt-modal-open\:\!flex {
    display: flex !important;
  }

  .kt-scrollspy-active\:font-medium.active[data-kt-scrollspy-anchor] {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .active[data-kt-scrollspy-anchor] .kt-scrollspy-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-scrollspy-active\:text-primary.active[data-kt-scrollspy-anchor] {
    color: var(--primary);
  }

  .active[data-kt-scrollspy-anchor] .kt-scrollspy-active\:text-primary {
    color: var(--primary);
  }

  .kt-scrollspy-active\:before\:bg-primary.active[data-kt-scrollspy-anchor]::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.active[data-kt-scrollspy-anchor] .kt-scrollspy-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  .kt-select-option-selected\:block .selected[data-kt-select-option] {
    display: block;
  }

  .selected[data-kt-select-option] .kt-select-option-selected\:block {
    display: block;
  }

  .kt-tab-active\:border-primary\/10.active[data-kt-tab-toggle] {
    border-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-tab-active\:border-primary\/10.active[data-kt-tab-toggle] {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .active[data-kt-tab-toggle] .kt-tab-active\:border-primary\/10 {
    border-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .active[data-kt-tab-toggle] .kt-tab-active\:border-primary\/10 {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active) .kt-tab-active\:border-primary\/10 {
    border-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active) .kt-tab-active\:border-primary\/10 {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .kt-tab-active\:bg-primary\/10.active[data-kt-tab-toggle] {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-tab-active\:bg-primary\/10.active[data-kt-tab-toggle] {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .active[data-kt-tab-toggle] .kt-tab-active\:bg-primary\/10 {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .active[data-kt-tab-toggle] .kt-tab-active\:bg-primary\/10 {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active) .kt-tab-active\:bg-primary\/10 {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active) .kt-tab-active\:bg-primary\/10 {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .kt-tab-active\:text-primary.active[data-kt-tab-toggle] {
    color: var(--primary);
  }

  .active[data-kt-tab-toggle] .kt-tab-active\:text-primary {
    color: var(--primary);
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active) .kt-tab-active\:text-primary {
    color: var(--primary);
  }

  .kt-toggle-active\:rotate-180.active[data-kt-toggle] {
    rotate: 180deg;
  }

  .active[data-kt-toggle] .kt-toggle-active\:rotate-180 {
    rotate: 180deg;
  }

  .rtl\:kt-toggle-active\:rotate-0.active[data-kt-toggle]:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    rotate: 0deg;
  }

  .active[data-kt-toggle] .rtl\:kt-toggle-active\:rotate-0:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    rotate: 0deg;
  }

  .kt-toggle-password-active\:block.active[data-kt-toggle-password-initialized] {
    display: block;
  }

  .active[data-kt-toggle-password-initialized] .kt-toggle-password-active\:block {
    display: block;
  }

  .kt-toggle-password-active\:hidden.active[data-kt-toggle-password-initialized] {
    display: none;
  }

  .active[data-kt-toggle-password-initialized] .kt-toggle-password-active\:hidden {
    display: none;
  }

  .light\:hidden:not(.dark *) {
    display: none;
  }

  .light\:bg-accent\/50:not(.dark *) {
    background-color: var(--accent);
  }

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

  .kt-menu-item-active\:rounded-lg.kt-menu-item.active {
    border-radius: var(--radius);
  }

  .kt-menu-item.active .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:rounded-lg {
    border-radius: var(--radius);
  }

  .kt-menu-item-active\:border-none.kt-menu-item.active {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-item-active\:border-border.kt-menu-item.active {
    border-color: var(--border);
  }

  .kt-menu-item.active .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item-active\:border-b-gray-400.kt-menu-item.active {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item-active\:border-b-mono.kt-menu-item.active {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item-active\:border-b-primary.kt-menu-item.active {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item-active\:\!bg-background.kt-menu-item.active {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-item-active\:bg-accent\/60.kt-menu-item.active {
    background-color: var(--accent);
  }

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

  .kt-menu-item.active .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

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

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-accent\/60 {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-accent\/60 {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  .kt-menu-item-active\:bg-background.kt-menu-item.active {
    background-color: var(--background);
  }

  .kt-menu-item.active .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item-active\:bg-secondary.kt-menu-item.active {
    background-color: var(--secondary);
  }

  .kt-menu-item.active .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-item-active\:font-medium.kt-menu-item.active {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item-active\:font-semibold.kt-menu-item.active {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item-active\:text-foreground.kt-menu-item.active {
    color: var(--foreground);
  }

  .kt-menu-item.active .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item-active\:text-mono.kt-menu-item.active {
    color: var(--mono);
  }

  .kt-menu-item.active .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item-active\:text-primary.kt-menu-item.active {
    color: var(--primary);
  }

  .kt-menu-item.active .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-link .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-label .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.active>.kt-menu-toggle .kt-menu-item-active\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item-active\:before\:bg-primary.kt-menu-item.active::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-link .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-link .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-label .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-label .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-toggle .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  :is(.kt-menu-item.active > .kt-menu-toggle .kt-menu-item-active\:before\:bg-primary)::before {
    content: var(--tw-content);
    background-color: var(--primary);
  }

  .kt-menu-item-here\:border-border.kt-menu-item.here {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-border {
    border-color: var(--border);
  }

  .kt-menu-item-here\:border-b-gray-400.kt-menu-item.here {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-gray-400 {
    border-bottom-color: var(--color-gray-400);
  }

  .kt-menu-item-here\:border-b-mono.kt-menu-item.here {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-mono {
    border-bottom-color: var(--mono);
  }

  .kt-menu-item-here\:border-b-primary.kt-menu-item.here {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:border-b-primary {
    border-bottom-color: var(--primary);
  }

  .kt-menu-item-here\:bg-background.kt-menu-item.here {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-item-here\:bg-transparent.kt-menu-item.here {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:bg-transparent {
    background-color: transparent;
  }

  .kt-menu-item-here\:font-medium.kt-menu-item.here {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-item-here\:font-semibold.kt-menu-item.here {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-menu-item-here\:text-foreground.kt-menu-item.here {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item-here\:text-mono.kt-menu-item.here {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item-here\:text-muted-foreground.kt-menu-item.here {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-muted-foreground {
    color: var(--muted-foreground);
  }

  .kt-menu-item-here\:text-primary.kt-menu-item.here {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-link .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-label .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.here>.kt-menu-toggle .kt-menu-item-here\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item-show\:\!flex.kt-menu-item.show {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:\!flex {
    display: flex !important;
  }

  .kt-menu-item-show\:hidden.kt-menu-item.show {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:hidden {
    display: none;
  }

  .kt-menu-item-show\:inline-flex.kt-menu-item.show {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:inline-flex {
    display: inline-flex;
  }

  .kt-menu-item-show\:text-foreground.kt-menu-item.show {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-item-show\:text-mono.kt-menu-item.show {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-mono {
    color: var(--mono);
  }

  .kt-menu-item-show\:text-primary.kt-menu-item.show {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-link .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-label .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-item.show>.kt-menu-toggle .kt-menu-item-show\:text-primary {
    color: var(--primary);
  }

  .kt-menu-link-hover\:border-none.kt-menu-link:hover {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-link:hover .kt-menu-link-hover\:border-none {
    --tw-border-style: none;
    border-style: none;
  }

  .kt-menu-link-hover\:border-border.kt-menu-link:hover {
    border-color: var(--border);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:border-border {
    border-color: var(--border);
  }

  .kt-menu-link-hover\:\!bg-background.kt-menu-link:hover {
    background-color: var(--background) !important;
  }

  .kt-menu-link:hover .kt-menu-link-hover\:\!bg-background {
    background-color: var(--background) !important;
  }

  .kt-menu-link-hover\:bg-accent\/60.kt-menu-link:hover {
    background-color: var(--accent);
  }

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

  .kt-menu-link:hover .kt-menu-link-hover\:bg-accent\/60 {
    background-color: var(--accent);
  }

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

  .kt-menu-link-hover\:bg-background.kt-menu-link:hover {
    background-color: var(--background);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:bg-background {
    background-color: var(--background);
  }

  .kt-menu-link-hover\:bg-secondary.kt-menu-link:hover {
    background-color: var(--secondary);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:bg-secondary {
    background-color: var(--secondary);
  }

  .kt-menu-link-hover\:\!text-primary.kt-menu-link:hover {
    color: var(--primary) !important;
  }

  .kt-menu-link:hover .kt-menu-link-hover\:\!text-primary {
    color: var(--primary) !important;
  }

  .kt-menu-link-hover\:text-foreground.kt-menu-link:hover {
    color: var(--foreground);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:text-foreground {
    color: var(--foreground);
  }

  .kt-menu-link-hover\:text-mono.kt-menu-link:hover {
    color: var(--mono);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:text-mono {
    color: var(--mono);
  }

  .kt-menu-link-hover\:text-primary.kt-menu-link:hover {
    color: var(--primary);
  }

  .kt-menu-link:hover .kt-menu-link-hover\:text-primary {
    color: var(--primary);
  }

  .has-checked\:\[\&_\.checked\]\:flex:has(*:checked) .checked {
    display: flex;
  }

  @media (width >=64rem) {
    .lg\:\[\&_\.kt-container-fluid\]\:pe-4 .kt-container-fluid {
      padding-inline-end: calc(var(--spacing) * 4);
    }
  }

  .\[\&_\.kt-step-icon\]\:text-muted-foreground .kt-step-icon {
    color: var(--muted-foreground);
  }

  .\[\&_\.kt-step-icon\]\:text-primary .kt-step-icon {
    color: var(--primary);
  }

  .\[\&_i\]\:text-white i {
    color: var(--color-white);
  }

  @media (hover: hover) {
    .hover\:\[\&_i\]\:text-black\/80:hover i {
      color: color-mix(in srgb, #000 80%, transparent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .hover\:\[\&_i\]\:text-black\/80:hover i {
        color: color-mix(in oklab, var(--color-black) 80%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .hover\:\[\&_i\]\:text-primary:hover i {
      color: var(--primary);
    }
  }

  :is(.open[data-kt-dropdown-initialized] > .kt-dropdown-open\:\[\&_i\]\:text-primary[data-kt-dropdown-toggle]) i {
    color: var(--primary);
  }

  :is(.open[data-kt-dropdown-initialized] > [data-kt-dropdown-toggle] .kt-dropdown-open\:\[\&_i\]\:text-primary) i {
    color: var(--primary);
  }

  :is(.\[\&_border\]\:\[\&_i\]\:text-black\/80 border) i {
    color: color-mix(in srgb, #000 80%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is(.\[\&_border\]\:\[\&_i\]\:text-black\/80 border) i {
      color: color-mix(in oklab, var(--color-black) 80%, transparent);
    }
  }

  .ltr\:\[\&_tr\:nth-of-type\(12\)\>td\:first-child\]\:rounded-bl-xl:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) tr:nth-of-type(12)>td:first-child {
    border-bottom-left-radius: calc(var(--radius) + 4px);
  }

  .rtl\:\[\&_tr\:nth-of-type\(12\)\>td\:first-child\]\:rounded-br-xl:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) tr:nth-of-type(12)>td:first-child {
    border-bottom-right-radius: calc(var(--radius) + 4px);
  }

  .ltr\:\[\&_tr\:nth-of-type\(12\)\>td\:last-child\]\:rounded-br-xl:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) tr:nth-of-type(12)>td:last-child {
    border-bottom-right-radius: calc(var(--radius) + 4px);
  }

  .rtl\:\[\&_tr\:nth-of-type\(12\)\>td\:last-child\]\:rounded-bl-xl:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) tr:nth-of-type(12)>td:last-child {
    border-bottom-left-radius: calc(var(--radius) + 4px);
  }

  .\[\&_tr\:nth-of-type\(2\)\>td\]\:border-t tr:nth-of-type(2)>td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }

  .ltr\:\[\&_tr\:nth-of-type\(2\)\>td\:first-child\]\:rounded-tl-xl:where(:dir(ltr), [dir="ltr"], [dir="ltr"] *) tr:nth-of-type(2)>td:first-child {
    border-top-left-radius: calc(var(--radius) + 4px);
  }

  .rtl\:\[\&_tr\:nth-of-type\(2\)\>td\:first-child\]\:rounded-tr-xl:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) tr:nth-of-type(2)>td:first-child {
    border-top-right-radius: calc(var(--radius) + 4px);
  }

  .\[\&\.active\]\:bg-primary\/10.active {
    background-color: var(--primary);
  }

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

  .\[\&\.active\]\:\[\&_i\]\:text-primary.active i {
    color: var(--primary);
  }

  .active.\[\.active\&\]\:border-border {
    border-color: var(--border);
  }

  .active.\[\.active\&\]\:border-input {
    border-color: var(--input);
  }

  .active.\[\.active\&\]\:bg-background {
    background-color: var(--background);
  }

  .active.\[\.active\&\]\:\[\&_i\]\:text-primary i {
    color: var(--primary);
  }
}

:root {
  --background: var(--color-white);
  --foreground: var(--color-zinc-950);
  --card: var(--color-white);
  --card-foreground: var(--color-zinc-950);
  --popover: var(--color-white);
  --popover-foreground: var(--color-zinc-950);
  --primary: var(--color-blue-500);
  --primary-foreground: var(--color-white);
  --secondary: var(--color-zinc-100);
  --secondary-foreground: var(--color-zinc-900);
  --muted: var(--color-zinc-100);
  --muted-foreground: var(--color-zinc-500);
  --accent: var(--color-zinc-100);
  --accent-foreground: var(--color-zinc-900);
  --destructive: var(--color-red-600);
  --destructive-foreground: var(--color-white);
  --mono: var(--color-zinc-950);
  --mono-foreground: var(--color-white);
  --border: oklch(94% 0.004 286.32);
  --input: var(--color-zinc-200);
  --ring: var(--color-zinc-400);
  --radius: 0.5rem;
}

.dark {
  --background: var(--color-zinc-950);
  --foreground: var(--color-zinc-50);
  --card: var(--color-zinc-950);
  --card-foreground: var(--color-zinc-50);
  --popover: var(--color-zinc-950);
  --popover-foreground: var(--color-zinc-50);
  --primary: var(--color-blue-600);
  --primary-foreground: var(--color-white);
  --secondary: var(--color-zinc-800);
  --secondary-foreground: var(--color-zinc-50);
  --muted: var(--color-zinc-900);
  --muted-foreground: var(--color-zinc-500);
  --accent: var(--color-zinc-900);
  --accent-foreground: var(--color-zinc-50);
  --destructive: var(--color-red-600);
  --destructive-foreground: var(--color-white);
  --mono: var(--color-zinc-300);
  --mono-foreground: var(--color-black);
  --border: var(--color-zinc-800);
  --input: var(--color-zinc-800);
  --ring: var(--color-zinc-600);
}

@layer components {
  .kt-avatar {
    position: relative;
    display: flex;
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    flex-shrink: 0;
  }

  .kt-avatar-image {
    overflow: hidden;
    border-radius: calc(infinity * 1px);
  }

  .kt-avatar-image img {
    aspect-ratio: 1 / 1;
    height: 100%;
    width: 100%;
  }

  .kt-avatar-fallback {
    display: flex;
    height: 100%;
    width: 100%;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--accent);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-avatar-indicator {
    position: absolute;
    display: flex;
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
    align-items: center;
    justify-content: center;
  }

  .kt-avatar-status {
    display: flex;
    width: calc(var(--spacing) * 2);
    height: calc(var(--spacing) * 2);
    align-items: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--background);
  }

  .kt-avatar-status.kt-avatar-status-online {
    background-color: var(--color-green-600);
  }

  .kt-avatar-status.kt-avatar-status-offline {
    background-color: var(--mono);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-avatar-status.kt-avatar-status-offline {
      background-color: color-mix(in oklab, var(--mono) 50%, transparent);
    }
  }

  .kt-avatar-status.kt-avatar-status-busy {
    background-color: var(--color-yellow-600);
  }

  .kt-avatar-status.kt-avatar-status-away {
    background-color: var(--color-blue-600);
  }
}

@layer components {
  .kt-accordion-item {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
  }

  .kt-accordion-item:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }

  .kt-accordion-toggle {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 4);
    text-align: start;
  }

  .kt-accordion-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--mono);
  }

  .kt-accordion-content {
    overflow: hidden;
    transition-property: height;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-accordion-wrapper {
    padding-bottom: calc(var(--spacing) * 4);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--foreground);
  }

  .kt-accordion-indicator {
    display: inline-flex;
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
    align-items: center;
    color: var(--muted-foreground);
  }

  .kt-accordion-indicator-on {
    display: block;
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
  }

  .kt-accordion-indicator-on.active[data-kt-accordion-item] {
    display: none;
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-indicator-on {
    display: none;
  }

  .active[data-kt-accordion-item]>.kt-accordion-indicator-on[data-kt-accordion-toggle] {
    display: none;
  }

  .kt-accordion-indicator-off {
    display: none;
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
  }

  .kt-accordion-indicator-off.active[data-kt-accordion-item] {
    display: block;
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-indicator-off {
    display: block;
  }

  .active[data-kt-accordion-item]>.kt-accordion-indicator-off[data-kt-accordion-toggle] {
    display: block;
  }

  .kt-accordion.kt-accordion-outline {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3.5);
  }

  .kt-accordion.kt-accordion-outline .kt-accordion-item {
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
  }

  .kt-accordion.kt-accordion-outline .kt-accordion-content {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
  }

  .kt-accordion.kt-accordion-outline .kt-accordion-toggle {
    padding: calc(var(--spacing) * 4);
  }

  .kt-accordion.kt-accordion-outline .kt-accordion-wrapper {
    padding: calc(var(--spacing) * 4);
  }
}

@layer components {
  .kt-accordion-menu {
    display: flex;
    width: 100%;
    flex-direction: column;
    row-gap: calc(var(--spacing) * 1);
  }

  .kt-accordion-menu-content {
    overflow: hidden;
    padding-inline-start: calc(var(--spacing) * 6);
    transition-property: height;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-accordion-menu-sub {
    width: 100%;
    row-gap: calc(var(--spacing) * 1);
  }

  .kt-accordion-menu-item {
    width: 100%;
  }

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

  .kt-accordion-menu-toggle {
    display: flex;
    width: 100%;
    align-items: center;
    column-gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
  }

  @media (hover: hover) {
    .kt-accordion-menu-toggle:hover {
      background-color: var(--accent);
    }
  }

  .kt-accordion-menu-toggle:disabled {
    pointer-events: none;
  }

  .kt-accordion-menu-toggle:disabled {
    opacity: 50%;
  }

  .kt-accordion-menu-toggle.active[data-kt-accordion-item] {
    background-color: var(--accent);
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-menu-toggle {
    background-color: var(--accent);
  }

  .active[data-kt-accordion-item]>.kt-accordion-menu-toggle[data-kt-accordion-toggle] {
    background-color: var(--accent);
  }

  .kt-accordion-menu-toggle svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .kt-accordion-menu-link {
    display: flex;
    width: 100%;
    align-items: center;
    column-gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
  }

  @media (hover: hover) {
    .kt-accordion-menu-link:hover {
      background-color: var(--accent);
    }
  }

  .kt-accordion-menu-link:disabled {
    pointer-events: none;
  }

  .kt-accordion-menu-link:disabled {
    opacity: 50%;
  }

  .kt-accordion-menu-link [data-kt-accordion-initialized] .selected {
    background-color: var(--accent);
  }

  [data-kt-accordion-initialized] .selected .kt-accordion-menu-link {
    background-color: var(--accent);
  }

  [data-kt-accordion-initialized] .kt-accordion-menu-link.selected {
    background-color: var(--accent);
  }

  .kt-accordion-menu-link svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .kt-accordion-menu-indicator {
    margin-inline-start: auto;
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .kt-accordion-menu-indicator.active[data-kt-accordion-item] {
    rotate: 180deg;
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] .kt-accordion-menu-indicator {
    rotate: 180deg;
  }

  .active[data-kt-accordion-item]>.kt-accordion-menu-indicator[data-kt-accordion-toggle] {
    rotate: 180deg;
  }
}

@layer components {
  .active[data-kt-accordion-item]:is([dir='rtl'] .kt-accordion-menu-indicator) {
    rotate: calc(180deg * -1);
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle] :is([dir='rtl'] .kt-accordion-menu-indicator) {
    rotate: calc(180deg * -1);
  }

  .active[data-kt-accordion-item]>[data-kt-accordion-toggle]:is([dir='rtl'] .kt-accordion-menu-indicator) {
    rotate: calc(180deg * -1);
  }
}

@layer components {
  .kt-alert-overlay {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    z-index: 50;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: calc(var(--spacing) * 4);
    background-color: color-mix(in srgb, #000 30%, transparent);
  }

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

  .kt-alert-overlay {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    backdrop-filter: var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }

  .kt-alert-modal {
    position: relative;
    margin-inline: auto;
    display: flex;
    width: 100%;
    max-width: var(--container-md);
    flex-direction: column;
    border-radius: calc(var(--radius) + 4px);
    background-color: var(--popover);
    color: var(--popover-foreground);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
    animation: fadeIn 0.3s ease-out, zoomIn 0.3s ease-out;
  }

  .kt-alert-container {
    position: relative;
    display: flex;
    width: 100%;
    flex-direction: column;
    border-radius: calc(var(--radius) + 4px);
    background-color: var(--popover);
    color: var(--popover-foreground);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
    animation: fadeIn 0.3s ease-out, zoomIn 0.3s ease-out;
  }

  .kt-alert-modal>*:not(.kt-alert-close-button),
  .kt-alert-container>*:not(.kt-alert-close-button) {
    padding-inline: calc(var(--spacing) * 5);
  }

  .kt-alert-modal>*:first-child:not(.kt-alert-close-button),
  .kt-alert-container>*:first-child:not(.kt-alert-close-button) {
    padding-top: calc(var(--spacing) * 5);
  }

  .kt-alert-modal>*:last-child:not(.kt-alert-close-button),
  .kt-alert-container>*:last-child:not(.kt-alert-close-button) {
    padding-bottom: calc(var(--spacing) * 5);
  }

  .kt-alert-icon {
    margin-inline: auto;
    margin-bottom: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 16);
    height: calc(var(--spacing) * 16);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    transition-delay: 100ms;
    --tw-duration: 300ms;
    transition-duration: 300ms;
    animation: fadeIn 0.3s ease-out 0.1s both, zoomInSmall 0.3s ease-out 0.1s both;
  }

  .kt-alert-title {
    margin-bottom: calc(var(--spacing) * 3);
    text-align: center;
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--popover-foreground);
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .kt-alert-message {
    margin-bottom: calc(var(--spacing) * 6);
    text-align: center;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--muted-foreground);
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .kt-alert-actions {
    margin-top: calc(var(--spacing) * 6);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 3);
  }

  .kt-alert-confirm-button {
    border-radius: var(--radius);
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    background-color: var(--primary);
    color: var(--primary-foreground);
  }

  @media (hover: hover) {
    .kt-alert-confirm-button:hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-alert-confirm-button:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
  }

  .kt-alert-confirm-button:focus {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-confirm-button:focus {
      background-color: color-mix(in oklab, var(--primary) 90%, transparent);
    }
  }

  .kt-alert-confirm-button:active {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-confirm-button:active {
      background-color: color-mix(in oklab, var(--primary) 80%, transparent);
    }
  }

  .kt-alert-confirm-button: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);
  }

  .kt-alert-confirm-button:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-alert-confirm-button:focus-visible {
    --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);
  }

  .kt-alert-confirm-button {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    --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);
  }

  @media (hover: hover) {
    .kt-alert-confirm-button:hover {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  .kt-alert-cancel-button {
    border-radius: var(--radius);
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    background-color: var(--secondary);
    color: var(--secondary-foreground);
  }

  @media (hover: hover) {
    .kt-alert-cancel-button:hover {
      background-color: var(--secondary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-alert-cancel-button:hover {
        background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
      }
    }
  }

  .kt-alert-cancel-button:focus {
    background-color: var(--secondary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-cancel-button:focus {
      background-color: color-mix(in oklab, var(--secondary) 80%, transparent);
    }
  }

  .kt-alert-cancel-button:active {
    background-color: var(--secondary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-cancel-button:active {
      background-color: color-mix(in oklab, var(--secondary) 70%, transparent);
    }
  }

  .kt-alert-cancel-button: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);
  }

  .kt-alert-cancel-button:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-alert-cancel-button:focus-visible {
    --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);
  }

  .kt-alert-cancel-button {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    --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);
  }

  @media (hover: hover) {
    .kt-alert-cancel-button:hover {
      --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }

  .kt-alert-close-button {
    position: absolute;
    top: calc(var(--spacing) * 4);
    right: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 8);
    height: calc(var(--spacing) * 8);
    border-radius: var(--radius);
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    .kt-alert-close-button:hover {
      color: var(--popover-foreground);
    }
  }

  @media (hover: hover) {
    .kt-alert-close-button:hover {
      background-color: var(--muted);
    }
  }

  .kt-alert-close-button: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);
  }

  .kt-alert-close-button:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-alert-close-button:focus-visible {
    --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);
  }

  .kt-alert-close-button {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .kt-alert-input {
    width: 100%;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
  }

  .kt-alert-input:focus-visible {
    border-color: var(--ring);
  }

  .kt-alert-input: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);
  }

  .kt-alert-input:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-alert-input:focus-visible {
    --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);
  }

  .kt-alert-input {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .kt-alert-input::placeholder {
    color: var(--muted-foreground);
  }

  .kt-alert-input-label {
    margin-bottom: calc(var(--spacing) * 3);
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--popover-foreground);
  }

  .kt-alert-custom-content {
    margin-top: calc(var(--spacing) * 6);
  }

  .kt-alert-loader {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
    animation: var(--animate-spin);
  }

  .kt-alert-loader::before {
    content: '';
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--muted);
    border-top-color: var(--primary);
    animation: var(--animate-spin);
  }

  .kt-alert-confirm-button:disabled {
    cursor: not-allowed;
    opacity: 75%;
    position: relative;
  }

  .kt-alert-confirm-button:disabled::after {
    content: '';
    position: absolute;
    inset: calc(var(--spacing) * 0);
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--primary-foreground);
    border-top-color: transparent;
    animation: var(--animate-spin);
  }
}

@layer components {

  .kt-alert-input[type="text"],
  .kt-alert-input[type="email"],
  .kt-alert-input[type="password"],
  .kt-alert-input[type="number"],
  .kt-alert-input[type="url"],
  textarea.kt-alert-input {
    width: 100%;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
  }

  :is(.kt-alert-input[type="text"], .kt-alert-input[type="email"], .kt-alert-input[type="password"], .kt-alert-input[type="number"], .kt-alert-input[type="url"], textarea.kt-alert-input):focus-visible {
    border-color: var(--ring);
  }

  :is(.kt-alert-input[type="text"], .kt-alert-input[type="email"], .kt-alert-input[type="password"], .kt-alert-input[type="number"], .kt-alert-input[type="url"], textarea.kt-alert-input):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);
  }

  :is(.kt-alert-input[type="text"], .kt-alert-input[type="email"], .kt-alert-input[type="password"], .kt-alert-input[type="number"], .kt-alert-input[type="url"], textarea.kt-alert-input):focus-visible {
    --tw-ring-color: var(--ring);
  }

  :is(.kt-alert-input[type="text"], .kt-alert-input[type="email"], .kt-alert-input[type="password"], .kt-alert-input[type="number"], .kt-alert-input[type="url"], textarea.kt-alert-input):focus-visible {
    --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);
  }

  .kt-alert-input[type="text"],
  .kt-alert-input[type="email"],
  .kt-alert-input[type="password"],
  .kt-alert-input[type="number"],
  .kt-alert-input[type="url"],
  textarea.kt-alert-input {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  :is(.kt-alert-input[type="text"], .kt-alert-input[type="email"], .kt-alert-input[type="password"], .kt-alert-input[type="number"], .kt-alert-input[type="url"], textarea.kt-alert-input)::placeholder {
    color: var(--muted-foreground);
  }

  select.kt-alert-input {
    width: 100%;
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
  }

  select.kt-alert-input:focus-visible {
    border-color: var(--ring);
  }

  select.kt-alert-input: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);
  }

  select.kt-alert-input:focus-visible {
    --tw-ring-color: var(--ring);
  }

  select.kt-alert-input:focus-visible {
    --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);
  }

  select.kt-alert-input {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    padding-right: 2.5rem;
  }

  .kt-alert-input-label input[type="radio"],
  .kt-alert-input-label input[type="checkbox"] {
    margin-right: calc(var(--spacing) * 3);
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    border-radius: 0.25rem;
    border-color: var(--input);
    color: var(--primary);
  }

  :is(.kt-alert-input-label input[type="radio"], .kt-alert-input-label input[type="checkbox"]):focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  :is(.kt-alert-input-label input[type="radio"], .kt-alert-input-label input[type="checkbox"]):focus {
    --tw-ring-color: var(--ring);
  }

  .kt-alert-input-label label {
    display: flex;
    cursor: pointer;
    align-items: center;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--popover-foreground);
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }

  @media (hover: hover) {
    :is(.kt-alert-input-label label):hover {
      color: var(--popover-foreground);
    }
  }

  .kt-alert-input-label label {
    padding-block: calc(var(--spacing) * 2);
  }

  :where(:is(.kt-alert-input-label fieldset) > :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)));
  }

  .kt-alert-input-label legend {
    margin-bottom: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--popover-foreground);
  }

  .kt-alert-input-error {
    margin-top: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--destructive);
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    --tw-duration: 200ms;
    transition-duration: 200ms;
    animation: fadeIn 0.2s ease-out;
  }

  .kt-alert-input-error::before {
    content: '⚠';
    color: var(--destructive);
  }

  .kt-alert-input-error+.kt-alert-input-label .kt-alert-input,
  .kt-alert-input-label .kt-alert-input[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  :is(.kt-alert-input-error + .kt-alert-input-label .kt-alert-input, .kt-alert-input-label .kt-alert-input[aria-invalid="true"]):focus-visible {
    border-color: var(--destructive);
  }

  :is(.kt-alert-input-error + .kt-alert-input-label .kt-alert-input, .kt-alert-input-label .kt-alert-input[aria-invalid="true"]):focus-visible {
    --tw-ring-color: var(--destructive);
  }
}

@layer components {
  [data-kt-alert-type="success"] .kt-alert-icon {
    background-color: var(--color-green-100);
    color: var(--color-green-600);
  }

  [data-kt-alert-type="success"] .kt-alert-confirm-button {
    background-color: var(--color-green-600);
    color: var(--color-white);
  }

  @media (hover: hover) {
    :is([data-kt-alert-type="success"] .kt-alert-confirm-button):hover {
      background-color: var(--color-green-700);
    }
  }

  :is([data-kt-alert-type="success"] .kt-alert-confirm-button):focus {
    background-color: var(--color-green-700);
  }

  :is([data-kt-alert-type="success"] .kt-alert-confirm-button):active {
    background-color: var(--color-green-800);
  }

  :is([data-kt-alert-type="success"] .kt-alert-confirm-button):focus-visible {
    --tw-ring-color: var(--color-green-500);
  }

  [data-kt-alert-type="error"] .kt-alert-icon {
    background-color: var(--color-red-100);
    color: var(--color-red-600);
  }

  [data-kt-alert-type="error"] .kt-alert-confirm-button {
    background-color: var(--color-red-600);
    color: var(--color-white);
  }

  @media (hover: hover) {
    :is([data-kt-alert-type="error"] .kt-alert-confirm-button):hover {
      background-color: var(--color-red-700);
    }
  }

  :is([data-kt-alert-type="error"] .kt-alert-confirm-button):focus {
    background-color: var(--color-red-700);
  }

  :is([data-kt-alert-type="error"] .kt-alert-confirm-button):active {
    background-color: var(--color-red-800);
  }

  :is([data-kt-alert-type="error"] .kt-alert-confirm-button):focus-visible {
    --tw-ring-color: var(--color-red-500);
  }

  [data-kt-alert-type="warning"] .kt-alert-icon {
    background-color: var(--color-yellow-100);
    color: var(--color-yellow-600);
  }

  [data-kt-alert-type="warning"] .kt-alert-confirm-button {
    background-color: var(--color-yellow-600);
    color: var(--color-white);
  }

  @media (hover: hover) {
    :is([data-kt-alert-type="warning"] .kt-alert-confirm-button):hover {
      background-color: var(--color-yellow-700);
    }
  }

  :is([data-kt-alert-type="warning"] .kt-alert-confirm-button):focus {
    background-color: var(--color-yellow-700);
  }

  :is([data-kt-alert-type="warning"] .kt-alert-confirm-button):active {
    background-color: var(--color-yellow-800);
  }

  :is([data-kt-alert-type="warning"] .kt-alert-confirm-button):focus-visible {
    --tw-ring-color: var(--color-yellow-500);
  }

  [data-kt-alert-type="info"] .kt-alert-icon {
    background-color: var(--color-blue-100);
    color: var(--color-blue-600);
  }

  [data-kt-alert-type="info"] .kt-alert-confirm-button {
    background-color: var(--color-blue-600);
    color: var(--color-white);
  }

  @media (hover: hover) {
    :is([data-kt-alert-type="info"] .kt-alert-confirm-button):hover {
      background-color: var(--color-blue-700);
    }
  }

  :is([data-kt-alert-type="info"] .kt-alert-confirm-button):focus {
    background-color: var(--color-blue-700);
  }

  :is([data-kt-alert-type="info"] .kt-alert-confirm-button):active {
    background-color: var(--color-blue-800);
  }

  :is([data-kt-alert-type="info"] .kt-alert-confirm-button):focus-visible {
    --tw-ring-color: var(--color-blue-500);
  }

  [data-kt-alert-type="question"] .kt-alert-icon {
    background-color: var(--color-purple-100);
    color: var(--color-purple-600);
  }

  [data-kt-alert-type="question"] .kt-alert-confirm-button {
    background-color: var(--color-purple-600);
    color: var(--color-white);
  }

  @media (hover: hover) {
    :is([data-kt-alert-type="question"] .kt-alert-confirm-button):hover {
      background-color: var(--color-purple-700);
    }
  }

  :is([data-kt-alert-type="question"] .kt-alert-confirm-button):focus {
    background-color: var(--color-purple-700);
  }

  :is([data-kt-alert-type="question"] .kt-alert-confirm-button):active {
    background-color: var(--color-purple-800);
  }

  :is([data-kt-alert-type="question"] .kt-alert-confirm-button):focus-visible {
    --tw-ring-color: var(--color-purple-500);
  }
}

@layer components {
  [data-kt-alert-position="top"] {
    align-items: flex-start;
    justify-content: center;
  }

  [data-kt-alert-position="center"] {
    align-items: center;
    justify-content: center;
  }

  [data-kt-alert-position="bottom"] {
    align-items: flex-end;
    justify-content: center;
  }

  [data-kt-alert-position="top-start"] {
    align-items: flex-start;
    justify-content: flex-start;
  }

  [data-kt-alert-position="top-end"] {
    align-items: flex-start;
    justify-content: flex-end;
  }

  [data-kt-alert-position="bottom-start"] {
    align-items: flex-end;
    justify-content: flex-start;
  }

  [data-kt-alert-position="bottom-end"] {
    align-items: flex-end;
    justify-content: flex-end;
  }
}

@layer components {

  .kt-alert-modal:focus-within,
  .kt-alert-container: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);
    --tw-ring-color: var(--ring);
    --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);
  }

  .kt-alert-confirm-button:disabled,
  .kt-alert-cancel-button:disabled {
    cursor: not-allowed;
    opacity: 75%;
  }

  .kt-alert-input:disabled {
    cursor: not-allowed;
    background-color: var(--muted);
    opacity: 75%;
  }

  .kt-alert-confirm-button,
  .kt-alert-cancel-button {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .kt-alert-confirm-button:hover,
  .kt-alert-cancel-button:hover {
    --tw-scale-x: 105%;
    --tw-scale-y: 105%;
    --tw-scale-z: 105%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .kt-alert-confirm-button:active,
  .kt-alert-cancel-button:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .kt-alert-close-button {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }

  .kt-alert-close-button:hover {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .kt-alert-modal:focus-visible,
  .kt-alert-container:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-alert-input:focus {
    scale: 1.02;
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }
}

@layer components {
  [dir='rtl'] .kt-alert-close-button {
    right: auto;
    left: calc(var(--spacing) * 4);
  }

  [dir='rtl'] .kt-alert-actions {
    justify-content: center;
  }

  [dir='rtl'] select.kt-alert-input {
    background-position: left 0.75rem center;
    padding-left: 2.5rem;
    padding-right: 1rem;
  }

  [dir='rtl'] .kt-alert-input-label input[type="radio"],
  [dir='rtl'] .kt-alert-input-label input[type="checkbox"] {
    margin-right: calc(var(--spacing) * 0);
    margin-left: calc(var(--spacing) * 3);
  }
}

@layer components {
  .dark .kt-alert-overlay {
    background-color: color-mix(in srgb, #000 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark .kt-alert-overlay {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }

  .dark .kt-alert-modal,
  .dark .kt-alert-container {
    background-color: var(--popover);
    color: var(--popover-foreground);
  }

  .dark .kt-alert-input {
    border-color: var(--input);
    background-color: var(--background);
  }

  .dark select.kt-alert-input {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
  }

  .dark [data-kt-alert-type="success"] .kt-alert-icon {
    background-color: color-mix(in srgb, oklch(39.3% 0.095 152.535) 20%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark [data-kt-alert-type="success"] .kt-alert-icon {
      background-color: color-mix(in oklab, var(--color-green-900) 20%, transparent);
    }
  }

  .dark [data-kt-alert-type="success"] .kt-alert-icon {
    color: var(--color-green-400);
  }

  .dark [data-kt-alert-type="error"] .kt-alert-icon {
    background-color: color-mix(in srgb, oklch(39.6% 0.141 25.723) 20%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark [data-kt-alert-type="error"] .kt-alert-icon {
      background-color: color-mix(in oklab, var(--color-red-900) 20%, transparent);
    }
  }

  .dark [data-kt-alert-type="error"] .kt-alert-icon {
    color: var(--color-red-400);
  }

  .dark [data-kt-alert-type="warning"] .kt-alert-icon {
    background-color: color-mix(in srgb, oklch(42.1% 0.095 57.708) 20%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark [data-kt-alert-type="warning"] .kt-alert-icon {
      background-color: color-mix(in oklab, var(--color-yellow-900) 20%, transparent);
    }
  }

  .dark [data-kt-alert-type="warning"] .kt-alert-icon {
    color: var(--color-yellow-400);
  }

  .dark [data-kt-alert-type="info"] .kt-alert-icon {
    background-color: color-mix(in srgb, oklch(37.9% 0.146 265.522) 20%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark [data-kt-alert-type="info"] .kt-alert-icon {
      background-color: color-mix(in oklab, var(--color-blue-900) 20%, transparent);
    }
  }

  .dark [data-kt-alert-type="info"] .kt-alert-icon {
    color: var(--color-blue-400);
  }

  .dark [data-kt-alert-type="question"] .kt-alert-icon {
    background-color: color-mix(in srgb, oklch(38.1% 0.176 304.987) 20%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark [data-kt-alert-type="question"] .kt-alert-icon {
      background-color: color-mix(in oklab, var(--color-purple-900) 20%, transparent);
    }
  }

  .dark [data-kt-alert-type="question"] .kt-alert-icon {
    color: var(--color-purple-400);
  }
}

@layer utilities {
  .animate-in {
    animation-fill-mode: both;
  }

  .fade-in-0 {
    animation-name: fadeIn;
  }

  .zoom-in-95 {
    animation-name: zoomIn;
  }

  .zoom-in-50 {
    animation-name: zoomInSmall;
  }

  @keyframes fadeIn {
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }

  @keyframes zoomIn {
    from {
      opacity: 0;
      transform: scale(0.95);
    }

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

  @keyframes zoomInSmall {
    from {
      opacity: 0;
      transform: scale(0.5);
    }

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

@layer components {
  :where(.kt-form > :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)));
  }

  .kt-form-item {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2.5);
  }

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

  .kt-form-control-inline {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }

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

  .kt-form-label {
    display: flex;
    width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
  }

  .kt-form-label:is(:where(.peer):disabled ~ *) {
    cursor: not-allowed;
  }

  .kt-form-label:is(:where(.peer):disabled ~ *) {
    opacity: 50%;
  }

  .kt-switch:disabled+.kt-form-label,
  .kt-checkbox:disabled+.kt-form-label,
  .kt-radio:disabled+.kt-form-label {
    cursor: not-allowed;
    opacity: 50%;
  }

  .kt-form-description {
    margin-top: calc(var(--spacing) * -1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--secondary-foreground);
  }

  .kt-form-message {
    margin-top: calc(var(--spacing) * -1);
    display: none;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--destructive);
  }

  .kt-form-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 2.5);
  }

  .kt-form-item:has([aria-invalid='true']) .kt-form-message {
    display: block;
  }

  .kt-form-item:has([aria-invalid='true']) .kt-form-description {
    display: none;
  }
}

@layer components {
  .kt-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: var(--secondary);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: var(--accent-foreground);
  }

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

  .kt-badge:focus {
    --tw-ring-color: var(--ring);
  }

  .kt-badge:focus {
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  .kt-badge:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (forced-colors: active) {
    .kt-badge:focus {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }

  .kt-badge svg {
    margin-inline-start: -1px;
  }

  .kt-badge svg {
    flex-shrink: 0;
  }

  .kt-badge-primary {
    background-color: var(--primary);
    color: var(--primary-foreground);
  }

  .kt-badge-secondary {
    background-color: var(--secondary);
    color: var(--accent-foreground);
  }

  .kt-badge-success {
    background-color: var(--color-green-500);
    color: var(--color-white);
  }

  .kt-badge-warning {
    background-color: var(--color-yellow-400);
    color: var(--color-white);
  }

  .kt-badge-info {
    background-color: var(--color-violet-500);
    color: var(--color-white);
  }

  .kt-badge-mono {
    background-color: var(--mono);
    color: var(--mono-foreground);
  }

  .kt-badge-destructive {
    background-color: var(--destructive);
    color: var(--destructive-foreground);
  }

  .kt-badge-stroke {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--background);
    color: var(--secondary-foreground);
  }

  .kt-badge-disabled {
    pointer-events: none;
    opacity: 50%;
  }

  .kt-badge-lg {
    height: calc(var(--spacing) * 7);
    min-width: calc(var(--spacing) * 7);
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: 0.5rem;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-badge-lg svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-badge {
    height: calc(var(--spacing) * 6);
    min-width: calc(var(--spacing) * 6);
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: 0.45rem;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-badge svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-badge-sm {
    height: calc(var(--spacing) * 5);
    min-width: calc(var(--spacing) * 5);
    gap: calc(var(--spacing) * 1);
    border-radius: calc(var(--radius) - 4px);
    padding-inline: 0.325rem;
    font-size: 0.6875rem;
    --tw-leading: 0.75rem;
    line-height: 0.75rem;
  }

  .kt-badge-sm svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }

  .kt-badge-xs {
    height: calc(var(--spacing) * 4);
    min-width: calc(var(--spacing) * 4);
    gap: calc(var(--spacing) * 1);
    border-radius: calc(var(--radius) - 4px);
    padding-inline: 0.25rem;
    font-size: 0.625rem;
    --tw-leading: 0.5rem;
    line-height: 0.5rem;
  }

  .kt-badge-xs svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }

  .kt-badge-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--muted);
    color: var(--secondary-foreground);
  }

  .kt-badge-outline.kt-badge-primary {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-blue-100);
    background-color: var(--color-blue-50);
    color: var(--color-blue-700);
  }

  .kt-badge-outline.kt-badge-primary:is(.dark *) {
    border-color: var(--color-blue-950);
  }

  .kt-badge-outline.kt-badge-primary:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.2% 0.091 267.935) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-primary:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-blue-950) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-primary:is(.dark *) {
    color: var(--color-blue-600);
  }

  .kt-badge-outline.kt-badge-secondary {
    border-color: var(--border);
    background-color: var(--secondary);
    color: var(--foreground);
  }

  .kt-badge-outline.kt-badge-secondary:is(.dark *) {
    background-color: var(--secondary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-secondary:is(.dark *) {
      background-color: color-mix(in oklab, var(--secondary) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-success {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-green-200);
    background-color: var(--color-green-50);
    color: var(--color-green-700);
  }

  .kt-badge-outline.kt-badge-success:is(.dark *) {
    border-color: var(--color-green-950);
  }

  .kt-badge-outline.kt-badge-success:is(.dark *) {
    background-color: color-mix(in srgb, oklch(26.6% 0.065 152.934) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-success:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-green-950) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-success:is(.dark *) {
    color: var(--color-green-600);
  }

  .kt-badge-outline.kt-badge-warning.kt-badge-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-yellow-100);
    background-color: var(--color-yellow-50);
    color: var(--color-yellow-700);
  }

  .kt-badge-outline.kt-badge-warning.kt-badge-outline:is(.dark *) {
    border-color: var(--color-yellow-950);
  }

  .kt-badge-outline.kt-badge-warning.kt-badge-outline:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.6% 0.066 53.813) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-warning.kt-badge-outline:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-yellow-950) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-warning.kt-badge-outline:is(.dark *) {
    color: var(--color-yellow-600);
  }

  .kt-badge-outline.kt-badge-info.kt-badge-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-violet-100);
    background-color: var(--color-violet-50);
    color: var(--color-violet-700);
  }

  .kt-badge-outline.kt-badge-info.kt-badge-outline:is(.dark *) {
    border-color: var(--color-violet-950);
  }

  .kt-badge-outline.kt-badge-info.kt-badge-outline:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.3% 0.141 291.089) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-info.kt-badge-outline:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-violet-950) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-info.kt-badge-outline:is(.dark *) {
    color: var(--color-violet-600);
  }

  .kt-badge-outline.kt-badge-mono.kt-badge-outline {
    border-color: var(--mono);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-mono.kt-badge-outline {
      border-color: color-mix(in oklab, var(--mono) 10%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-mono.kt-badge-outline {
    background-color: var(--mono);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-mono.kt-badge-outline {
      background-color: color-mix(in oklab, var(--mono) 10%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-mono.kt-badge-outline {
    color: var(--mono);
  }

  .kt-badge-outline.kt-badge-destructive.kt-badge-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-red-100);
    background-color: var(--color-red-50);
    color: var(--color-red-700);
  }

  .kt-badge-outline.kt-badge-destructive.kt-badge-outline:is(.dark *) {
    border-color: var(--color-red-950);
  }

  .kt-badge-outline.kt-badge-destructive.kt-badge-outline:is(.dark *) {
    background-color: color-mix(in srgb, oklch(25.8% 0.092 26.042) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-outline.kt-badge-destructive.kt-badge-outline:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-red-950) 50%, transparent);
    }
  }

  .kt-badge-outline.kt-badge-destructive.kt-badge-outline:is(.dark *) {
    color: var(--color-red-600);
  }

  .kt-badge-light.kt-badge-primary {
    background-color: var(--color-blue-100);
    color: var(--color-blue-800);
  }

  .kt-badge-light.kt-badge-primary:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.2% 0.091 267.935) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-primary:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-blue-950) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-primary:is(.dark *) {
    color: var(--color-blue-600);
  }

  .kt-badge-light.kt-badge-secondary {
    background-color: var(--secondary);
    color: var(--secondary-foreground);
  }

  .kt-badge-light.kt-badge-secondary:is(.dark *) {
    background-color: var(--secondary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-secondary:is(.dark *) {
      background-color: color-mix(in oklab, var(--secondary) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-success {
    background-color: var(--color-green-100);
    color: var(--color-green-800);
  }

  .kt-badge-light.kt-badge-success:is(.dark *) {
    background-color: color-mix(in srgb, oklch(26.6% 0.065 152.934) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-success:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-green-950) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-success:is(.dark *) {
    color: var(--color-green-600);
  }

  .kt-badge-light.kt-badge-warning {
    background-color: var(--color-yellow-100);
    color: var(--color-yellow-800);
  }

  .kt-badge-light.kt-badge-warning:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.6% 0.066 53.813) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-warning:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-yellow-950) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-warning:is(.dark *) {
    color: var(--color-yellow-600);
  }

  .kt-badge-light.kt-badge-info {
    background-color: var(--color-violet-100);
    color: var(--color-violet-800);
  }

  .kt-badge-light.kt-badge-info:is(.dark *) {
    background-color: color-mix(in srgb, oklch(28.3% 0.141 291.089) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-info:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-violet-950) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-info:is(.dark *) {
    color: var(--color-violet-600);
  }

  .kt-badge-light.kt-badge-mono {
    background-color: var(--mono);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-mono {
      background-color: color-mix(in oklab, var(--mono) 10%, transparent);
    }
  }

  .kt-badge-light.kt-badge-mono {
    color: var(--mono);
  }

  .kt-badge-light.kt-badge-destructive {
    background-color: var(--color-red-100);
    color: var(--color-red-800);
  }

  .kt-badge-light.kt-badge-destructive:is(.dark *) {
    background-color: color-mix(in srgb, oklch(25.8% 0.092 26.042) 50%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-badge-light.kt-badge-destructive:is(.dark *) {
      background-color: color-mix(in oklab, var(--color-red-950) 50%, transparent);
    }
  }

  .kt-badge-light.kt-badge-destructive:is(.dark *) {
    color: var(--color-red-600);
  }

  .kt-badge-ghost {
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 0);
  }

  .kt-badge-ghost.kt-badge-primary {
    color: var(--primary);
  }

  .kt-badge-ghost.kt-badge-secondary {
    color: var(--secondary-foreground);
  }

  .kt-badge-ghost.kt-badge-destructive {
    color: var(--destructive);
  }

  .kt-badge-ghost.kt-badge-success {
    color: var(--color-green-500);
  }

  .kt-badge-ghost.kt-badge-warning {
    color: var(--color-yellow-500);
  }

  .kt-badge-ghost.kt-badge-info {
    color: var(--color-violet-500);
  }

  .kt-badge-ghost.kt-badge-mono {
    color: var(--mono);
  }

  .kt-badge-btn {
    margin-inline-end: calc(var(--spacing) * -0.5);
    display: inline-flex;
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 0);
    --tw-leading: 1;
    line-height: 1;
  }

  .kt-badge-btn i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    opacity: 70%;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-badge-btn>svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    opacity: 70%;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  :is(.kt-badge-btn:focus, .kt-badge-btn:hover) i,
  :is(.kt-badge-btn:focus, .kt-badge-btn:hover)>svg {
    opacity: 100%;
  }

  .kt-badge-dot {
    width: calc(var(--spacing) * 1.5);
    height: calc(var(--spacing) * 1.5);
    border-radius: calc(infinity * 1px);
    background-color: currentcolor;
    opacity: 75%;
  }
}

@layer components {
  .kt-link {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    border-radius: calc(var(--radius) - 2px);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    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));
  }

  .kt-link:focus {
    --tw-outline-style: none;
    outline-style: none;
  }

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

  .kt-link:focus-visible {
    --tw-ring-color: var(--color-neutral-200);
  }

  .kt-link:focus-visible {
    --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);
  }

  .kt-link:is(.dark *):focus-visible {
    --tw-ring-color: var(--color-neutral-700);
  }

  .kt-link {
    color: var(--primary);
  }

  .kt-link-inverse {
    color: var(--background);
  }

  .kt-link-mono {
    color: var(--mono);
  }

  .kt-link {
    gap: calc(var(--spacing) * 1);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
  }

  .kt-link svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-link i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-link-sm {
    gap: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-link-sm svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-link-sm i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-link-lg {
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-link-lg svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-link-lg i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-link-underline {
    margin-top: calc(var(--spacing) * -0.5);
    text-decoration-style: solid;
  }

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

  @media (hover: hover) {
    .kt-link-underline:hover {
      text-underline-offset: 4px;
    }
  }

  .kt-link-underlined {
    margin-top: calc(var(--spacing) * -0.5);
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-underline-offset: 4px;
  }

  .kt-link-dashed {
    text-decoration-style: dashed;
    text-decoration-thickness: 1px;
  }

  .kt-link-disabled {
    pointer-events: none;
    opacity: 50%;
  }
}

@layer components {
  .kt-btn {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    --tw-ring-offset-color: var(--background);
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-btn:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (forced-colors: active) {
    .kt-btn:focus-visible {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }

  .kt-btn:disabled {
    pointer-events: none;
  }

  .kt-btn:disabled {
    opacity: 50%;
  }

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

  .kt-btn:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-btn:focus-visible {
    --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);
  }

  .kt-btn {
    flex-shrink: 0;
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-btn svg {
    flex-shrink: 0;
  }

  .kt-btn {
    background-color: var(--primary);
    color: var(--primary-foreground);
  }

  @media (hover: hover) {
    .kt-btn:hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-btn:hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
  }

  .kt-btn.active {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn.active {
      background-color: color-mix(in oklab, var(--primary) 90%, transparent);
    }
  }

  .kt-btn-mono {
    background-color: var(--mono);
    color: var(--mono-foreground);
  }

  @media (hover: hover) {
    .kt-btn-mono:hover {
      background-color: var(--mono);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-btn-mono:hover {
        background-color: color-mix(in oklab, var(--mono) 90%, transparent);
      }
    }
  }

  .kt-btn-mono.active {
    background-color: var(--mono);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-mono.active {
      background-color: color-mix(in oklab, var(--mono) 90%, transparent);
    }
  }

  .kt-btn-destructive {
    background-color: var(--destructive);
    color: var(--destructive-foreground);
  }

  @media (hover: hover) {
    .kt-btn-destructive:hover {
      background-color: var(--destructive);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-btn-destructive:hover {
        background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
      }
    }
  }

  .kt-btn-destructive.active {
    background-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-destructive.active {
      background-color: color-mix(in oklab, var(--destructive) 90%, transparent);
    }
  }

  .kt-btn-secondary {
    background-color: var(--secondary);
    color: var(--secondary-foreground);
  }

  @media (hover: hover) {
    .kt-btn-secondary:hover {
      background-color: var(--secondary);
    }
  }

  @media (hover: hover) {
    .kt-btn-secondary:hover {
      color: var(--foreground);
    }
  }

  .kt-btn-secondary.active {
    background-color: var(--secondary);
  }

  .kt-btn-secondary.active {
    color: var(--foreground);
  }

  .kt-btn-secondary i {
    color: var(--muted-foreground);
  }

  .kt-btn-secondary svg {
    color: var(--muted-foreground);
  }

  :is(.kt-btn-secondary:hover, .kt-btn-secondary.active) i {
    color: var(--muted-foreground);
  }

  :is(.kt-btn-secondary:hover, .kt-btn-secondary.active) svg {
    color: var(--muted-foreground);
  }

  .kt-btn-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    color: var(--secondary-foreground);
  }

  @media (hover: hover) {
    .kt-btn-outline:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-btn-outline:hover {
      color: var(--accent-foreground);
    }
  }

  .kt-btn-outline.active {
    background-color: var(--accent);
  }

  .kt-btn-outline.active {
    color: var(--accent-foreground);
  }

  .kt-btn-outline i {
    color: var(--muted-foreground);
  }

  .kt-btn-outline svg {
    color: var(--muted-foreground);
  }

  :is(.kt-btn-outline:hover, .kt-btn-outline.active) i {
    color: var(--secondary-foreground);
  }

  :is(.kt-btn-outline:hover, .kt-btn-outline.active) svg {
    color: var(--secondary-foreground);
  }

  .kt-btn-outline.kt-btn-primary {
    border-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-outline.kt-btn-primary {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .kt-btn-outline.kt-btn-primary {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-outline.kt-btn-primary {
      background-color: color-mix(in oklab, var(--primary) 10%, transparent);
    }
  }

  .kt-btn-outline.kt-btn-primary {
    color: var(--primary);
  }

  @media (hover: hover) {
    .kt-btn-outline.kt-btn-primary:hover {
      background-color: var(--primary);
    }
  }

  @media (hover: hover) {
    .kt-btn-outline.kt-btn-primary:hover {
      color: var(--primary-foreground);
    }
  }

  .kt-btn-outline.kt-btn-primary.active {
    border-color: var(--primary);
  }

  .kt-btn-outline.kt-btn-primary.active {
    background-color: var(--primary);
  }

  .kt-btn-outline.kt-btn-primary.active {
    color: var(--primary-foreground);
  }

  .kt-btn-outline.kt-btn-primary i {
    color: var(--primary);
  }

  .kt-btn-outline.kt-btn-primary svg {
    color: var(--primary);
  }

  :is(.kt-btn-outline.kt-btn-primary:hover, .kt-btn-outline.kt-btn-primary.active) i {
    color: var(--primary-foreground);
  }

  :is(.kt-btn-outline.kt-btn-primary:hover, .kt-btn-outline.kt-btn-primary.active) svg {
    color: var(--primary-foreground);
  }

  .kt-btn-outline.kt-btn-destructive {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-outline.kt-btn-destructive {
      border-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-btn-outline.kt-btn-destructive {
    background-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-btn-outline.kt-btn-destructive {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-btn-outline.kt-btn-destructive {
    color: var(--destructive);
  }

  @media (hover: hover) {
    .kt-btn-outline.kt-btn-destructive:hover {
      background-color: var(--destructive);
    }
  }

  @media (hover: hover) {
    .kt-btn-outline.kt-btn-destructive:hover {
      color: var(--destructive-foreground);
    }
  }

  .kt-btn-outline.kt-btn-destructive.active {
    border-color: var(--destructive);
  }

  .kt-btn-outline.kt-btn-destructive.active {
    background-color: var(--destructive);
  }

  .kt-btn-outline.kt-btn-destructive.active {
    color: var(--destructive-foreground);
  }

  .kt-btn-outline.kt-btn-destructive i {
    color: var(--destructive);
  }

  .kt-btn-outline.kt-btn-destructive svg {
    color: var(--destructive);
  }

  :is(.kt-btn-outline.kt-btn-destructive:hover, .kt-btn-outline.kt-btn-destructive.active) i {
    color: var(--destructive-foreground);
  }

  :is(.kt-btn-outline.kt-btn-destructive:hover, .kt-btn-outline.kt-btn-destructive.active) svg {
    color: var(--destructive-foreground);
  }

  .kt-btn-ghost {
    background-color: transparent;
    color: var(--accent-foreground);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  @media (hover: hover) {
    .kt-btn-ghost:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-btn-ghost:hover {
      color: var(--accent-foreground);
    }
  }

  .kt-btn-ghost.active {
    background-color: var(--accent);
  }

  .kt-btn-ghost.active {
    color: var(--accent-foreground);
  }

  .kt-btn-ghost:not(.kt-btn-primary):not(.kt-btn-destructive) i {
    color: var(--muted-foreground);
  }

  .kt-btn-ghost:not(.kt-btn-primary):not(.kt-btn-destructive) svg {
    color: var(--muted-foreground);
  }

  :is(.kt-btn-ghost:not(.kt-btn-primary):not(.kt-btn-destructive):hover, .kt-btn-ghost.active:not(.kt-btn-primary):not(.kt-btn-destructive)) i {
    color: var(--secondary-foreground);
  }

  :is(.kt-btn-ghost:not(.kt-btn-primary):not(.kt-btn-destructive):hover, .kt-btn-ghost.active:not(.kt-btn-primary):not(.kt-btn-destructive)) svg {
    color: var(--secondary-foreground);
  }

  .kt-btn-ghost.kt-btn-primary {
    color: var(--primary);
  }

  @media (hover: hover) {
    .kt-btn-ghost.kt-btn-primary:hover {
      background-color: var(--primary);
    }
  }

  @media (hover: hover) {
    .kt-btn-ghost.kt-btn-primary:hover {
      color: var(--primary-foreground);
    }
  }

  .kt-btn-ghost.kt-btn-primary.active {
    background-color: var(--primary);
  }

  .kt-btn-ghost.kt-btn-primary.active {
    color: var(--primary-foreground);
  }

  .kt-btn-ghost.kt-btn-destructive {
    color: var(--destructive);
  }

  @media (hover: hover) {
    .kt-btn-ghost.kt-btn-destructive:hover {
      background-color: var(--destructive);
    }
  }

  @media (hover: hover) {
    .kt-btn-ghost.kt-btn-destructive:hover {
      color: var(--destructive-foreground);
    }
  }

  .kt-btn-ghost.kt-btn-destructive.active {
    background-color: var(--destructive);
  }

  .kt-btn-ghost.kt-btn-destructive.active {
    color: var(--destructive-foreground);
  }

  .kt-btn-dim {
    background-color: transparent;
    color: var(--muted-foreground);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  @media (hover: hover) {
    .kt-btn-dim:hover {
      background-color: transparent;
    }
  }

  @media (hover: hover) {
    .kt-btn-dim:hover {
      color: var(--foreground);
    }
  }

  .kt-btn-dim.active {
    background-color: transparent;
  }

  .kt-btn-dim.active {
    color: var(--foreground);
  }

  .kt-btn-dim i {
    color: var(--muted-foreground);
  }

  .kt-btn-dim svg {
    color: var(--muted-foreground);
  }

  :is(.kt-btn-dim:hover, .kt-btn-dim.active) i {
    color: var(--secondary-foreground);
  }

  :is(.kt-btn-dim:hover, .kt-btn-dim.active) svg {
    color: var(--secondary-foreground);
  }

  .kt-btn {
    height: calc(var(--spacing) * 8.5);
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 3);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
  }

  .kt-btn svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-btn i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-btn.kt-btn-icon {
    width: calc(var(--spacing) * 8.5);
    height: calc(var(--spacing) * 8.5);
    padding: calc(var(--spacing) * 0);
  }

  .kt-btn-lg {
    height: calc(var(--spacing) * 10);
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-btn-lg svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-btn-lg i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-btn-lg.kt-btn-icon {
    width: calc(var(--spacing) * 10);
    height: calc(var(--spacing) * 10);
    padding: calc(var(--spacing) * 0);
  }

  .kt-btn-sm {
    height: calc(var(--spacing) * 7);
    gap: calc(var(--spacing) * 1.25);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-btn-sm svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-btn-sm i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-btn-sm.kt-btn-icon {
    width: calc(var(--spacing) * 7);
    height: calc(var(--spacing) * 7);
    padding: calc(var(--spacing) * 0);
  }
}

@layer components {
  .kt-label {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
  }

  .kt-switch:disabled+.kt-label,
  .kt-checkbox:disabled+.kt-label,
  .kt-radio:disabled+.kt-label {
    cursor: not-allowed;
    opacity: 50%;
  }

  .kt-label-secondary {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
}

@layer components {
  .kt-card {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    border-radius: calc(var(--radius) + 4px);
    color: var(--card-foreground);
  }

  .kt-card {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--card);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-card {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-card-header {
    display: flex;
    min-height: calc(var(--spacing) * 14);
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2.5);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 5);
  }

  .kt-card-footer {
    display: flex;
    align-items: center;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
  }

  .kt-card-content {
    flex-grow: 1;
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 5);
  }

  .kt-card-table {
    display: grid;
    flex-grow: 1;
  }

  .kt-card-table .kt-table-border {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  :is(:is(.kt-card-table .kt-table) th, :is(.kt-card-table .kt-table) td):first-child {
    padding-inline-start: calc(var(--spacing) * 5);
  }

  :is(:is(.kt-card-table .kt-table) th, :is(.kt-card-table .kt-table) td):last-child {
    padding-inline-end: calc(var(--spacing) * 5);
  }

  .kt-card-grid .kt-card-header,
  .kt-card-grid .kt-card-footer {
    padding-inline: calc(var(--spacing) * 5);
  }

  .kt-card-grid .kt-card-content {
    padding: 0;
  }

  :is(.kt-card-grid .kt-card-content) .kt-table {
    border: 0;
  }

  :is(:is(.kt-card-grid .kt-card-content) .kt-table) th:first-child,
  :is(:is(.kt-card-grid .kt-card-content) .kt-table) td:first-child {
    padding-inline-start: calc(var(--spacing) * 5);
  }

  .kt-table-cell-center:is(:is(:is(.kt-card-grid .kt-card-content) .kt-table) th:first-child, :is(:is(.kt-card-grid .kt-card-content) .kt-table) td:first-child) {
    padding-inline-end: calc(var(--spacing) * 5);
  }

  :is(:is(.kt-card-grid .kt-card-content) .kt-table) th:last-child,
  :is(:is(.kt-card-grid .kt-card-content) .kt-table) td:last-child {
    padding-inline-end: calc(var(--spacing) * 5);
  }

  .table-cell-center:is(:is(:is(.kt-card-grid .kt-card-content) .kt-table) th:last-child, :is(:is(.kt-card-grid .kt-card-content) .kt-table) td:last-child) {
    padding-inline-start: calc(var(--spacing) * 5);
  }

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

  .kt-card-toolbar {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }

  .kt-card-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .kt-card-description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--muted-foreground);
  }

  .kt-card-group {
    flex-grow: 1;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 5);
  }

  .kt-card-group:last-child {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }

  .kt-card-group+.kt-card-footer {
    border-top-style: var(--tw-border-style);
    border-top-width: 0px;
  }

  .kt-card-accent {
    background-color: var(--muted);
    padding: calc(var(--spacing) * 1);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-card-accent {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-card-accent .kt-card-header {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }

  .kt-card-accent .kt-card-content {
    border-top-left-radius: calc(var(--radius) + 4px);
    border-top-right-radius: calc(var(--radius) + 4px);
    background-color: var(--card);
  }

  :is(.kt-card-accent .kt-card-content):last-child {
    border-bottom-right-radius: calc(var(--radius) + 4px);
    border-bottom-left-radius: calc(var(--radius) + 4px);
  }

  .kt-card-accent .kt-card-table {
    border-radius: calc(var(--radius) + 4px);
    background-color: var(--card);
  }

  :is(.kt-card-accent .kt-card-table):last-child {
    border-bottom-right-radius: calc(var(--radius) + 4px);
    border-bottom-left-radius: calc(var(--radius) + 4px);
  }

  .kt-card-accent .kt-card-footer {
    margin-top: 2px;
    border-bottom-right-radius: calc(var(--radius) + 4px);
    border-bottom-left-radius: calc(var(--radius) + 4px);
    border-top-style: var(--tw-border-style);
    border-top-width: 0px;
    background-color: var(--card);
  }

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

  .kt-card-rounded-t {
    border-top-left-radius: calc(var(--radius) + 4px);
    border-top-right-radius: calc(var(--radius) + 4px);
  }

  .kt-card-rounded-b {
    border-bottom-right-radius: calc(var(--radius) + 4px);
    border-bottom-left-radius: calc(var(--radius) + 4px);
  }
}

@layer components {
  .kt-checkbox {
    cursor: pointer;
    appearance: none;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
    border-radius: calc(var(--radius) - 4px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    --tw-ring-offset-color: var(--background);
  }

  .kt-checkbox:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

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

  .kt-checkbox:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-checkbox:focus-visible {
    --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);
  }

  .kt-checkbox:disabled {
    cursor: not-allowed;
  }

  .kt-checkbox:disabled {
    opacity: 50%;
  }

  .kt-checkbox[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-checkbox[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-checkbox[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-checkbox[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-checkbox:checked {
    border-color: var(--primary);
  }

  .kt-checkbox:checked {
    background-color: var(--primary);
  }

  .kt-checkbox:checked {
    color: var(--primary-foreground);
  }

  .kt-checkbox:indeterminate {
    border-color: var(--primary);
  }

  .kt-checkbox:indeterminate {
    background-color: var(--primary);
  }

  .kt-checkbox:indeterminate {
    color: var(--primary-foreground);
  }

  .kt-checkbox-mono:checked {
    border-color: var(--mono);
  }

  .kt-checkbox-mono:checked {
    background-color: var(--mono);
  }

  .kt-checkbox-mono:checked {
    color: var(--mono-foreground);
  }

  .kt-checkbox-mono:indeterminate {
    border-color: var(--mono);
  }

  .kt-checkbox-mono:indeterminate {
    background-color: var(--mono);
  }

  .kt-checkbox-mono:indeterminate {
    color: var(--mono-foreground);
  }

  .kt-checkbox {
    width: calc(var(--spacing) * 4.5);
    height: calc(var(--spacing) * 4.5);
  }

  .kt-checkbox:checked,
  .kt-checkbox[aria-checked='true'] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='9' viewBox='0 0 12 9' fill='none'%3E%3Cpath d='M10.3667 0.541643L4.80007 6.10831L1.56674 2.87498C1.41061 2.71977 1.1994 2.63265 0.979241 2.63265C0.759086 2.63265 0.547876 2.71977 0.391741 2.87498C0.236532 3.03111 0.149414 3.24232 0.149414 3.46248C0.149414 3.68263 0.236532 3.89384 0.391741 4.04998L4.21674 7.87498C4.37288 8.03019 4.58409 8.1173 4.80424 8.1173C5.0244 8.1173 5.23561 8.03019 5.39174 7.87498L11.5417 1.72498C11.6198 1.64751 11.6818 1.55534 11.7241 1.45379C11.7665 1.35224 11.7882 1.24332 11.7882 1.13331C11.7882 1.0233 11.7665 0.914379 11.7241 0.81283C11.6818 0.711281 11.6198 0.619113 11.5417 0.541643C11.3856 0.386434 11.1744 0.299316 10.9542 0.299316C10.7341 0.299316 10.5229 0.386434 10.3667 0.541643Z' fill='white'/%3E%3C/svg%3E");
  }

  .kt-checkbox:indeterminate {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10h8'/%3E%3C/svg%3E");
  }

  .kt-checkbox {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }

  .kt-checkbox-sm {
    width: calc(var(--spacing) * 4.5);
    height: calc(var(--spacing) * 4.5);
  }

  .kt-checkbox-sm:checked,
  .kt-checkbox-sm[aria-checked='true'] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='7' viewBox='0 0 10 7' fill='none'%3E%3Cpath d='M8.4932 0.233321L4.03986 4.68665L1.4532 2.09999C1.32829 1.97582 1.15932 1.90613 0.983198 1.90613C0.807074 1.90613 0.638106 1.97582 0.513198 2.09999C0.38903 2.2249 0.319336 2.39386 0.319336 2.56999C0.319336 2.74611 0.38903 2.91508 0.513198 3.03999L3.5732 6.09999C3.69811 6.22415 3.86707 6.29385 4.0432 6.29385C4.21932 6.29385 4.38829 6.22415 4.5132 6.09999L9.4332 1.17999C9.49568 1.11801 9.54528 1.04428 9.57912 0.963038C9.61297 0.881799 9.6304 0.794662 9.6304 0.706655C9.6304 0.618647 9.61297 0.53151 9.57912 0.45027C9.54528 0.369031 9.49568 0.295296 9.4332 0.233321C9.30829 0.109154 9.13932 0.0394592 8.9632 0.0394592C8.78707 0.0394592 8.61811 0.109154 8.4932 0.233321Z' fill='white'/%3E%3C/svg%3E");
  }

  .kt-checkbox-sm:indeterminate {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10h8'/%3E%3C/svg%3E");
  }

  .kt-checkbox-lg {
    width: calc(var(--spacing) * 5.5);
    height: calc(var(--spacing) * 5.5);
  }

  .kt-checkbox-lg:checked,
  .kt-checkbox-lg[aria-checked='true'] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10' fill='none'%3E%3Cpath d='M11.8035 1.19582L5.68018 7.31915L2.12351 3.76249C1.95176 3.59176 1.71943 3.49593 1.47726 3.49593C1.23509 3.49593 1.00276 3.59176 0.831013 3.76249C0.660283 3.93424 0.564453 4.16657 0.564453 4.40874C0.564453 4.65091 0.660283 4.88324 0.831013 5.05499L5.03851 9.26249C5.21026 9.43322 5.44259 9.52905 5.68476 9.52905C5.92693 9.52905 6.15926 9.43322 6.33101 9.26249L13.096 2.49749C13.1819 2.41227 13.2501 2.31089 13.2967 2.19918C13.3432 2.08748 13.3672 1.96766 13.3672 1.84665C13.3672 1.72564 13.3432 1.60583 13.2967 1.49413C13.2501 1.38242 13.1819 1.28104 13.096 1.19582C12.9243 1.02509 12.6919 0.92926 12.4498 0.92926C12.2076 0.92926 11.9753 1.02509 11.8035 1.19582Z' fill='white'/%3E%3C/svg%3E");
  }

  .kt-checkbox-lg:indeterminate {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M6 10h8'/%3E%3C/svg%3E");
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-checkbox) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-checkbox) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-checkbox) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  .kt-datatable-toolbar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: calc(var(--spacing) * 3);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--muted-foreground);
  }

  @media (width >=40rem) {
    .kt-datatable-toolbar {
      flex-direction: row;
    }
  }

  @media (width >=40rem) {
    .kt-datatable-toolbar {
      justify-content: space-between;
    }
  }

  .kt-datatable-pagination {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }

  .kt-datatable-pagination .kt-datatable-pagination-button {
    display: inline-flex;
    height: calc(var(--spacing) * 7);
    min-width: calc(var(--spacing) * 7);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: calc(var(--radius) - 2px);
    background-color: transparent;
    padding-inline: calc(var(--spacing) * 0.5);
    color: var(--muted-foreground);
  }

  .active:is(.kt-datatable-pagination .kt-datatable-pagination-button),
  :is(.kt-datatable-pagination .kt-datatable-pagination-button):hover:not(:disabled) {
    background-color: var(--accent);
    color: var(--accent-foreground);
  }

  .kt-datatable-pagination-prev:is(.kt-datatable-pagination .kt-datatable-pagination-button) {
    color: var(--foreground);
  }

  .kt-datatable-pagination-next:is(.kt-datatable-pagination .kt-datatable-pagination-button) {
    color: var(--foreground);
  }

  :is(.kt-datatable-pagination .kt-datatable-pagination-button):disabled {
    cursor: default;
    color: var(--muted-foreground);
  }

  .kt-datatable-length {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    white-space: nowrap;
  }

  .kt-datatable-info {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 4);
  }

  .kt-datatable-loading {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--card);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--card-foreground);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-datatable-loading {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-datatable-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
  }

  [data-kt-datatable] {
    position: relative;
  }

  [data-kt-datatable].loading table {
    opacity: 0.6;
  }
}

@layer utilities {
  [data-kt-datepicker-input-wrapper] {
    position: relative;
    display: inline-flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    height: calc(var(--spacing) * 8.5);
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-input-wrapper] {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  [data-kt-datepicker-input-wrapper] {
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  [data-kt-datepicker-input-wrapper]:focus-within {
    border-color: var(--ring);
  }

  [data-kt-datepicker-input-wrapper]:focus-within {
    --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);
  }

  [data-kt-datepicker-input-wrapper]:focus-within {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-input-wrapper]:focus-within {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  [data-kt-datepicker-input-wrapper]:focus-within {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (hover: hover) {
    [data-kt-datepicker-input-wrapper]:hover {
      border-color: var(--ring);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-kt-datepicker-input-wrapper]:hover {
        border-color: color-mix(in oklab, var(--ring) 50%, transparent);
      }
    }
  }

  [data-kt-datepicker-input-wrapper]:disabled {
    cursor: not-allowed;
  }

  [data-kt-datepicker-input-wrapper]:disabled {
    opacity: 60%;
  }

  [data-kt-datepicker-input-wrapper][aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-input-wrapper][aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  [data-kt-datepicker-input-wrapper][aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-input-wrapper][aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  [data-kt-datepicker-input-wrapper] {
    padding-left: 10px;
    padding-right: 10px;
  }

  [data-kt-datepicker-segmented-input] {
    display: inline-flex;
    min-width: calc(var(--spacing) * 0);
    flex: 1;
    align-items: center;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  [data-kt-datepicker-segmented-input]:focus-within {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  [data-kt-datepicker-segmented-input]:focus-within {
    --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);
  }

  @media (hover: hover) {
    [data-kt-datepicker-segmented-input]:hover {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }

  [data-kt-datepicker-segmented-input] {
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
    font-size: 0;
    letter-spacing: 0;
    word-spacing: 0;
  }

  [data-kt-datepicker-segmented-range-input] {
    gap: calc(var(--spacing) * 0.5);
  }

  [data-segment] {
    display: inline-flex;
    min-width: 2rem;
    align-items: center;
    justify-content: center;
    padding-inline: calc(var(--spacing) * 0);
    padding-block: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
    border-radius: calc(var(--radius) - 4px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-outline-style: none;
    outline-style: none;
  }

  [data-segment]:focus {
    background-color: var(--accent);
  }

  [data-segment]:focus {
    color: var(--accent-foreground);
  }

  [data-segment]:focus {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  [data-segment]:focus {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-segment]:focus {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  @media (hover: hover) {
    [data-segment]:hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-segment]:hover {
        background-color: color-mix(in oklab, var(--accent) 50%, transparent);
      }
    }
  }

  [data-segment]:disabled {
    cursor: not-allowed;
  }

  [data-segment]:disabled {
    opacity: 50%;
  }

  [data-segment][aria-invalid="true"] {
    background-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-segment][aria-invalid="true"] {
      background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  [data-segment][aria-invalid="true"] {
    color: var(--destructive);
  }

  [data-segment] {
    font-size: 0.875rem;
    letter-spacing: normal;
    word-spacing: normal;
  }

  [data-segment][contenteditable="true"] {
    cursor: text;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1.5;
    white-space: nowrap !important;
    overflow: hidden;
    -webkit-user-modify: read-write-plaintext-only;
    user-modify: read-write-plaintext-only;
    outline: none;
    outline-offset: 0;
    text-indent: 0;
    align-items: center;
    justify-content: flex-start;
    -webkit-tap-highlight-color: transparent;
    word-spacing: 0;
    letter-spacing: normal;
    min-height: 1em;
    -webkit-margin-before: 0;
    -webkit-margin-after: 0;
    -webkit-margin-start: 0;
    -webkit-margin-end: 0;
    min-width: fit-content;
    width: fit-content;
  }

  [data-segment][contenteditable="true"] * {
    margin: 0;
    padding: 0;
    display: inline;
  }

  [data-segment][contenteditable="true"]:empty::before {
    content: "\200B";
    display: inline-block;
  }

  [data-segment][contenteditable="true"]:focus {
    background-color: var(--accent);
    color: var(--accent-foreground);
    --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);
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-segment][contenteditable="true"]:focus {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  [data-segment-separator]+[data-segment="hour"] {
    margin-left: calc(var(--spacing) * 3);
  }

  [data-kt-datepicker-segmented-input]>[data-segment="hour"]:first-child {
    margin-left: calc(var(--spacing) * 0);
  }

  [data-segment-separator]+[data-segment="ampm"] {
    margin-left: calc(var(--spacing) * 3);
  }

  [data-segment-separator] {
    pointer-events: none;
    display: inline-flex;
    align-items: center;
    color: var(--muted-foreground);
    -webkit-user-select: none;
    user-select: none;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    font-size: 0.875rem;
    letter-spacing: normal;
    word-spacing: normal;
    white-space: pre;
    min-width: 0.25rem;
  }

  [data-kt-datepicker-calendar-btn] {
    position: absolute;
    top: calc(var(--spacing) * 0);
    right: calc(var(--spacing) * 0);
    bottom: calc(var(--spacing) * 0);
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: calc(var(--spacing) * 10);
    border-top-right-radius: calc(var(--radius) - 2px);
    border-bottom-right-radius: calc(var(--radius) - 2px);
    color: var(--muted-foreground);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  @media (hover: hover) {
    [data-kt-datepicker-calendar-btn]:hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-kt-datepicker-calendar-btn]:hover {
        background-color: color-mix(in oklab, var(--accent) 50%, transparent);
      }
    }
  }

  @media (hover: hover) {
    [data-kt-datepicker-calendar-btn]:hover {
      color: var(--accent-foreground);
    }
  }

  [data-kt-datepicker-calendar-btn]: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);
  }

  [data-kt-datepicker-calendar-btn]:focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-calendar-btn]:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  [data-kt-datepicker-calendar-btn]:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  [data-kt-datepicker-calendar-btn]:focus-visible {
    --tw-ring-inset: inset;
  }

  [data-kt-datepicker-calendar-btn]:active {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-calendar-btn]:active {
      background-color: color-mix(in oklab, var(--accent) 70%, transparent);
    }
  }

  [data-kt-datepicker-calendar-btn] {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    cursor: pointer;
  }

  [data-kt-datepicker-calendar-btn] svg {
    height: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 4);
  }

  [data-kt-datepicker-calendar-btn][aria-expanded="true"] {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-calendar-btn][aria-expanded="true"] {
      background-color: color-mix(in oklab, var(--accent) 50%, transparent);
    }
  }

  [data-kt-datepicker-calendar-btn][aria-expanded="true"] {
    color: var(--accent-foreground);
  }

  [data-kt-datepicker-placeholder] {
    pointer-events: none;
    color: var(--muted-foreground);
    -webkit-user-select: none;
    user-select: none;
  }

  [data-kt-datepicker-display-wrapper] {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--foreground);
  }

  [data-kt-datepicker-display-element] {
    color: var(--foreground);
  }
}

@layer utilities {
  [data-kt-datepicker-dropdown] {
    position: absolute;
    z-index: 50;
    margin-top: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-dropdown] {
      border-color: color-mix(in oklab, var(--border) 60%, transparent);
    }
  }

  [data-kt-datepicker-dropdown] {
    background-color: var(--popover);
    color: var(--popover-foreground);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    width: 20rem;
    min-width: 20rem;
  }

  [data-kt-datepicker-dropdown].hidden {
    display: none;
  }

  [data-kt-datepicker-dropdown].open {
    display: block;
  }

  [data-kt-datepicker-panel] {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 1.5);
  }

  [data-kt-datepicker-header] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    padding-inline: calc(var(--spacing) * 0.5);
    padding-bottom: calc(var(--spacing) * 1.5);
    border-style: var(--tw-border-style);
    border-width: 0px;
    height: 34px;
  }

  [data-kt-datepicker-month-year] {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
    -webkit-user-select: none;
    user-select: none;
    flex: 1;
    text-align: center;
  }

  [data-kt-datepicker-prev],
  [data-kt-datepicker-next] {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    height: calc(var(--spacing) * 7);
    width: calc(var(--spacing) * 7);
    cursor: pointer;
    border-radius: calc(var(--radius) - 2px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):hover {
        background-color: color-mix(in oklab, var(--accent) 60%, transparent);
      }
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):hover {
      color: var(--foreground);
    }
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):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);
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):focus-visible {
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):disabled {
    cursor: not-allowed;
  }

  :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):disabled {
    opacity: 40%;
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-prev], [data-kt-datepicker-next]):disabled:hover {
      background-color: transparent;
    }
  }

  [data-kt-datepicker-prev] svg,
  [data-kt-datepicker-next] svg {
    height: calc(var(--spacing) * 3.5);
    width: calc(var(--spacing) * 3.5);
  }

  [data-kt-datepicker-calendar-table] {
    width: 100%;
    border-collapse: collapse;
  }

  [data-kt-datepicker-calendar-table] thead {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  [data-kt-datepicker-calendar-table] th {
    padding-inline: calc(var(--spacing) * 0.5);
    padding-block: calc(var(--spacing) * 1);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--muted-foreground);
    text-transform: uppercase;
    width: calc(100% / 7);
  }

  [data-kt-datepicker-calendar-body] {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  [data-kt-datepicker-calendar-row] {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  [data-kt-datepicker-day] {
    padding-inline: calc(var(--spacing) * 1);
    padding-block: calc(var(--spacing) * 0.5);
    text-align: center;
  }

  [data-kt-datepicker-day] button {
    aspect-ratio: 1 / 1;
    width: 100%;
    border-radius: calc(var(--radius) - 2px);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    cursor: pointer;
    color: var(--foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day] button):hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-day] button):hover {
        background-color: color-mix(in oklab, var(--accent) 60%, transparent);
      }
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day] button):hover {
      color: var(--accent-foreground);
    }
  }

  :is([data-kt-datepicker-day] button):focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  :is([data-kt-datepicker-day] button):focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is([data-kt-datepicker-day] button):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  :is([data-kt-datepicker-day] button):focus-visible {
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  :is([data-kt-datepicker-day] button):focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  :is([data-kt-datepicker-day] button):active {
    scale: 0.97;
  }

  :is([data-kt-datepicker-day] button):disabled {
    cursor: not-allowed;
  }

  :is([data-kt-datepicker-day] button):disabled {
    opacity: 40%;
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day] button):disabled:hover {
      background-color: transparent;
    }
  }

  [data-kt-datepicker-day][data-today="true"] button {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][data-today="true"] button {
      background-color: color-mix(in oklab, var(--primary) 8%, transparent);
    }
  }

  [data-kt-datepicker-day][data-today="true"] button {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--primary);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day][data-today="true"] button):hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-day][data-today="true"] button):hover {
        background-color: color-mix(in oklab, var(--primary) 15%, transparent);
      }
    }
  }

  [data-kt-datepicker-day][data-kt-selected="true"] button,
  [data-kt-datepicker-day].active button,
  [data-kt-datepicker-day][aria-selected="true"] button {
    background-color: var(--primary);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--primary-foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day][data-kt-selected="true"] button, [data-kt-datepicker-day].active button, [data-kt-datepicker-day][aria-selected="true"] button):hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-day][data-kt-selected="true"] button, [data-kt-datepicker-day].active button, [data-kt-datepicker-day][aria-selected="true"] button):hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-today="true"] button,
  [data-kt-datepicker-day].active[data-today="true"] button,
  [data-kt-datepicker-day][aria-selected="true"][data-today="true"] button {
    background-color: var(--primary);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--primary-foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day][data-kt-selected="true"][data-today="true"] button, [data-kt-datepicker-day].active[data-today="true"] button, [data-kt-datepicker-day][aria-selected="true"][data-today="true"] button):hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-day][data-kt-selected="true"][data-today="true"] button, [data-kt-datepicker-day].active[data-today="true"] button, [data-kt-datepicker-day][aria-selected="true"][data-today="true"] button):hover {
        background-color: color-mix(in oklab, var(--primary) 90%, transparent);
      }
    }
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-today="true"] button,
  [data-kt-datepicker-day].active[data-today="true"] button,
  [data-kt-datepicker-day][aria-selected="true"][data-today="true"] button {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  [data-kt-datepicker-day][data-kt-hover] button {
    background-color: var(--accent);
    color: var(--accent-foreground);
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover] button {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover] button {
      background-color: color-mix(in oklab, var(--primary) 90%, transparent);
    }
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover] button {
    color: var(--primary-foreground);
  }

  [data-kt-datepicker-day][data-kt-hover-range] button {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][data-kt-hover-range] button {
      background-color: color-mix(in oklab, var(--accent) 40%, transparent);
    }
  }

  [data-kt-datepicker-day][data-kt-hover-range] button {
    color: var(--accent-foreground);
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover-range] button {
    background-color: var(--primary);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover-range] button {
      background-color: color-mix(in oklab, var(--primary) 80%, transparent);
    }
  }

  [data-kt-datepicker-day][data-kt-selected="true"][data-kt-hover-range] button {
    color: var(--primary-foreground);
  }

  [data-kt-datepicker-day][data-kt-hover-range][data-kt-hover] button {
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][data-kt-hover-range][data-kt-hover] button {
      background-color: color-mix(in oklab, var(--accent) 60%, transparent);
    }
  }

  [data-kt-datepicker-day][data-kt-hover-range][data-kt-hover] button {
    color: var(--accent-foreground);
  }

  [data-kt-datepicker-day][data-outside="true"] button {
    cursor: default;
    color: var(--muted-foreground);
    opacity: 50%;
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day][data-outside="true"] button):hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-day][data-outside="true"] button):hover {
        background-color: color-mix(in oklab, var(--accent) 40%, transparent);
      }
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-day][data-outside="true"] button):hover {
      opacity: 70%;
    }
  }

  [data-kt-datepicker-day][tabindex="0"] button {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-day][tabindex="0"] button {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  [data-kt-datepicker-day][tabindex="0"] button {
    --tw-ring-offset-width: 0px;
    --tw-ring-offset-shadow: var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }

  [data-kt-datepicker-footer] {
    margin-top: calc(var(--spacing) * 1.5);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 2);
    padding-top: calc(var(--spacing) * 1.5);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-footer] {
      border-color: color-mix(in oklab, var(--border) 40%, transparent);
    }
  }

  [data-kt-datepicker-today],
  [data-kt-datepicker-clear],
  [data-kt-datepicker-apply] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--spacing) * 7);
    cursor: pointer;
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 3);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):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);
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):focus-visible {
    --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);
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):active {
    scale: 0.97;
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):disabled {
    cursor: not-allowed;
  }

  :is([data-kt-datepicker-today], [data-kt-datepicker-clear], [data-kt-datepicker-apply]):disabled {
    opacity: 50%;
  }

  [data-kt-datepicker-today] {
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    [data-kt-datepicker-today]:hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-kt-datepicker-today]:hover {
        background-color: color-mix(in oklab, var(--accent) 70%, transparent);
      }
    }
  }

  @media (hover: hover) {
    [data-kt-datepicker-today]:hover {
      color: var(--foreground);
    }
  }

  [data-kt-datepicker-clear] {
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    [data-kt-datepicker-clear]:hover {
      background-color: var(--destructive);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-kt-datepicker-clear]:hover {
        background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
      }
    }
  }

  @media (hover: hover) {
    [data-kt-datepicker-clear]:hover {
      color: var(--destructive);
    }
  }

  [data-kt-datepicker-apply] {
    background-color: var(--primary);
    color: var(--primary-foreground);
  }

  @media (hover: hover) {
    [data-kt-datepicker-apply]:hover {
      background-color: var(--primary);
    }

    @supports (color: color-mix(in lab, red, red)) {
      [data-kt-datepicker-apply]:hover {
        background-color: color-mix(in oklab, var(--primary) 95%, transparent);
      }
    }
  }

  [data-kt-datepicker-apply] {
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  }

  [data-kt-datepicker-multimonth-container] {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }

  @media (width >=48rem) {
    [data-kt-datepicker-multimonth-container] {
      flex-direction: row;
    }
  }

  [data-kt-datepicker-time-picker] {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 1.5);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-time-picker] {
      border-color: color-mix(in oklab, var(--border) 40%, transparent);
    }
  }

  [data-kt-datepicker-time-picker] {
    padding: calc(var(--spacing) * 2);
  }

  [data-kt-datepicker-time-display] {
    text-align: center;
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--foreground);
  }

  [data-kt-datepicker-time-controls] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
  }

  [data-kt-datepicker-time-unit] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }

  [data-kt-datepicker-time-up],
  [data-kt-datepicker-time-down] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 8);
    border-radius: calc(var(--radius) - 2px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):hover {
      color: var(--foreground);
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):hover {
      color: var(--accent-foreground);
    }
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):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);
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):disabled {
    cursor: not-allowed;
  }

  :is([data-kt-datepicker-time-up], [data-kt-datepicker-time-down]):disabled {
    opacity: 50%;
  }

  [data-kt-datepicker-time-value] {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--foreground);
  }

  [data-kt-datepicker-time-separator] {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--muted-foreground);
  }

  [data-kt-datepicker-ampm-control] {
    margin-left: calc(var(--spacing) * 2);
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 1);
  }

  [data-kt-datepicker-ampm-button] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 10);
    border-radius: calc(var(--radius) - 2px);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    [data-kt-datepicker-ampm-button]:hover {
      color: var(--foreground);
    }
  }

  @media (hover: hover) {
    [data-kt-datepicker-ampm-button]:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    [data-kt-datepicker-ampm-button]:hover {
      color: var(--accent-foreground);
    }
  }

  [data-kt-datepicker-ampm-button]: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);
  }

  [data-kt-datepicker-ampm-button]:focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [data-kt-datepicker-ampm-button]:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
    }
  }

  [data-kt-datepicker-ampm-button]:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  [data-kt-datepicker-ampm-button]:active {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  [data-kt-datepicker-ampm-button]:disabled {
    cursor: not-allowed;
  }

  [data-kt-datepicker-ampm-button]:disabled {
    opacity: 50%;
  }

  [data-kt-datepicker-multidate-tag] {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    background-color: var(--accent);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--accent-foreground);
  }

  [data-kt-datepicker-multidate-tag] button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 4);
    border-radius: calc(var(--radius) - 4px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-multidate-tag] button):hover {
      color: var(--destructive);
    }
  }

  @media (hover: hover) {
    :is([data-kt-datepicker-multidate-tag] button):hover {
      background-color: var(--destructive);
    }

    @supports (color: color-mix(in lab, red, red)) {
      :is([data-kt-datepicker-multidate-tag] button):hover {
        background-color: color-mix(in oklab, var(--destructive) 10%, transparent);
      }
    }
  }

  :is([data-kt-datepicker-multidate-tag] button):focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  :is([data-kt-datepicker-multidate-tag] button):focus-visible {
    --tw-ring-color: var(--ring);
  }

  :is([data-kt-datepicker-multidate-tag] button):focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  [data-kt-datepicker-empty] {
    padding-block: calc(var(--spacing) * 8);
    text-align: center;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--muted-foreground);
  }

  [data-kt-datepicker-live] {
    position: absolute;
    margin: -1px;
    height: 1px;
    width: 1px;
    overflow: hidden;
    border-style: var(--tw-border-style);
    border-width: 0px;
    padding: calc(var(--spacing) * 0);
    white-space: nowrap;
    clip: rect(0, 0, 0, 0);
  }
}

@layer utilities {
  [aria-invalid="true"]:is(.dark [data-kt-datepicker-input-wrapper]) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark [data-kt-datepicker-input-wrapper]) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark [data-kt-datepicker-input-wrapper]) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }

  .dark [data-kt-datepicker-dropdown] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
  }
}

@layer components {
  .kt-drawer {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    z-index: 10;
    flex-direction: column;
    background-color: var(--popover);
    color: var(--popover-foreground);
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: 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));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-drawer-backdrop {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    background-color: color-mix(in srgb, #000 30%, transparent);
  }

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

  .kt-drawer-backdrop {
    backdrop-filter: blur(4px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }

  .kt-drawer-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding: calc(var(--spacing) * 5);
  }

  .kt-drawer-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--mono);
  }

  .kt-drawer-close {
    margin-inline-end: calc(var(--spacing) * -2.5);
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
    flex-shrink: 0;
    cursor: pointer;
  }

  .kt-drawer-close i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    opacity: 70%;
  }

  .kt-drawer-close>svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    opacity: 70%;
  }

  :is(.kt-drawer-close:focus, .kt-drawer-close:hover) i {
    opacity: 100%;
  }

  :is(.kt-drawer-close:focus, .kt-drawer-close:hover)>svg {
    opacity: 100%;
  }

  .kt-drawer-content {
    flex-grow: 1;
    overflow-y: auto;
    padding: calc(var(--spacing) * 5);
  }

  .kt-drawer-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
    padding: calc(var(--spacing) * 5);
  }

  .kt-drawer-start {
    inset-inline-end: auto;
    max-width: 90%;
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-start.open[data-kt-drawer-initialized] {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .open[data-kt-drawer-initialized] .kt-drawer-start {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-end {
    inset-inline-start: auto;
    max-width: 90%;
    --tw-translate-x: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-end.open[data-kt-drawer-initialized] {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .open[data-kt-drawer-initialized] .kt-drawer-end {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-top {
    inset-inline-start: calc(var(--spacing) * 0);
    inset-inline-end: calc(var(--spacing) * 0);
    top: auto;
    bottom: calc(var(--spacing) * 0);
    max-height: 90%;
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-top.open[data-kt-drawer-initialized] {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .open[data-kt-drawer-initialized] .kt-drawer-top {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-bottom {
    inset-inline-start: calc(var(--spacing) * 0);
    inset-inline-end: calc(var(--spacing) * 0);
    top: calc(var(--spacing) * 0);
    bottom: auto;
    max-height: 90%;
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-drawer-bottom.open[data-kt-drawer-initialized] {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .open[data-kt-drawer-initialized] .kt-drawer-bottom {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

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

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

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

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

@layer components {
  .kt-dropdown {
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    color: var(--popover-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-dropdown {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-dropdown:not(.open) {
    display: none;
  }

  .kt-dropdown-header {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-dropdown-body {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
  }
}

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

  .kt-dropdown-menu {
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    padding: calc(var(--spacing) * 2);
    color: var(--popover-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-dropdown-menu {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-dropdown-menu:not(.open) {
    display: none;
  }

  .kt-dropdown-menu-sub {
    width: 100%;
  }

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

  .kt-dropdown-menu-toggle {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    column-gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    text-align: start;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-dropdown-menu-toggle:disabled {
    pointer-events: none;
  }

  .kt-dropdown-menu-toggle:disabled {
    opacity: 50%;
  }

  .kt-dropdown-menu-toggle {
    color: var(--foreground);
  }

  @media (hover: hover) {
    .kt-dropdown-menu-toggle:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-dropdown-menu-toggle:hover {
      color: var(--accent-foreground);
    }
  }

  .open[data-kt-dropdown-initialized]>.kt-dropdown-menu-toggle[data-kt-dropdown-toggle] {
    background-color: var(--accent);
  }

  .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-menu-toggle {
    background-color: var(--accent);
  }

  .open[data-kt-dropdown-initialized]>.kt-dropdown-menu-toggle[data-kt-dropdown-toggle] {
    color: var(--accent-foreground);
  }

  .open[data-kt-dropdown-initialized]>[data-kt-dropdown-toggle] .kt-dropdown-menu-toggle {
    color: var(--accent-foreground);
  }

  .kt-dropdown-menu-toggle .kt-dropdown-menu-indicator {
    margin-inline-start: auto;
    display: inline-flex;
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
    align-items: center;
    color: var(--muted-foreground);
  }

  .kt-dropdown-menu-toggle i {
    flex-shrink: 0;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--muted-foreground);
  }

  .kt-dropdown-menu-toggle svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .kt-dropdown-menu-link {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    column-gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    text-align: start;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-dropdown-menu-link:disabled {
    pointer-events: none;
  }

  .kt-dropdown-menu-link:disabled {
    opacity: 50%;
  }

  .kt-dropdown-menu-link {
    color: var(--foreground);
  }

  @media (hover: hover) {
    .kt-dropdown-menu-link:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-dropdown-menu-link:hover {
      color: var(--accent-foreground);
    }
  }

  .kt-dropdown-menu-link [data-kt-dropdown-initialized] .selected {
    background-color: var(--accent);
  }

  [data-kt-dropdown-initialized] .selected .kt-dropdown-menu-link {
    background-color: var(--accent);
  }

  [data-kt-dropdown-initialized] .kt-dropdown-menu-link.selected {
    background-color: var(--accent);
  }

  .kt-dropdown-menu-link [data-kt-dropdown-initialized] .selected {
    color: var(--accent-foreground);
  }

  [data-kt-dropdown-initialized] .selected .kt-dropdown-menu-link {
    color: var(--accent-foreground);
  }

  [data-kt-dropdown-initialized] .kt-dropdown-menu-link.selected {
    color: var(--accent-foreground);
  }

  .kt-dropdown-menu-link i {
    flex-shrink: 0;
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--muted-foreground);
  }

  .kt-dropdown-menu-link svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .kt-dropdown-menu-separator {
    margin-inline: calc(var(--spacing) * -2);
    margin-block: calc(var(--spacing) * 2.5);
    height: 1px;
    background-color: var(--border);
  }

  .kt-dropdown-menu-separator:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    rotate: 180deg;
  }

  .kt-dropdown-menu-separator:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
    transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
  }
}

@layer components {
  .kt-image-input {
    position: relative;
    display: inline-flex;
    width: calc(var(--spacing) * 20);
    height: calc(var(--spacing) * 20);
    cursor: pointer;
    align-items: center;
    justify-content: center;
  }

  .kt-image-input input[type='file'] {
    position: absolute;
    width: calc(var(--spacing) * 0);
    height: calc(var(--spacing) * 0);
    appearance: none;
    opacity: 0%;
  }

  .kt-image-input-remove {
    position: absolute;
    inset-inline-end: calc(var(--spacing) * 0.25);
    top: calc(var(--spacing) * 0.25);
    z-index: 1;
    display: flex;
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--background);
    --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);
  }

  .kt-image-input-remove i {
    font-size: 11px;
    color: var(--muted-foreground);
  }

  .kt-image-input-remove svg {
    width: calc(var(--spacing) * 3.25);
    height: calc(var(--spacing) * 3.25);
    color: var(--muted-foreground);
  }

  .kt-image-input-remove:hover i {
    color: var(--foreground);
  }

  .kt-image-input-remove:hover svg {
    color: var(--foreground);
  }

  .kt-image-input-placeholder {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-size: cover;
    background-repeat: no-repeat;
  }

  .empty[data-kt-image-input-initialized] .kt-image-input-placeholder {
    border-color: var(--border);
  }

  .kt-image-input-preview {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

@layer components {
  .kt-input {
    display: block;
    width: 100%;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    color: var(--foreground);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-input {
    outline-style: var(--tw-outline-style);
    outline-width: 0px;
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-input::placeholder {
    color: var(--muted-foreground);
  }

  .kt-input:focus-visible {
    border-color: var(--ring);
  }

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

  .kt-input:focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  .kt-input:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-input:disabled {
    cursor: not-allowed;
  }

  .kt-input:disabled {
    opacity: 60%;
  }

  .kt-input[readonly] {
    cursor: not-allowed;
  }

  .kt-input[readonly] {
    background-color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input[readonly] {
      background-color: color-mix(in oklab, var(--muted) 80%, transparent);
    }
  }

  .kt-input[readonly] {
    color: var(--secondary-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input[readonly] {
      color: color-mix(in oklab, var(--secondary-foreground) 80%, transparent);
    }
  }

  .kt-input::file-selector-button {
    height: 100%;
  }

  .kt-input[type=file] {
    padding-block: calc(var(--spacing) * 0);
  }

  .kt-input::file-selector-button {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  .kt-input::file-selector-button {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }

  .kt-input::file-selector-button {
    --tw-border-style: solid;
    border-style: solid;
  }

  .kt-input::file-selector-button {
    border-color: var(--input);
  }

  .kt-input::file-selector-button {
    background-color: transparent;
  }

  .kt-input::file-selector-button {
    padding: calc(var(--spacing) * 0);
  }

  .kt-input::file-selector-button {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-input::file-selector-button {
    color: var(--foreground);
  }

  .kt-input::file-selector-button {
    font-style: normal;
  }

  .kt-input[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-input[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-input {
    height: calc(var(--spacing) * 8.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 3);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
  }

  .kt-input::file-selector-button {
    margin-inline-end: calc(var(--spacing) * 3);
  }

  .kt-input::file-selector-button {
    padding-inline-end: calc(var(--spacing) * 3);
  }

  .kt-input-lg {
    height: calc(var(--spacing) * 10);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-input-lg::file-selector-button {
    margin-inline-end: calc(var(--spacing) * 4);
  }

  .kt-input-lg::file-selector-button {
    padding-inline-end: calc(var(--spacing) * 4);
  }

  .kt-input-sm {
    height: calc(var(--spacing) * 7);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-input-sm::file-selector-button {
    margin-inline-end: calc(var(--spacing) * 2.5);
  }

  .kt-input-sm::file-selector-button {
    padding-inline-end: calc(var(--spacing) * 2.5);
  }
}

@layer components {
  .kt-input:not(input) {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
  }

  .kt-input:not(input):has(input:focus-visible) {
    border-color: var(--ring);
    --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);
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input:not(input):has(input:focus-visible) {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  .kt-input:not(input):has(input:focus-visible) {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-input:not(input) input {
    display: flex;
    height: auto;
    width: 100%;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    color: var(--foreground);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: color;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-outline-style: none;
    outline-style: none;
  }

  :is(.kt-input:not(input) input)::placeholder {
    color: var(--muted-foreground);
  }

  :is(.kt-input:not(input) input):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);
  }

  :is(.kt-input:not(input) input):disabled {
    cursor: not-allowed;
  }

  :is(.kt-input:not(input) input):disabled {
    opacity: 50%;
  }

  .kt-input:not(input) input {
    font-size: inherit;
    list-style: inherit;
  }

  .kt-input:not(input) i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--muted-foreground);
  }

  .kt-input:not(input) svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-input.kt-input-sm:not(input) {
    gap: calc(var(--spacing) * 1.25);
  }

  .kt-input.kt-input-sm:not(input) i {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-input.kt-input-sm:not(input) svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    color: var(--muted-foreground);
  }

  .kt-input.kt-input-lg:not(input) {
    gap: calc(var(--spacing) * 1.5);
  }

  .kt-input.kt-input-lg:not(input) i {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .kt-input.kt-input-lg:not(input) svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }
}

@layer components {
  .kt-input-addon {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--muted);
    color: var(--secondary-foreground);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-input-addon {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-input-addon {
    height: calc(var(--spacing) * 8.5);
    min-width: calc(var(--spacing) * 8.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 3);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
  }

  .kt-input-addon i {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .kt-input-addon svg {
    width: calc(var(--spacing) * 4.5);
    height: calc(var(--spacing) * 4.5);
  }

  .kt-input-addon.kt-input-addon-sm {
    height: calc(var(--spacing) * 7);
    min-width: calc(var(--spacing) * 7);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-input-addon.kt-input-addon-sm i {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-input-addon.kt-input-addon-sm svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-input-addon.kt-input-addon-lg {
    height: calc(var(--spacing) * 10);
    min-width: calc(var(--spacing) * 10);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-input-addon.kt-input-addon-lg i {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .kt-input-addon.kt-input-addon-lg svg {
    width: calc(var(--spacing) * 4.5);
    height: calc(var(--spacing) * 4.5);
  }

  .kt-input-addon.kt-input-addon-icon {
    padding-inline: calc(var(--spacing) * 0);
  }
}

@layer components {
  .kt-input-ghost {
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: var(--background);
    padding: calc(var(--spacing) * 0);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }

  .kt-input-ghost:focus-visible {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  .kt-input-ghost: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);
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-input) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-input) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-input) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  .kt-input-group {
    position: relative;
    display: flex;
    align-items: stretch;
  }

  .kt-input-group .kt-input {
    z-index: 1;
    flex-grow: 1;
  }

  .kt-input-group .kt-input-addon:has(+ .kt-input) {
    border-start-end-radius: 0 !important;
    border-end-end-radius: 0 !important;
    border-inline-end-style: var(--tw-border-style) !important;
    border-inline-end-width: 0px !important;
  }

  .kt-input-group .kt-input+.kt-input-addon {
    border-start-start-radius: 0 !important;
    border-end-start-radius: 0 !important;
    border-inline-start-style: var(--tw-border-style) !important;
    border-inline-start-width: 0px !important;
  }

  .kt-input-group .kt-input-addon:has(+ .kt-btn) {
    border-start-end-radius: 0 !important;
    border-end-end-radius: 0 !important;
  }

  .kt-input-group .kt-input+.kt-btn {
    border-start-start-radius: 0 !important;
    border-end-start-radius: 0 !important;
  }

  .kt-input-group .kt-input+.kt-btn.kt-btn-outline {
    border-inline-start-style: var(--tw-border-style) !important;
    border-inline-start-width: 0px !important;
  }

  .kt-input-group .kt-btn+.kt-input,
  .kt-input-group .kt-input-addon+.kt-input {
    border-start-start-radius: 0 !important;
    border-end-start-radius: 0 !important;
  }

  .kt-input-group .kt-input:has(+ .kt-btn),
  .kt-input-group .kt-input:has(+ .kt-input-addon) {
    border-start-end-radius: 0 !important;
    border-end-end-radius: 0 !important;
  }
}

@layer components {
  .kt-modal {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    overflow: auto;
    padding: calc(var(--spacing) * 4);
  }

  .kt-modal:not(.open) {
    display: none;
  }

  .kt-modal-backdrop {
    position: fixed;
    inset: calc(var(--spacing) * 0);
    background-color: color-mix(in srgb, #000 30%, transparent);
  }

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

  .kt-modal-backdrop {
    backdrop-filter: blur(4px);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }

  .kt-modal-close {
    margin-inline-end: calc(var(--spacing) * -2.5);
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
    flex-shrink: 0;
    cursor: pointer;
  }

  .kt-modal-close i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    opacity: 70%;
  }

  .kt-modal-close>svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    opacity: 70%;
  }

  :is(.kt-modal-close:focus, .kt-modal-close:hover) i {
    opacity: 100%;
  }

  :is(.kt-modal-close:focus, .kt-modal-close:hover)>svg {
    opacity: 100%;
  }

  .kt-modal-dialog {
    position: fixed;
    inset-inline-start: calc(1/2 * 100%);
    top: calc(1/2 * 100%);
    display: none;
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    overflow: auto;
    padding: calc(var(--spacing) * 4);
  }

  .kt-modal-content {
    position: relative;
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    color: var(--popover-foreground);
    --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);
  }

  .kt-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
  }

  .kt-modal-title {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--mono);
  }

  .kt-modal-body {
    overflow-y: auto;
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
  }

  .kt-modal-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 2);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 4);
  }

  .kt-modal-center:not(.kt-modal-fit) .kt-modal-content {
    top: calc(1/2 * 100%);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-modal-fit {
    overflow: visible;
    padding: calc(var(--spacing) * 0);
  }

  .kt-modal-fit.kt-modal-center {
    inset-inline-start: calc(1/2 * 100%);
    top: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}

@layer components {
  .kt-radio {
    cursor: pointer;
    appearance: none;
    background-position: center;
    background-repeat: no-repeat;
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    --tw-ring-offset-color: var(--background);
  }

  .kt-radio:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

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

  .kt-radio:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-radio:focus-visible {
    --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);
  }

  .kt-radio:disabled {
    cursor: not-allowed;
  }

  .kt-radio:disabled {
    opacity: 50%;
  }

  .kt-radio[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-radio[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-radio[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-radio[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-radio[aria-invalid="true"]:is(.dark *) {
    border-color: var(--destructive);
  }

  .kt-radio[aria-invalid="true"]:is(.dark *) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-radio[aria-invalid="true"]:is(.dark *) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }

  .kt-radio:checked {
    border-color: var(--primary);
  }

  .kt-radio:checked {
    background-color: var(--primary);
  }

  .kt-radio:checked {
    color: var(--primary-foreground);
  }

  .kt-radio:indeterminate {
    border-color: var(--primary);
  }

  .kt-radio:indeterminate {
    background-color: var(--primary);
  }

  .kt-radio:indeterminate {
    color: var(--primary-foreground);
  }

  .kt-radio:checked,
  .kt-radio[aria-checked='true'] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22' fill='none'%3E%3Ccircle cx='10.9995' cy='11' r='5.86667' fill='white'/%3E%3C/svg%3E");
  }

  .kt-radio {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }

  .kt-radio-sm {
    width: calc(var(--spacing) * 4.5);
    height: calc(var(--spacing) * 4.5);
  }

  .kt-radio-lg {
    width: calc(var(--spacing) * 5.5);
    height: calc(var(--spacing) * 5.5);
  }

  .kt-radio-mono:checked {
    border-color: var(--mono);
  }

  .kt-radio-mono:checked {
    background-color: var(--mono);
  }

  .kt-radio-mono:checked {
    color: var(--mono-foreground);
  }

  .kt-radio-mono:indeterminate {
    border-color: var(--mono);
  }

  .kt-radio-mono:indeterminate {
    background-color: var(--mono);
  }

  .kt-radio-mono:indeterminate {
    color: var(--mono-foreground);
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-radio) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-radio) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-radio) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  :root {
    --kt-scrollable-scrollbar-size: 5px;
    --kt-scrollable-thumb-color: var(--color-accent);
  }

  .kt-scrollable::-webkit-scrollbar {
    width: var(--kt-scrollable-scrollbar-size);
    height: var(--kt-scrollable-scrollbar-size);
  }

  .kt-scrollable::-webkit-scrollbar-track {
    background: transparent;
  }

  .kt-scrollable::-webkit-scrollbar-thumb {
    background: var(--kt-scrollable-thumb-color);
    border-radius: var(--kt-scrollable-scrollbar-size);
  }

  @-moz-document url-prefix() {
    .kt-scrollable {
      scrollbar-width: thin;
      scrollbar-color: var(--kt-scrollable-thumb-color) transparent;
    }
  }
}

@layer components {
  .kt-select {
    display: flex;
    width: 100%;
    cursor: pointer;
    appearance: none;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    padding-block: calc(var(--spacing) * 0);
    color: var(--foreground);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-select {
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-select::placeholder {
    color: var(--muted-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select::placeholder {
      color: color-mix(in oklab, var(--muted-foreground) 80%, transparent);
    }
  }

  .kt-select:focus-visible {
    border-color: var(--ring);
  }

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

  .kt-select:focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  .kt-select:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-select:disabled {
    cursor: not-allowed;
  }

  .kt-select:disabled {
    opacity: 60%;
  }

  .kt-select[readonly] {
    opacity: 70%;
  }

  .kt-select[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-select[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-select {
    background-repeat: no-repeat;
    background-size: 14px 11px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%239f9fa9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
  }

  .dark .kt-select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%239f9fa9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
  }

  .kt-select[multiple],
  .kt-select[size]:not([size='1']) {
    padding-inline-end: var(--btn-default-px);
    background-image: none;
  }

  .kt-select:-moz-focusring {
    color: transparent;
    text-shadow: none;
  }

  .kt-select.active {
    border-color: var(--ring);
    --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);
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select.active {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  .kt-select.active {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-select.disabled {
    cursor: not-allowed;
    opacity: 60%;
  }

  .kt-select-label {
    display: flex;
    align-items: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .kt-select-arrow {
    margin-inline-start: auto;
  }

  .kt-select-arrow svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-select-search {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 1);
  }

  .kt-select-search .kt-input {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-select-search-empty {
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--muted-foreground);
  }

  .kt-select-loading {
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--muted-foreground);
  }

  .kt-select-dropdown {
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    color: var(--popover-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select-dropdown {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-select-select-all {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
  }

  .kt-select-select-all-button {
    width: 100%;
    cursor: pointer;
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 1.5);
    text-align: start;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  @media (hover: hover) {
    .kt-select-select-all-button:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-select-select-all-button:hover {
      color: var(--accent-foreground);
    }
  }

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

  .kt-select-options {
    padding: calc(var(--spacing) * 1);
  }

  .kt-select-wrapper {
    width: 100%;
  }

  .kt-select-wrapper.disabled {
    pointer-events: none;
    opacity: 60%;
  }

  .kt-select-option {
    display: flex;
    flex-grow: 1;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1.75);
    text-align: start;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  @media (hover: hover) {
    .kt-select-option:hover {
      background-color: var(--accent);
    }
  }

  @media (hover: hover) {
    .kt-select-option:hover {
      color: var(--accent-foreground);
    }
  }

  .kt-select-option[aria-disabled='true'],
  .kt-select-option.disabled {
    pointer-events: none;
    opacity: 60%;
  }

  .kt-select-option.focused,
  .kt-select-option.hover,
  .kt-select-option.highlighted {
    background-color: var(--accent);
    color: var(--accent-foreground);
  }

  .kt-select-option-text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .kt-select-group {
    padding-block: calc(var(--spacing) * 1);
  }

  .kt-select-group-header {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--muted-foreground);
    text-transform: uppercase;
  }

  .kt-select-placeholder {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: var(--muted-foreground);
  }

  .kt-select-display:not([data-multiple='true']) {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }

  .kt-select-tag {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--accent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select-tag {
      background-color: color-mix(in oklab, var(--accent) 10%, transparent);
    }
  }

  .kt-select-tag {
    color: var(--accent-foreground);
    max-width: 200px;
    flex-shrink: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    --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);
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }

  .kt-select-tag-remove {
    display: flex;
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    color: var(--muted-foreground);
  }

  @media (hover: hover) {
    .kt-select-tag-remove:hover {
      background-color: var(--accent);
    }

    @supports (color: color-mix(in lab, red, red)) {
      .kt-select-tag-remove:hover {
        background-color: color-mix(in oklab, var(--accent) 20%, transparent);
      }
    }
  }

  @media (hover: hover) {
    .kt-select-tag-remove:hover {
      color: var(--accent-foreground);
    }
  }

  .kt-select-tag-remove {
    cursor: pointer;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    flex-shrink: 0;
    opacity: 100%;
  }

  @media (hover: hover) {
    .kt-select-tag-remove:hover {
      --tw-scale-x: 110%;
      --tw-scale-y: 110%;
      --tw-scale-z: 110%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
    }
  }

  .kt-select-tag-remove svg {
    height: calc(var(--spacing) * 3.5);
    width: calc(var(--spacing) * 3.5);
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }

  .kt-select-tag-remove:hover svg {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }

  .kt-select-display[data-multiple='true'] {
    display: flex;
    min-height: 3rem;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    padding: calc(var(--spacing) * 3);
    width: 100%;
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
  }

  .kt-select-display[data-multiple='true']:focus-within {
    border-color: var(--ring);
  }

  .kt-select-display[data-multiple='true']: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);
  }

  .kt-select-display[data-multiple='true']:focus-within {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-select-display[data-multiple='true']:focus-within {
      --tw-ring-color: color-mix(in oklab, var(--ring) 20%, transparent);
    }
  }

  .kt-select-display[data-multiple='true'] {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
}

@layer components {
  .kt-select {
    height: calc(var(--spacing) * 8.5);
    gap: calc(var(--spacing) * 1);
    border-radius: calc(var(--radius) - 2px);
    padding-inline-start: calc(var(--spacing) * 3);
    padding-inline-end: calc(var(--spacing) * 6);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
    background-position: right 0.5rem center;
  }

  .kt-select[data-multiple='true'] {
    height: auto;
    min-height: calc(var(--spacing) * 8.5);
    flex-wrap: wrap;
    padding-block: calc(var(--spacing) * 1.5);
    background-position: right 0.5rem top 0.675rem;
  }

  .kt-select-sm {
    height: calc(var(--spacing) * 7);
    gap: calc(var(--spacing) * 1);
    border-radius: calc(var(--radius) - 2px);
    padding-inline-start: calc(var(--spacing) * 2.5);
    padding-inline-end: calc(var(--spacing) * 5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    background-position: right 0.5rem center;
  }

  .kt-select-sm[data-multiple='true'] {
    height: auto;
    min-height: calc(var(--spacing) * 7);
    background-position: right 0.5rem top 0.575rem;
  }

  .kt-select-lg {
    height: calc(var(--spacing) * 10);
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-block: calc(var(--spacing) * 1);
    padding-inline-start: calc(var(--spacing) * 4);
    padding-inline-end: calc(var(--spacing) * 8);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    background-position: right 0.6rem center;
  }

  .kt-select-lg[data-multiple='true'] {
    height: auto;
    min-height: calc(var(--spacing) * 10);
    padding-block: calc(var(--spacing) * 2);
    background-position: right 0.6rem top 0.85rem;
  }
}

@layer components {
  [dir='rtl'] .kt-select {
    background-position: left 0.5rem center;
  }

  [data-multiple='true']:is([dir='rtl'] .kt-select) {
    background-position: left 0.5rem top 0.675rem;
  }

  [dir='rtl'] .kt-select-sm {
    background-position: left 0.5rem center;
  }

  [data-multiple='true']:is([dir='rtl'] .kt-select-sm) {
    background-position: left 0.5rem top 0.575rem;
  }

  [dir='rtl'] .kt-select-lg {
    background-position: left 0.75rem center;
  }

  [data-multiple='true']:is([dir='rtl'] .kt-select-lg) {
    background-position: left 0.75rem top 0.85rem;
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-input) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-input) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-input) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  .kt-switch {
    position: relative;
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    background-color: var(--input);
  }

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

  .kt-switch:focus-visible {
    --tw-ring-color: var(--ring);
  }

  .kt-switch:focus-visible {
    --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);
  }

  .kt-switch:focus-visible {
    --tw-ring-offset-color: var(--background);
  }

  .kt-switch:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  @media (forced-colors: active) {
    .kt-switch:focus-visible {
      outline: 2px solid transparent;
      outline-offset: 2px;
    }
  }

  .kt-switch:disabled {
    cursor: not-allowed;
  }

  .kt-switch:disabled {
    opacity: 50%;
  }

  .kt-switch[aria-invalid="true"] {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .kt-switch[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-switch[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-switch[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-switch[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-switch:before {
    pointer-events: none;
    position: absolute;
    inset-inline-start: calc(var(--spacing) * 0);
    top: calc(1/2 * 100%);
    display: block;
    --tw-translate-x: calc(var(--spacing) * 1);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-white);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    --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);
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-content: "";
    content: var(--tw-content);
  }

  .kt-switch:checked,
  .kt-switch[aria-checked='true'] {
    background-color: var(--primary);
  }

  .kt-switch {
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 7.5);
    border-radius: calc(infinity * 1px);
  }

  .kt-switch:before {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }

  :is(.kt-switch:checked, .kt-switch[aria-checked='true']):before {
    --tw-translate-x: calc(var(--spacing) * 3.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-switch-sm {
    height: calc(var(--spacing) * 4.5);
    width: calc(var(--spacing) * 6.5);
    border-radius: calc(infinity * 1px);
  }

  .kt-switch-sm:before {
    width: calc(var(--spacing) * 2.5);
    height: calc(var(--spacing) * 2.5);
  }

  :is(.kt-switch-sm:checked, .kt-switch-sm[aria-checked='true']):before {
    --tw-translate-x: calc(var(--spacing) * 3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-switch-lg {
    height: calc(var(--spacing) * 5.5);
    width: calc(var(--spacing) * 8.5);
    border-radius: calc(infinity * 1px);
  }

  .kt-switch-lg:before {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  :is(.kt-switch-lg:checked, .kt-switch-lg[aria-checked='true']):before {
    --tw-translate-x: calc(var(--spacing) * 4);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}

@layer components {
  :is([dir='rtl'] .kt-switch):before {
    --tw-translate-x: calc(var(--spacing) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  :is(:is([dir='rtl'] .kt-switch):checked, [aria-checked='true']:is([dir='rtl'] .kt-switch)):before {
    --tw-translate-x: calc(var(--spacing) * -3.5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  :is(.kt-switch-sm:is([dir='rtl'] .kt-switch):checked, .kt-switch-sm[aria-checked='true']:is([dir='rtl'] .kt-switch)):before {
    --tw-translate-x: calc(var(--spacing) * -3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  :is(.kt-switch-lg:is([dir='rtl'] .kt-switch):checked, .kt-switch-lg[aria-checked='true']:is([dir='rtl'] .kt-switch)):before {
    --tw-translate-x: calc(var(--spacing) * -4);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-switch) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-switch) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-switch) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  .kt-tabs.kt-tabs-line {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 7);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
  }

  .kt-tabs.kt-tabs-line .kt-tab-toggle {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
    border-bottom-color: transparent;
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--secondary-foreground);
  }

  @media (hover: hover) {
    :is(.kt-tabs.kt-tabs-line .kt-tab-toggle):hover {
      color: var(--primary);
    }
  }

  .active[data-kt-tab-toggle]:is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    border-color: var(--primary);
  }

  .active[data-kt-tab-toggle] :is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    border-color: var(--primary);
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active):is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    border-color: var(--primary);
  }

  .active[data-kt-tab-toggle]:is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    color: var(--primary);
  }

  .active[data-kt-tab-toggle] :is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    color: var(--primary);
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active):is(.kt-tabs.kt-tabs-line .kt-tab-toggle) {
    color: var(--primary);
  }

  :is(.kt-tabs.kt-tabs-line .kt-tab-toggle) svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
    flex-shrink: 0;
    color: var(--muted-foreground);
  }

  .active[data-kt-tab-toggle]:is(:is(.kt-tabs.kt-tabs-line .kt-tab-toggle) svg) {
    color: var(--primary);
  }

  .active[data-kt-tab-toggle] :is(:is(.kt-tabs.kt-tabs-line .kt-tab-toggle) svg) {
    color: var(--primary);
  }

  [data-kt-tabs-initialized] [data-kt-dropdown-initialized]:has([data-kt-tab-toggle].active):is(:is(.kt-tabs.kt-tabs-line .kt-tab-toggle) svg) {
    color: var(--primary);
  }

  :is(.kt-tabs.kt-tabs-line .kt-tab-toggle):hover svg {
    color: var(--primary);
  }
}

@layer components {
  .kt-textarea {
    width: 100%;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: var(--background);
    color: var(--foreground);
    --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-textarea {
    transition-property: color, box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-textarea::placeholder {
    color: var(--muted-foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea::placeholder {
      color: color-mix(in oklab, var(--muted-foreground) 80%, transparent);
    }
  }

  .kt-textarea:focus-visible {
    border-color: var(--ring);
  }

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

  .kt-textarea:focus-visible {
    --tw-ring-color: var(--ring);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea:focus-visible {
      --tw-ring-color: color-mix(in oklab, var(--ring) 30%, transparent);
    }
  }

  .kt-textarea:focus-visible {
    --tw-outline-style: none;
    outline-style: none;
  }

  .kt-textarea:disabled {
    cursor: not-allowed;
  }

  .kt-textarea:disabled {
    opacity: 60%;
  }

  .kt-textarea[readonly] {
    cursor: not-allowed;
  }

  .kt-textarea[readonly] {
    background-color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea[readonly] {
      background-color: color-mix(in oklab, var(--muted) 80%, transparent);
    }
  }

  .kt-textarea[aria-invalid="true"] {
    border-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea[aria-invalid="true"] {
      border-color: color-mix(in oklab, var(--destructive) 60%, transparent);
    }
  }

  .kt-textarea[aria-invalid="true"] {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-textarea[aria-invalid="true"] {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 10%, transparent);
    }
  }

  .kt-textarea {
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 3);
    font-size: 0.8125rem;
    --tw-leading: var(--text-sm--line-height);
    line-height: var(--text-sm--line-height);
  }

  .kt-textarea-lg {
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-textarea-sm {
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}

@layer components {
  [aria-invalid="true"]:is(.dark .kt-textarea) {
    border-color: var(--destructive);
  }

  [aria-invalid="true"]:is(.dark .kt-textarea) {
    --tw-ring-color: var(--destructive);
  }

  @supports (color: color-mix(in lab, red, red)) {
    [aria-invalid="true"]:is(.dark .kt-textarea) {
      --tw-ring-color: color-mix(in oklab, var(--destructive) 20%, transparent);
    }
  }
}

@layer components {
  .kt-tooltip {
    border-radius: calc(var(--radius) - 2px);
    background-color: var(--mono);
    padding: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--mono-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-tooltip {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-tooltip:is(.dark *) {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }

  .kt-tooltip:is(.dark *) {
    border-color: var(--border);
  }

  .kt-tooltip:not(.show) {
    display: none;
  }

  .kt-tooltip-light {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    color: var(--popover-foreground);
  }
}

@layer components {
  .kt-popover {
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--popover-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-popover {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }

  .kt-popover:not(.show) {
    display: none;
  }

  .kt-popover-header {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--mono);
  }

  .kt-popover-content {
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
  }
}

@layer components {
  .kt-table-wrapper {
    position: relative;
    width: 100%;
    overflow: auto;
  }

  .kt-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    vertical-align: bottom;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--foreground);
    caption-side: bottom;
  }

  .kt-table tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
  }

  .kt-table caption {
    margin-top: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--muted-foreground);
  }

  :is(.kt-table thead) tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }

  :is(.kt-table thead) th {
    height: calc(var(--spacing) * 10);
    background-color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is(.kt-table thead) th {
      background-color: color-mix(in oklab, var(--muted) 40%, transparent);
    }
  }

  :is(.kt-table thead) th {
    padding-inline: calc(var(--spacing) * 4);
    text-align: left;
    vertical-align: middle;
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--secondary-foreground);
  }

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

  :is(:is(.kt-table thead) th):has([role=checkbox]) {
    padding-inline-end: calc(var(--spacing) * 0);
  }

  :is(.kt-table tbody) tr:last-child {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }

  :is(.kt-table tbody) td {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    vertical-align: middle;
  }

  :is(:is(.kt-table tbody) td):has([role=checkbox]) {
    padding-inline-end: calc(var(--spacing) * 0);
  }

  .kt-table tfoot {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    background-color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-table tfoot {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }

  .kt-table tfoot {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  :is(.kt-table tfoot):last-child>tr {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 0px;
  }

  :is(.kt-table tfoot) th {
    height: calc(var(--spacing) * 10);
    padding-inline: calc(var(--spacing) * 4);
    text-align: left;
    vertical-align: middle;
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--secondary-foreground);
  }

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

  :is(:is(.kt-table tfoot) th):has([role=checkbox]) {
    padding-inline-end: calc(var(--spacing) * 0);
  }

  :is(.kt-table td, .kt-table th) input[type='checkbox'] {
    vertical-align: inherit;
  }

  .checked:is(:is([data-kt-datatable-table], .kt-table-highlight) tr) {
    background-color: var(--muted);
  }

  :is(:is([data-kt-datatable-table], .kt-table-highlight) tr):has(td):hover {
    background-color: var(--muted);
  }

  @supports (color: color-mix(in lab, red, red)) {
    :is(:is([data-kt-datatable-table], .kt-table-highlight) tr):has(td):hover {
      background-color: color-mix(in oklab, var(--muted) 50%, transparent);
    }
  }

  .kt-table-col {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    cursor: pointer;
  }

  .kt-table-col-label {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    white-space: nowrap;
    gap: 0.35rem;
  }

  .kt-table-col-sort {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 0.975rem;
    width: 0.975rem;
    gap: 0.125rem;
    line-height: 1;
  }

  .kt-table-col-sort:before {
    display: inline-block;
    content: '';
    height: 0.25rem;
    width: 0.438rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M1.08333 4.83333C0.908333 4.83333 0.791667 4.775 0.675 4.65833C0.441667 4.425 0.441667 4.075 0.675 3.84167L3.59167 0.925C3.825 0.691667 4.175 0.691667 4.40833 0.925L7.325 3.84167C7.55833 4.075 7.55833 4.425 7.325 4.65833C7.09167 4.89167 6.74167 4.89167 6.50833 4.65833L4 2.15L1.49167 4.65833C1.375 4.775 1.25833 4.83333 1.08333 4.83333Z' fill='%2378829D'/%3E%3C/svg%3E");
  }

  .kt-table-col-sort:after {
    display: inline-block;
    content: '';
    height: 0.25rem;
    width: 0.438rem;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M4 4.24984C3.825 4.24984 3.70833 4.1915 3.59167 4.07484L0.675 1.15817C0.441667 0.924838 0.441667 0.574837 0.675 0.341504C0.908333 0.108171 1.25833 0.108171 1.49167 0.341504L4 2.84984L6.50833 0.341504C6.74167 0.108171 7.09167 0.108171 7.325 0.341504C7.55833 0.574837 7.55833 0.924838 7.325 1.15817L4.40833 4.07484C4.29167 4.1915 4.175 4.24984 4 4.24984Z' fill='%2378829D'/%3E%3C/svg%3E");
  }

  :is([aria-sort='asc'] .kt-table-col-sort):before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M1.08333 4.83333C0.908333 4.83333 0.791667 4.775 0.675 4.65833C0.441667 4.425 0.441667 4.075 0.675 3.84167L3.59167 0.925C3.825 0.691667 4.175 0.691667 4.40833 0.925L7.325 3.84167C7.55833 4.075 7.55833 4.425 7.325 4.65833C7.09167 4.89167 6.74167 4.89167 6.50833 4.65833L4 2.15L1.49167 4.65833C1.375 4.775 1.25833 4.83333 1.08333 4.83333Z' fill='%234B5675'/%3E%3C/svg%3E");
  }

  :is([aria-sort='asc'] .kt-table-col-sort):after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M4 4.24984C3.825 4.24984 3.70833 4.1915 3.59167 4.07484L0.675 1.15817C0.441667 0.924838 0.441667 0.574837 0.675 0.341504C0.908333 0.108171 1.25833 0.108171 1.49167 0.341504L4 2.84984L6.50833 0.341504C6.74167 0.108171 7.09167 0.108171 7.325 0.341504C7.55833 0.574837 7.55833 0.924838 7.325 1.15817L4.40833 4.07484C4.29167 4.1915 4.175 4.24984 4 4.24984Z' fill='%23C9CEDA'/%3E%3C/svg%3E");
  }

  :is([aria-sort='desc'] .kt-table-col-sort):before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M1.08333 4.83333C0.908333 4.83333 0.791667 4.775 0.675 4.65833C0.441667 4.425 0.441667 4.075 0.675 3.84167L3.59167 0.925C3.825 0.691667 4.175 0.691667 4.40833 0.925L7.325 3.84167C7.55833 4.075 7.55833 4.425 7.325 4.65833C7.09167 4.89167 6.74167 4.89167 6.50833 4.65833L4 2.15L1.49167 4.65833C1.375 4.775 1.25833 4.83333 1.08333 4.83333Z' fill='%23C9CEDA'/%3E%3C/svg%3E");
  }

  :is([aria-sort='desc'] .kt-table-col-sort):after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5' fill='none'%3E%3Cpath d='M4 4.24984C3.825 4.24984 3.70833 4.1915 3.59167 4.07484L0.675 1.15817C0.441667 0.924838 0.441667 0.574837 0.675 0.341504C0.908333 0.108171 1.25833 0.108171 1.49167 0.341504L4 2.84984L6.50833 0.341504C6.74167 0.108171 7.09167 0.108171 7.325 0.341504C7.55833 0.574837 7.55833 0.924838 7.325 1.15817L4.40833 4.07484C4.29167 4.1915 4.175 4.24984 4 4.24984Z' fill='%234B5675'/%3E%3C/svg%3E");
  }
}

@layer components {
  .kt-table-border {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
  }

  .kt-table-border td,
  .kt-table-border th {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
    border-color: var(--border);
  }

  :is(.kt-table-border td, .kt-table-border th):last-child {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 0px;
  }

  .kt-table-border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
    border-color: var(--border);
  }

  .kt-table-border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
    border-color: var(--border);
  }

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

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

@layer components {
  [dir='rtl'] .kt-table {
    text-align: right;
  }
}

@layer component-overrides {
  th[data-kt-datatable-column-sort="false"] .kt-table-col {
    cursor: default;
  }
}

@layer components {
  .kt-toggle-group {
    display: inline-flex;
    align-items: center;
    background-color: var(--background);
    --tw-leading: 1;
    line-height: 1;
  }

  .kt-toggle-group .kt-btn {
    flex-grow: 1;
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 0px;
    border-color: var(--border);
    background-color: transparent;
    color: var(--accent-foreground);
  }

  :is(.kt-toggle-group .kt-btn):last-child {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
    border-color: var(--border);
  }

  :is(.kt-toggle-group .kt-btn):not(:first-child) {
    border-start-start-radius: 0;
    border-end-start-radius: 0;
  }

  :is(.kt-toggle-group .kt-btn):not(:last-child) {
    border-start-end-radius: 0;
    border-end-end-radius: 0;
  }

  :is(.kt-toggle-group .kt-btn):not(:first-child):not(:last-child) {
    border-radius: 0;
  }

  :is(.kt-toggle-group .kt-btn) svg,
  :is(.kt-toggle-group .kt-btn) i {
    color: var(--muted-foreground);
  }

  :is(.kt-toggle-group .kt-btn) input[type='checkbox'],
  :is(.kt-toggle-group .kt-btn) input[type='radio'] {
    display: none;
  }

  :is(.kt-toggle-group .kt-btn):hover,
  :is(.kt-toggle-group .kt-btn):focus,
  :is(.kt-toggle-group .kt-btn):active,
  :is(.kt-toggle-group .kt-btn):has(input:checked),
  .active:is(.kt-toggle-group .kt-btn) {
    background-color: var(--accent);
    color: var(--accent-foreground);
  }

  :is(:is(.kt-toggle-group .kt-btn):hover, :is(.kt-toggle-group .kt-btn):focus, :is(.kt-toggle-group .kt-btn):active, :is(.kt-toggle-group .kt-btn):has(input:checked), .active:is(.kt-toggle-group .kt-btn)) svg,
  :is(:is(.kt-toggle-group .kt-btn):hover, :is(.kt-toggle-group .kt-btn):focus, :is(.kt-toggle-group .kt-btn):active, :is(.kt-toggle-group .kt-btn):has(input:checked), .active:is(.kt-toggle-group .kt-btn)) i {
    color: var(--accent-foreground);
  }
}

@layer components {
  .kt-separator {
    height: 1px;
    width: 100%;
    flex-shrink: 0;
    background-color: var(--border);
  }

  .kt-separator-vertical {
    height: 100%;
    width: 1px;
  }
}

@layer components {
  .kt-progress {
    position: relative;
    height: calc(var(--spacing) * 1);
    width: 100%;
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    background-color: var(--secondary);
  }

  .kt-progress-indicator {
    height: 100%;
    width: 100%;
    flex: 1;
    transform: translateX(calc(100 - var(--progress-value)));
    border-radius: calc(infinity * 1px);
    background-color: var(--primary);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }

  .kt-progress-primary .kt-progress-indicator {
    background-color: var(--primary);
  }

  .kt-progress-success .kt-progress-indicator {
    background-color: var(--color-green-500);
  }

  .kt-progress-warning .kt-progress-indicator {
    background-color: var(--color-yellow-500);
  }

  .kt-progress-info .kt-progress-indicator {
    background-color: var(--color-violet-500);
  }

  .kt-progress-destructive .kt-progress-indicator {
    background-color: var(--destructive);
  }

  .kt-progress-mono .kt-progress-indicator {
    background-color: var(--mono);
  }
}

@layer components {
  .kt-pagination {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }

  .kt-pagination-item {
    display: flex;
    flex-shrink: 0;
    flex-direction: row;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }

  .kt-pagination-item svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-pagination-ellipsis {
    display: flex;
    height: calc(var(--spacing) * 9);
    width: calc(var(--spacing) * 9);
    align-items: center;
    justify-content: center;
  }

  .kt-pagination-ellipsis svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }
}

@layer components {
  .kt-skeleton {
    animation: var(--animate-pulse);
    border-radius: calc(var(--radius) - 2px);
    background-color: var(--accent);
  }
}

@layer components {
  .kt-kbd {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: calc(var(--radius) - 2px);
    font-family: var(--font-mono);
  }

  .kt-kbd {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--accent);
    color: var(--accent-foreground);
  }

  .kt-kbd-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--input);
    background-color: transparent;
    color: var(--accent-foreground);
  }

  .kt-kbd {
    height: calc(var(--spacing) * 7);
    min-width: calc(var(--spacing) * 7);
    padding-inline: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-kbd svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-kbd-xs {
    height: calc(var(--spacing) * 5);
    min-width: calc(var(--spacing) * 5);
    padding-inline: calc(var(--spacing) * 1);
    font-size: 0.6875rem;
    --tw-leading: 0.75rem;
    line-height: 0.75rem;
  }

  .kt-kbd-xs svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }

  .kt-kbd-sm {
    height: calc(var(--spacing) * 6);
    min-width: calc(var(--spacing) * 6);
    padding-inline: calc(var(--spacing) * 1);
    font-size: 0.75rem;
    --tw-leading: 0.75rem;
    line-height: 0.75rem;
  }

  .kt-kbd-sm svg {
    width: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 3);
  }
}

@layer components {
  .kt-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    overflow-wrap: break-word;
    color: var(--muted-foreground);
  }

  .kt-breadcrumb-item {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
  }

  .kt-breadcrumb-link {
    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));
  }

  @media (hover: hover) {
    .kt-breadcrumb-link:hover {
      color: var(--foreground);
    }
  }

  .kt-breadcrumb-link svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-breadcrumb-page {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
    color: var(--foreground);
  }

  .kt-breadcrumb-separator svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-breadcrumb-ellipsis svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }
}

@layer components {
  .kt-toast-container {
    position: fixed;
    z-index: 9999;
  }

  .kt-toast {
    pointer-events: auto;
    position: fixed;
    z-index: 9999;
    width: calc(var(--spacing) * 76);
    max-width: 95%;
    overflow: hidden;
    --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);
    opacity: 0;
    animation: kt-toast-in 0.28s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    transition: top 0.28s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.28s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .kt-toast.kt-toast-top-end {
    inset-inline-end: calc(var(--spacing) * 0);
    top: calc(var(--spacing) * 0);
    bottom: auto;
  }

  .kt-toast.kt-toast-top-center {
    top: calc(var(--spacing) * 0);
    bottom: auto;
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-toast.kt-toast-top-start {
    inset-inline-start: calc(var(--spacing) * 0);
    top: calc(var(--spacing) * 0);
    bottom: auto;
  }

  .kt-toast.kt-toast-middle-end {
    inset-inline-end: calc(var(--spacing) * 0);
    top: calc(1/2 * 100%);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-toast.kt-toast-middle-center {
    top: calc(1/2 * 100%);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-toast.kt-toast-middle-start {
    inset-inline-start: calc(var(--spacing) * 0);
    top: calc(1/2 * 100%);
    --tw-translate-y: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-toast.kt-toast-bottom-end {
    inset-inline-end: calc(var(--spacing) * 0);
    top: auto;
    bottom: calc(var(--spacing) * 0);
  }

  .kt-toast.kt-toast-bottom-center {
    top: auto;
    bottom: calc(var(--spacing) * 0);
    left: calc(1/2 * 100%);
    --tw-translate-x: calc(calc(1/2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }

  .kt-toast.kt-toast-bottom-start {
    inset-inline-start: calc(var(--spacing) * 0);
    top: auto;
    bottom: calc(var(--spacing) * 0);
  }

  .kt-toast-progress {
    position: fixed;
    inset-inline-start: calc(var(--spacing) * 0);
    bottom: calc(var(--spacing) * 0);
    height: 3px;
    width: 100%;
    background-color: var(--primary);
    transform-origin: left;
    animation: kt-toast-progress-line linear forwards;
  }
}

@layer components {
  [dir='rtl'] .kt-toast-progress {
    transform-origin: right;
  }
}

@layer components {
  @keyframes kt-toast-in {
    from {
      opacity: 0;
      transform: translateY(-24px);
    }

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

  @keyframes kt-toast-out {
    from {
      opacity: 1;
    }

    to {
      opacity: 0;
    }
  }

  @keyframes kt-toast-progress-line {
    from {
      transform: scaleX(1);
    }

    to {
      transform: scaleX(0);
    }
  }
}

.appearance-none {
  background-image: none !important;
  box-shadow: none;
  background-color: transparent;
  border: 0;
  width: 0;
  height: 0;
}

@layer components {

  .apexcharts-text,
  .apexcharts-title-text,
  .apexcharts-legend-text {
    font-family: inherit !important;
  }

  .apexcharts-title-text {
    font-weight: var(--font-weight-normal);
  }

  .apexcharts-pie-label {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .apexcharts-toolbar {
    text-align: start !important;
  }

  .apexcharts-menu {
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--box-shadow-sm) !important;
    background-color: var(--color-background) !important;
    border-radius: 0.625rem !important;
    padding: 0.5rem 0 !important;
    overflow: hidden;
    min-width: 10rem !important;
  }

  .apexcharts-menu .apexcharts-menu-item {
    padding: 0.5rem 0.5rem !important;
  }

  .apexcharts-menu .apexcharts-menu-item:hover {
    background-color: var(--gray-100) !important;
  }

  .apexcharts-tooltip {
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--box-shadow-sm) !important;
    background-color: var(--color-background) !important;
    border-radius: 0.625rem !important;
    color: var(--color-secondary-foreground) !important;
  }

  .apexcharts-tooltip .apexcharts-tooltip-title {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--foreground);
    padding: 0.25rem 0.5rem !important;
    background-color: transparent !important;
    border-bottom: 1px solid var(--color-border) !important;
  }

  .apexcharts-xaxistooltip {
    border: 1px solid var(--color-border) !important;
    box-shadow: var(--box-shadow-sm) !important;
    background-color: var(--color-background) !important;
    border-radius: 0.625rem;
    color: var(--color-mono);
  }

  .apexcharts-xaxistooltip:before {
    border-bottom: 0 !important;
  }

  .apexcharts-legend {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
  }

  .apexcharts-legend .apexcharts-legend-series {
    gap: calc(var(--spacing) * 1);
    display: flex;
    align-items: center;
  }

  .apexcharts-legend .apexcharts-legend-series .apexcharts-legend-text {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--muted-foreground);
  }

  .apexcharts-card-rounded .apexcharts-canvas svg {
    border-bottom-left-radius: var(--radius-xl);
    border-bottom-right-radius: var(--radius-xl);
  }

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

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

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

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

@layer components {
  .kt-container-fixed {
    width: 100%;
    flex-grow: 1;
    padding-inline: calc(var(--spacing) * 6);
  }

  @media (width >=80rem) {
    .kt-container-fixed {
      margin-inline: auto;
    }
  }

  @media (width >=80rem) {
    .kt-container-fixed {
      max-width: var(--breakpoint-xl);
    }
  }

  @media (width >=80rem) {
    .kt-container-fixed {
      padding-inline: calc(var(--spacing) * 7.5);
    }
  }
}

@layer components {
  .kt-container-fluid {
    width: 100%;
    flex-grow: 1;
    padding-inline: calc(var(--spacing) * 6);
  }

  @media (width >=80rem) {
    .kt-container-fluid {
      padding-inline: calc(var(--spacing) * 7.5);
    }
  }
}

/*! name: vanilla-calendar-pro v3.0.5 | url: https://github.com/uvarov-frontend/vanilla-calendar-pro */
[data-vc=calendar] {
  border-radius: .75rem;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-width: 272px;
  opacity: 1;
  padding: 1rem;
  position: relative;
  transition-duration: .15s;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

[data-vc=calendar] [tabindex="0"]:focus-visible,
[data-vc=calendar] button:focus-visible,
[data-vc=calendar]:focus-visible {
  border-radius: .5rem;
  outline-offset: -1px;
  outline-style: solid;
  outline-width: 1px;
}

[data-vc=calendar][data-vc-type=multiple] [data-vc=dates] {
  flex-grow: 0;
}

[data-vc=calendar][data-vc-calendar-hidden] {
  opacity: 0;
  pointer-events: none;
}

[data-vc=calendar][data-vc-calendar-hidden] * {
  pointer-events: none !important;
}

[data-vc=calendar][data-vc-input] {
  position: absolute;
}

[data-vc=calendar][data-vc-input][data-vc-position=bottom] {
  margin-top: .25rem;
}

[data-vc=calendar][data-vc-input][data-vc-position=top] {
  margin-top: -.25rem;
}

[data-vc=controls] {
  align-items: center;
  box-sizing: content-box;
  display: flex;
  justify-content: space-between;
  left: 0;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1.25rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 20;
}

[data-vc-arrow] {
  background-color: transparent;
  border-width: 0;
  cursor: pointer;
  display: block;
  height: 1.5rem;
  pointer-events: auto;
  position: relative;
  width: 1.5rem;
}

[data-vc-arrow]:before {
  background-position: 50%;
  background-repeat: no-repeat;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  --tw-content: "";
  content: var(--tw-content);
}

[data-vc-arrow=prev]:before {
  transform: rotate(90deg);
}

[data-vc-arrow=next]:before {
  transform: rotate(-90deg);
}

[data-vc=grid] {
  display: flex;
  flex-grow: 1;
  flex-wrap: wrap;
  gap: 1.75rem;
}

[data-vc=grid][data-vc-grid=hidden] [data-vc=column] {
  opacity: .3;
  pointer-events: none;
}

[data-vc=grid][data-vc-grid=hidden] [data-vc=column][data-vc-column=month],
[data-vc=grid][data-vc-grid=hidden] [data-vc=column][data-vc-column=year] {
  opacity: 1;
  pointer-events: auto;
}

[data-vc=column] {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  min-width: 240px;
}

[data-vc=header] {
  align-items: center;
  display: flex;
  margin-bottom: .75rem;
  position: relative;
}

[data-vc-header=content] {
  align-items: center;
  display: grid;
  flex-grow: 1;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: center;
  padding-left: 1rem;
  padding-right: 1rem;
  white-space: pre-wrap;
}

[data-vc=month],
[data-vc=year] {
  background-color: transparent;
  border-radius: .25rem;
  border-width: 0;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  padding: .25rem;
}

[data-vc=month]:disabled,
[data-vc=year]:disabled {
  pointer-events: none;
}

[data-vc=content],
[data-vc=wrapper] {
  display: flex;
  flex-grow: 1;
}

[data-vc=content] {
  flex-direction: column;
}

[data-vc=months] {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

[data-vc=months],
[data-vc=years] {
  align-items: center;
  -moz-column-gap: .25rem;
  column-gap: .25rem;
  display: grid;
  flex-grow: 1;
  row-gap: 1rem;
}

[data-vc=years] {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

[data-vc-months-month],
[data-vc-years-year] {
  align-items: center;
  border-radius: .5rem;
  border-width: 0;
  cursor: pointer;
  display: flex;
  font-size: .75rem;
  font-weight: 600;
  height: 2.5rem;
  justify-content: center;
  line-height: 1rem;
  padding: .25rem;
  text-align: center;
  word-break: break-all;
}

[data-vc-months-month]:disabled,
[data-vc-years-year]:disabled {
  pointer-events: none;
}

[data-vc-week=numbers] {
  display: flex;
  flex-direction: column;
}

[data-vc-week-numbers=title] {
  align-items: center;
  display: flex;
  font-size: .75rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1rem;
  margin-bottom: .5rem;
}

[data-vc-week-numbers=content] {
  align-items: center;
  display: grid;
  grid-auto-flow: row;
  justify-items: center;
  row-gap: .25rem;
}

[data-vc-week-number] {
  align-items: center;
  background-color: transparent;
  border-style: none;
  cursor: pointer;
  display: flex;
  font-size: .75rem;
  font-weight: 600;
  justify-content: center;
  line-height: 1rem;
  margin: 0;
  min-height: 1.875rem;
  min-width: 1.875rem;
  padding: 0;
  width: 100%;
}

[data-vc=week] {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  justify-items: center;
  margin-bottom: .5rem;
}

[data-vc-week-day] {
  align-items: center;
  background-color: transparent;
  border-style: none;
  display: flex;
  font-size: .75rem;
  font-weight: 700;
  justify-content: center;
  line-height: 1rem;
  margin: 0;
  min-width: 1.875rem;
  padding: 0;
  width: 100%;
}

button[data-vc-week-day] {
  cursor: pointer;
}

[data-vc=dates] {
  align-items: center;
  display: grid;
  flex-grow: 1;
  grid-template-columns: repeat(7, 1fr);
  justify-items: center;
  pointer-events: none;
}

[data-vc=dates][data-vc-dates-disabled] [data-vc-date-btn] {
  cursor: default;
}

[data-vc-date] {
  align-items: center;
  display: flex;
  justify-content: center;
  padding-bottom: .125rem;
  padding-top: .125rem;
  pointer-events: auto;
  position: relative;
  width: 100%;
}

[data-vc-date]:not(:has([data-vc-date-btn])),
[data-vc-date][data-vc-date-disabled],
[data-vc-date][data-vc-date-disabled] [data-vc-date-btn] {
  pointer-events: none;
}

[data-vc-date][data-vc-date-hover] [data-vc-date-btn] {
  border-radius: 0;
}

[data-vc-date][data-vc-date-hover=first] [data-vc-date-btn] {
  border-bottom-left-radius: .5rem;
  border-bottom-right-radius: 0;
  border-top-left-radius: .5rem;
  border-top-right-radius: 0;
}

[data-vc-date][data-vc-date-hover=last] [data-vc-date-btn] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: .5rem;
  border-top-left-radius: 0;
  border-top-right-radius: .5rem;
}

[data-vc-date][data-vc-date-hover=first-and-last] [data-vc-date-btn] {
  border-radius: .5rem;
}

[data-vc-date][data-vc-date-hover=first][data-vc-date-selected] [data-vc-date-btn] {
  border-bottom-left-radius: .5rem;
  border-top-left-radius: .5rem;
}

[data-vc-date][data-vc-date-hover=last][data-vc-date-selected] [data-vc-date-btn] {
  border-bottom-right-radius: .5rem;
  border-top-right-radius: .5rem;
}

[data-vc-date][data-vc-date-selected=first] [data-vc-date-btn] {
  border-bottom-left-radius: .5rem;
  border-bottom-right-radius: 0;
  border-top-left-radius: .5rem;
  border-top-right-radius: 0;
}

[data-vc-date][data-vc-date-selected=last] [data-vc-date-btn] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: .5rem;
  border-top-left-radius: 0;
  border-top-right-radius: .5rem;
}

[data-vc-date][data-vc-date-selected=first-and-last] [data-vc-date-btn] {
  border-bottom-left-radius: .5rem;
  border-bottom-right-radius: .5rem;
  border-top-left-radius: .5rem;
  border-top-right-radius: .5rem;
}

[data-vc-date][data-vc-date-selected=middle] [data-vc-date-btn] {
  border-radius: 0;
}

[data-vc-date][data-vc-date-disabled]+[data-vc-date-hover] [data-vc-date-btn],
[data-vc-date][data-vc-date-disabled]+[data-vc-date-selected] [data-vc-date-btn] {
  border-bottom-left-radius: .5rem;
  border-top-left-radius: .5rem;
}

[data-vc-date][data-vc-date-hover]:has(+[data-vc-date-disabled]) [data-vc-date-btn],
[data-vc-date][data-vc-date-selected]:has(+[data-vc-date-disabled]) [data-vc-date-btn] {
  border-bottom-right-radius: .5rem;
  border-top-right-radius: .5rem;
}

[data-vc-date-btn]:focus-visible+[data-vc-date-popup],
[data-vc-date-btn]:hover+[data-vc-date-popup],
[data-vc-date-popup]:focus-visible,
[data-vc-date-popup]:hover {
  opacity: 1;
  pointer-events: auto;
}

[data-vc-date-btn] {
  align-items: center;
  border-radius: .5rem;
  border-width: 0;
  cursor: pointer;
  display: flex;
  font-size: .75rem;
  font-weight: 400;
  height: 100%;
  justify-content: center;
  line-height: 1rem;
  min-height: 1.875rem;
  min-width: 1.875rem;
  padding: 0;
  transition-duration: 75ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
  width: 100%;
}

[data-vc-date][data-vc-date-today] [data-vc-date-btn] {
  font-weight: 700;
}

[data-vc-date-popup] {
  max-width: 9rem;
  min-width: 5rem;
  pointer-events: none;
  position: absolute;
  z-index: 20;
  --tw-translate-x: -50%;
  border-radius: .5rem;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1rem;
  opacity: 0;
  padding: .25rem .5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-duration: 75ms;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

[data-vc-date-popup]:hover {
  opacity: 1;
  pointer-events: auto;
}

[data-vc-date-range-tooltip] {
  max-width: 9rem;
  pointer-events: none;
  position: absolute;
  z-index: 30;
  --tw-translate-x: -50%;
  --tw-translate-y: -100%;
  border-radius: .375rem;
  font-size: .75rem;
  font-weight: 400;
  line-height: 1rem;
  padding: .25rem .5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

[data-vc-date-range-tooltip=hidden] {
  opacity: 0;
}

[data-vc-date-range-tooltip=visible] {
  opacity: 1;
}

[data-vc=time] {
  border-style: solid;
  border-width: 1px 0 0;
  display: grid;
  gap: .75rem;
  grid-template-columns: auto 1fr;
  margin-top: .75rem;
  padding-top: .75rem;
}

[data-vc-time=content] {
  align-items: center;
  display: grid;
  grid-auto-flow: column;
}

[data-vc-time-input=hour] {
  margin-right: .35rem;
  position: relative;
  width: 1.75rem;
}

[data-vc-time-input=hour]:after {
  display: block;
  margin-top: calc(-50% + 1px);
  position: absolute;
  right: -5px;
  top: 50%;
  --tw-content: ":";
  content: var(--tw-content);
}

[data-vc-time-input=minute] {
  width: 1.75rem;
}

[data-vc-time-input=hour] input,
[data-vc-time-input=minute] input {
  border-radius: .25rem;
  border-width: 0;
  box-sizing: border-box;
  display: block;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.125rem;
  margin: 0;
  padding: .125rem;
  position: relative;
  text-align: center;
  width: 100%;
}

[data-vc-time-input=hour] input:focus-visible,
[data-vc-time-input=minute] input:focus-visible {
  outline-style: solid;
  outline-width: 1px;
}

[data-vc-time-input=hour] input:disabled,
[data-vc-time-input=minute] input:disabled {
  cursor: default;
}

[data-vc-time-input=hour] input:hover:disabled,
[data-vc-time-input=minute] input:hover:disabled,
[data-vc-time=keeping] {
  background-color: transparent;
}

[data-vc-time=keeping] {
  border-radius: .25rem;
  border-width: 0;
  cursor: pointer;
  font-size: .69rem;
  margin-left: 1px;
  margin-top: .25rem;
  padding: 0;
  width: 22px;
}

[data-vc-time=keeping]:focus-visible {
  outline-style: solid;
  outline-width: 1px;
}

[data-vc-time=keeping]:disabled {
  cursor: default;
}

[data-vc-time=keeping]:hover:disabled {
  background-color: transparent;
}

[data-vc-time=ranges] {
  display: grid;
  grid-auto-flow: row;
}

[data-vc-time-range] {
  font-size: 0;
  position: relative;
  z-index: 10;
}

[data-vc-time-range]:before {
  content: var(--tw-content);
  left: 0;
}

[data-vc-time-range]:after {
  content: var(--tw-content);
  right: 0;
}

[data-vc-time-range]:after,
[data-vc-time-range]:before {
  content: "";
  height: .5rem;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  z-index: 10;
}

[data-vc-time-range] input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  cursor: pointer;
  height: 1.25rem;
  margin: 0;
  outline-width: 0;
  position: relative;
  width: 100%;
}

[data-vc-time-range] input::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  border-radius: .25rem;
  border-style: solid;
  border-width: 1px;
  box-sizing: border-box;
  cursor: pointer;
  height: 1rem;
  margin-top: -.5rem;
  position: relative;
  width: .75rem;
  z-index: 20;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

[data-vc-time-range] input::-moz-range-thumb {
  border-radius: .25rem;
  border-style: solid;
  border-width: 1px;
  box-sizing: border-box;
  cursor: pointer;
  height: 1rem;
  position: relative;
  width: .75rem;
  z-index: 20;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

[data-vc-time-range] input::-webkit-slider-runnable-track {
  box-sizing: border-box;
  cursor: pointer;
  height: 1px;
  margin-top: 1px;
  width: 100%;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

[data-vc-time-range] input::-moz-range-track {
  box-sizing: border-box;
  cursor: pointer;
  height: 1px;
  margin-top: 1px;
  width: 100%;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

:root {
  --vc-calendar-bg: var(--popover);
  --vc-calendar-text: var(--foreground);
  --vc-calendar-border: var(--border);
  --vc-calendar-radius: 0.75rem;
  --vc-calendar-padding: 1rem;
  --vc-calendar-min-width: 272px;
  --vc-calendar-opacity: 1;
  --vc-calendar-transition-duration: 0.15s;
  --vc-calendar-input-margin-bottom: 0.25rem;
  --vc-calendar-input-margin-top: -0.25rem;
  --vc-calendar-hidden-opacity: 0;
  --vc-focus-color: var(--primary);
  --vc-focus-radius: 0.5rem;
  --vc-focus-offset: -1px;
  --vc-focus-width: 1px;
  --vc-controls-padding-x: 1rem;
  --vc-controls-padding-top: 1.25rem;
  --vc-controls-z-index: 20;
  --vc-arrow-size: 1rem;
  --vc-arrow-bg: transparent;
  --vc-arrow-opacity: 0.5;
  --vc-arrow-opacity-hover: 1;
  --vc-grid-gap: 1.75rem;
  --vc-grid-hidden-opacity: 0.3;
  --vc-column-min-width: 240px;
  --vc-header-margin-bottom: 0.75rem;
  --vc-header-content-padding-x: 1rem;
  --vc-header-text: var(--foreground);
  --vc-header-text-hover: var(--muted-foreground);
  --vc-header-text-disabled: var(--muted-foreground);
  --vc-header-font-size: 1rem;
  --vc-header-font-weight: 700;
  --vc-header-line-height: 1.5rem;
  --vc-header-btn-radius: 0.25rem;
  --vc-header-btn-padding: 0.25rem;
  --vc-picker-bg: var(--popover);
  --vc-picker-text: var(--muted-foreground);
  --vc-picker-bg-hover: var(--accent);
  --vc-picker-text-disabled: var(--muted-foreground);
  --vc-picker-selected-bg: var(--primary);
  --vc-picker-selected-text: var(--primary-foreground);
  --vc-picker-font-size: 0.75rem;
  --vc-picker-font-weight: 600;
  --vc-picker-line-height: 1rem;
  --vc-picker-height: 2.5rem;
  --vc-picker-radius: 0.5rem;
  --vc-picker-padding: 0.25rem;
  --vc-picker-column-gap: 0.25rem;
  --vc-picker-row-gap: 1rem;
  --vc-week-numbers-text: var(--muted-foreground);
  --vc-week-numbers-text-hover: var(--foreground);
  --vc-week-numbers-font-size: 0.75rem;
  --vc-week-numbers-font-weight: 700;
  --vc-week-numbers-line-height: 1rem;
  --vc-week-numbers-title-margin-bottom: 0.5rem;
  --vc-week-numbers-content-row-gap: 0.25rem;
  --vc-week-number-min-size: 1.875rem;
  --vc-week-number-font-weight: 600;
  --vc-weekday-text: var(--muted-foreground);
  --vc-weekday-text-hover: var(--foreground);
  --vc-weekday-off-text: var(--muted-foreground);
  --vc-weekday-off-text-hover: var(--foreground);
  --vc-weekday-font-size: 0.75rem;
  --vc-weekday-font-weight: 700;
  --vc-weekday-line-height: 1rem;
  --vc-weekday-min-width: 1.875rem;
  --vc-week-margin-bottom: 0.5rem;
  --vc-dates-disabled-cursor: default;
  --vc-date-bg: var(--popover);
  --vc-date-text: var(--foreground);
  --vc-date-bg-hover: var(--accent);
  --vc-date-text-hover: var(--foreground);
  --vc-date-font-size: 0.75rem;
  --vc-date-font-weight: 400;
  --vc-date-line-height: 1rem;
  --vc-date-min-size: 1.875rem;
  --vc-date-radius: 0.5rem;
  --vc-date-padding-y: 0.125rem;
  --vc-date-transition-duration: 75ms;
  --vc-date-transition-timing: cubic-bezier(0.4, 0, 0.2, 1);
  --vc-today-bg: var(--accent);
  --vc-today-text: var(--primary);
  --vc-today-font-weight: 700;
  --vc-selected-bg: var(--primary);
  --vc-selected-text: var(--primary-foreground);
  --vc-range-bg: var(--accent);
  --vc-range-text: var(--primary);
  --vc-hover-bg: var(--accent);
  --vc-hover-edge-bg: var(--accent);
  --vc-disabled-text: var(--muted-foreground);
  --vc-disabled-opacity: 1;
  --vc-outside-text: var(--muted-foreground);
  --vc-outside-bg: var(--popover);
  --vc-weekend-text: var(--muted-foreground);
  --vc-weekend-bg: var(--popover);
  --vc-weekend-bg-hover: var(--accent);
  --vc-weekend-selected-bg: var(--primary);
  --vc-weekend-selected-text: var(--primary-foreground);
  --vc-weekend-range-bg: var(--accent);
  --vc-weekend-range-text: var(--muted-foreground);
  --vc-weekend-outside-text: var(--muted-foreground);
  --vc-weekend-outside-bg: var(--popover);
  --vc-weekend-today-text: var(--primary);
  --vc-popup-bg: var(--popover);
  --vc-popup-text: var(--foreground);
  --vc-popup-radius: 0.5rem;
  --vc-popup-padding: 0.25rem 0.5rem;
  --vc-popup-font-size: 0.75rem;
  --vc-popup-font-weight: 400;
  --vc-popup-line-height: 1rem;
  --vc-popup-min-width: 5rem;
  --vc-popup-max-width: 9rem;
  --vc-popup-z-index: 20;
  --vc-popup-transition-duration: 75ms;
  --vc-tooltip-bg: var(--accent);
  --vc-tooltip-text: var(--muted-foreground);
  --vc-tooltip-radius: 0.375rem;
  --vc-tooltip-padding: 0.25rem 0.5rem;
  --vc-tooltip-font-size: 0.75rem;
  --vc-tooltip-font-weight: 400;
  --vc-tooltip-line-height: 1rem;
  --vc-tooltip-max-width: 9rem;
  --vc-tooltip-z-index: 30;
  --vc-time-border: var(--border);
  --vc-time-text: var(--foreground);
  --vc-time-gap: 0.75rem;
  --vc-time-margin-top: 0.75rem;
  --vc-time-padding-top: 0.75rem;
  --vc-time-input-bg: var(--popover);
  --vc-time-input-bg-hover: var(--accent);
  --vc-time-input-bg-focus: var(--accent);
  --vc-time-input-text: var(--foreground);
  --vc-time-input-font-size: 1rem;
  --vc-time-input-font-weight: 500;
  --vc-time-input-line-height: 1.125rem;
  --vc-time-input-radius: 0.25rem;
  --vc-time-input-padding: 0.125rem;
  --vc-time-input-width: 1.75rem;
  --vc-time-hour-margin-right: 0.35rem;
  --vc-time-keeping-text: var(--muted-foreground);
  --vc-time-keeping-bg-hover: var(--accent);
  --vc-time-keeping-font-size: 0.69rem;
  --vc-time-keeping-radius: 0.25rem;
  --vc-time-keeping-width: 22px;
  --vc-time-keeping-margin-left: 1px;
  --vc-time-keeping-margin-top: 0.25rem;
  --vc-time-range-bg: var(--popover);
  --vc-time-range-track-bg: var(--border);
  --vc-time-range-thumb-bg: var(--popover);
  --vc-time-range-thumb-border: var(--border);
  --vc-time-range-thumb-border-hover: var(--muted-foreground);
  --vc-time-range-thumb-border-focus: var(--primary);
  --vc-time-range-thumb-radius: 0.25rem;
  --vc-time-range-thumb-width: 0.75rem;
  --vc-time-range-thumb-height: 1rem;
  --vc-time-range-marker-bg: var(--border);
  --vc-time-range-marker-height: 0.5rem;
  --vc-time-range-marker-width: 1px;
}

[data-vc-theme=light].vc {
  background-color: var(--vc-calendar-bg);
  color: var(--vc-calendar-text);
}

[data-vc-theme=light].vc[data-vc=calendar] {
  background-color: var(--vc-calendar-bg);
  color: var(--vc-calendar-text);
  border: 1px solid var(--vc-calendar-border);
  border-radius: var(--vc-calendar-radius);
}

[data-vc-theme=light].vc[data-vc-input] {
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-shadow-color: rgba(0, 0, 0, 0.05);
}

@supports (color: color-mix(in lab, red, red)) {
  [data-vc-theme=light].vc[data-vc-input] {
    --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
  }
}

[data-vc-theme=light].vc[data-vc-input] {
  background-color: var(--vc-calendar-bg);
  border: 1px solid var(--vc-calendar-border);
  border-radius: var(--vc-calendar-radius);
  z-index: 100;
}

[data-vc-theme=light].vc [tabindex="0"]:focus-visible,
[data-vc-theme=light].vc button:focus-visible,
[data-vc-theme=light].vc:focus-visible {
  outline-color: var(--vc-focus-color);
  border-radius: var(--vc-focus-radius);
  outline-offset: var(--vc-focus-offset);
  outline-width: var(--vc-focus-width);
}

[data-vc-theme=light] .vc-arrow {
  background-color: var(--vc-arrow-bg);
  opacity: var(--vc-arrow-opacity);
  transition: opacity 0.2s ease-in-out;
}

:is([data-vc-theme=light] .vc-arrow):before {
  background-size: 80%;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iIzBmMTcyYSIgZD0iTTEyIDE2Yy0uMyAwLS41LS4xLS43LS4zbC02LTZjLS40LS40LS40LTEgMC0xLjRzMS0uNCAxLjQgMGw1LjMgNS4zIDUuMy01LjNjLjQtLjQgMS0uNCAxLjQgMHMuNCAxIDAgMS40bC02IDZjLS4yLjItLjQuMy0uNy4zIi8+PC9zdmc+");
}

:is([data-vc-theme=light] .vc-arrow):focus,
:is([data-vc-theme=light] .vc-arrow):hover {
  opacity: var(--vc-arrow-opacity-hover);
}

.dark [data-vc-theme=light] .vc-arrow {
  opacity: 1;
}

:is(.dark [data-vc-theme=light] .vc-arrow):focus,
:is(.dark [data-vc-theme=light] .vc-arrow):hover {
  opacity: 1;
}

.dark [data-vc-theme=light] .vc-arrow:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTEyIDE2Yy0uMyAwLS41LS4xLS43LS4zbC02LTZjLS40LS40LS40LTEgMC0xLjRzMS0uNCAxLjQgMGw1LjMgNS4zIDUuMy01LjNjLjQtLjQgMS0uNCAxLjQgMHMuNCAxIDAgMS40bC02IDZjLS4yLjItLjQuMy0uNy4zIi8+PC9zdmc+");
}

[data-vc-theme=light] .vc-header__content,
[data-vc-theme=light] .vc-month,
[data-vc-theme=light] .vc-year {
  color: var(--vc-header-text);
}

[data-vc-theme=light] .vc-month:disabled,
[data-vc-theme=light] .vc-year:disabled {
  color: var(--vc-header-text-disabled);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-month:hover,
  [data-vc-theme=light] .vc-year:hover {
    color: var(--vc-header-text-hover);
  }
}

[data-vc-theme=light] .vc-months__month,
[data-vc-theme=light] .vc-years__year {
  background-color: var(--vc-picker-bg);
  color: var(--vc-picker-text);
}

[data-vc-theme=light] .vc-months__month:disabled,
[data-vc-theme=light] .vc-years__year:disabled {
  color: var(--vc-picker-text-disabled);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-months__month:hover,
  [data-vc-theme=light] .vc-years__year:hover {
    background-color: var(--vc-picker-bg-hover);
  }

  [data-vc-theme=light] .vc-months__month:hover:disabled,
  [data-vc-theme=light] .vc-years__year:hover:disabled {
    color: var(--vc-picker-text-disabled);
  }
}

[data-vc-theme=light] .vc-months__month[data-vc-months-month-selected],
[data-vc-theme=light] .vc-years__year[data-vc-years-year-selected] {
  background-color: var(--vc-picker-selected-bg);
  color: var(--vc-picker-selected-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-months__month[data-vc-months-month-selected]:hover,
  [data-vc-theme=light] .vc-years__year[data-vc-years-year-selected]:hover {
    background-color: var(--vc-picker-selected-bg);
    color: var(--vc-picker-selected-text);
  }
}

[data-vc-theme=light] .vc-week-number,
[data-vc-theme=light] .vc-week-numbers__title {
  color: var(--vc-week-numbers-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-week-number:hover {
    color: var(--vc-week-numbers-text-hover);
  }
}

[data-vc-theme=light] .vc-week__day {
  color: var(--vc-weekday-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] button.vc-week__day:hover {
    color: var(--vc-weekday-text-hover);
  }
}

[data-vc-theme=light] .vc-week__day[data-vc-week-day-off] {
  color: var(--vc-weekday-off-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] button.vc-week__day[data-vc-week-day-off]:hover {
    color: var(--vc-weekday-off-text-hover);
  }
}

[data-vc-theme=light] .vc-date__btn {
  background-color: var(--vc-date-bg);
  color: var(--vc-date-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-date__btn:hover {
    background-color: var(--vc-date-bg-hover);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-today] .vc-date__btn {
  background-color: var(--vc-today-bg);
  color: var(--vc-today-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-date[data-vc-date-today] .vc-date__btn:hover {
    color: var(--vc-today-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-today][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-today][data-vc-date-month=prev] .vc-date__btn {
  color: var(--vc-outside-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-month=prev] .vc-date__btn {
  color: var(--vc-outside-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-disabled] .vc-date__btn {
  color: var(--vc-disabled-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-hover] .vc-date__btn {
  background-color: var(--vc-hover-bg);
}

[data-vc-theme=light] .vc-date[data-vc-date-hover=first] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-hover=last] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-hover=first] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-hover=last] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend] .vc-date__btn {
  color: var(--vc-weekend-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-holiday] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend] .vc-date__btn:hover {
    background-color: var(--vc-weekend-bg-hover);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover] .vc-date__btn {
  background-color: var(--vc-weekend-bg-hover);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover=first] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover=last] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover=first] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover=last] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover=first] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover=last] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover=first] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover=last] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-disabled] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-disabled] .vc-date__btn {
  color: var(--vc-disabled-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-today] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-today] .vc-date__btn {
  color: var(--vc-weekend-today-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-today][data-vc-date-disabled] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-today][data-vc-date-disabled] .vc-date__btn {
  color: var(--vc-disabled-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-month=prev] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-month=prev] .vc-date__btn {
  background-color: var(--vc-weekend-outside-bg);
  color: var(--vc-weekend-outside-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-month=next] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-month=prev] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-month=next] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-month=prev] .vc-date__btn:hover {
    background-color: var(--vc-date-bg-hover);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-hover][data-vc-date-month=prev] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-hover][data-vc-date-month=prev] .vc-date__btn {
  background-color: var(--vc-hover-bg);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-today][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-today][data-vc-date-month=prev] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-today][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-today][data-vc-date-month=prev] .vc-date__btn {
  color: var(--vc-outside-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-disabled][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-disabled][data-vc-date-month=prev] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-disabled][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-disabled][data-vc-date-month=prev] .vc-date__btn {
  color: var(--vc-disabled-text);
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-weekend-selected-bg);
  color: var(--vc-weekend-selected-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-weekend-selected-bg);
    color: var(--vc-weekend-selected-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
  color: var(--vc-outside-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected][data-vc-date-month=next] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-holiday][data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected][data-vc-date-month=next] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-weekend][data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
    color: var(--vc-outside-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-weekend-range-bg);
  color: var(--vc-weekend-range-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-weekend-range-bg);
    color: var(--vc-weekend-range-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
  color: var(--vc-outside-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-holiday][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-weekend][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
    color: var(--vc-outside-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-range-bg);
  color: var(--vc-range-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-range-bg);
    color: var(--vc-range-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
  color: var(--vc-outside-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-month=next][data-vc-date-selected] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected=middle][data-vc-date-month=prev][data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
    color: var(--vc-outside-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected] .vc-date__btn {
  background-color: var(--vc-selected-bg);
  color: var(--vc-selected-text);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-date[data-vc-date-selected] .vc-date__btn:hover {
    background-color: var(--vc-selected-bg);
    color: var(--vc-selected-text);
  }
}

[data-vc-theme=light] .vc-date[data-vc-date-selected][data-vc-date-month=next] .vc-date__btn,
[data-vc-theme=light] .vc-date[data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn {
  background-color: var(--vc-hover-edge-bg);
  color: var(--vc-outside-text);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-date[data-vc-date-selected][data-vc-date-month=next] .vc-date__btn:hover,
  [data-vc-theme=light] .vc-date[data-vc-date-selected][data-vc-date-month=prev] .vc-date__btn:hover {
    background-color: var(--vc-hover-edge-bg);
    color: var(--vc-outside-text);
  }
}

[data-vc-theme=light] .vc-date__popup {
  background-color: var(--vc-popup-bg);
  color: var(--vc-popup-text);
  --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  --tw-shadow-color: rgba(0, 0, 0, 0.05);
}

@supports (color: color-mix(in lab, red, red)) {
  [data-vc-theme=light] .vc-date__popup {
    --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
  }
}

[data-vc-theme=light] .vc-date-range-tooltip {
  background-color: var(--vc-tooltip-bg);
  color: var(--vc-tooltip-text);
  --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);
  --tw-shadow-color: rgba(0, 0, 0, 0.05);
}

@supports (color: color-mix(in lab, red, red)) {
  [data-vc-theme=light] .vc-date-range-tooltip {
    --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
  }
}

[data-vc-theme=light] .vc-time {
  border-color: var(--vc-time-border);
}

[data-vc-theme=light] .vc-time__hour:after,
[data-vc-theme=light] .vc-time__minute:after {
  color: var(--vc-time-text);
}

[data-vc-theme=light] .vc-time__hour input,
[data-vc-theme=light] .vc-time__minute input {
  background-color: var(--vc-time-input-bg);
  color: var(--vc-time-input-text);
}

[data-vc-theme=light] .vc-time__hour input:focus-visible,
[data-vc-theme=light] .vc-time__minute input:focus-visible {
  outline-color: var(--vc-focus-color);
}

@media (hover:hover) and (pointer:fine) {

  [data-vc-theme=light] .vc-time__hour input:hover,
  [data-vc-theme=light] .vc-time__minute input:hover {
    background-color: var(--vc-time-input-bg-hover);
  }
}

[data-vc-theme=light] .vc-time__hour input[data-vc-input-focus],
[data-vc-theme=light] .vc-time__minute input[data-vc-input-focus] {
  background-color: var(--vc-time-input-bg-focus);
}

[data-vc-theme=light] .vc-time__keeping {
  color: var(--vc-time-keeping-text);
}

[data-vc-theme=light] .vc-time__keeping:focus-visible {
  outline-color: var(--vc-focus-color);
}

@media (hover:hover) and (pointer:fine) {
  [data-vc-theme=light] .vc-time__keeping:hover {
    background-color: var(--vc-time-keeping-bg-hover);
  }
}

[data-vc-theme=light] .vc-time__range input {
  background-color: var(--vc-time-range-bg);
}

[data-vc-theme=light] .vc-time__range:after,
[data-vc-theme=light] .vc-time__range:before {
  background-color: var(--vc-time-range-marker-bg);
}

[data-vc-theme=light] .vc-time__range:hover input::-webkit-slider-thumb {
  border-color: var(--vc-time-range-thumb-border-hover);
}

[data-vc-theme=light] .vc-time__range:hover input::-moz-range-thumb {
  border-color: var(--vc-time-range-thumb-border-hover);
}

[data-vc-theme=light] .vc-time__range input:focus-visible::-webkit-slider-thumb {
  border-color: var(--vc-time-range-thumb-border-focus);
}

[data-vc-theme=light] .vc-time__range input:focus-visible::-moz-range-thumb {
  border-color: var(--vc-time-range-thumb-border-focus);
}

[data-vc-theme=light] .vc-time__range input::-webkit-slider-thumb {
  border-color: var(--vc-time-range-thumb-border);
  background-color: var(--vc-time-range-thumb-bg);
}

[data-vc-theme=light] .vc-time__range input::-moz-range-thumb {
  border-color: var(--vc-time-range-thumb-border);
  background-color: var(--vc-time-range-thumb-bg);
}

[data-vc-theme=light] .vc-time__range input::-webkit-slider-runnable-track {
  background-color: var(--vc-time-range-track-bg);
}

[data-vc-theme=light] .vc-time__range input::-moz-range-track {
  background-color: var(--vc-time-range-track-bg);
}

[data-vc-week-numbers=title] {
  margin-top: 0.85rem;
  --tw-leading: 0.55;
  line-height: 0.55;
}

[data-vc=month],
[data-vc=year] {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}

[data-vc-week-day] {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
}

[data-vc=date] {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
}

[data-vc=time] {
  margin: 0;
  border: 0;
}

[data-vc-time=keeping] {
  margin: 0;
}

[data-vc-time-input=hour] input,
[data-vc-time-input=minute] input {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
  --tw-font-weight: var(--font-weight-medium);
  font-weight: var(--font-weight-medium);
  outline: none !important;
  border: none !important;
}

.vc-highlight-weekends {
  --vc-weekday-off-text: var(--destructive);
  --vc-weekday-off-text-hover: var(--destructive);
  --vc-weekend-text: var(--destructive);
  --vc-weekend-bg-hover: var(--destructive);
}

@supports (color: color-mix(in lab, red, red)) {
  .vc-highlight-weekends {
    --vc-weekend-bg-hover: color-mix(in srgb, var(--destructive) 10%, transparent);
  }
}

.vc-highlight-weekends {
  --vc-weekend-selected-bg: var(--destructive);
  --vc-weekend-selected-text: white;
  --vc-weekend-range-bg: var(--destructive);
}

@supports (color: color-mix(in lab, red, red)) {
  .vc-highlight-weekends {
    --vc-weekend-range-bg: color-mix(in srgb, var(--destructive) 70%, transparent);
  }
}

.vc-highlight-weekends {
  --vc-weekend-range-text: white;
  --vc-weekend-today-text: var(--destructive);
}

.vc-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: calc(var(--spacing) * 2);
  margin-top: calc(var(--spacing) * 1);
  padding-top: calc(var(--spacing) * 2.5);
  border-top-style: var(--tw-border-style);
  border-top-width: 1px;
  border-color: var(--border);
}

@layer components {

  .leaflet-container .leaflet-pane,
  .leaflet-container .leaflet-top,
  .leaflet-container .leaflet-bottom,
  .leaflet-container .leaflet-control {
    z-index: 1 !important;
  }

  .leaflet-container .leaflet-popup-content-wrapper {
    border-radius: var(--radius-md);
    text-align: center;
    background-color: var(--color-popover);
  }

  :is(.leaflet-container .leaflet-popup-content-wrapper) .leaflet-popup-content {
    font-family: inherit;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
}

@layer components {
  .kt-menu {
    display: flex;
  }

  .kt-menu-item,
  .kt-menu-link {
    padding: 0;
    margin: 0;
  }

  .kt-menu-item {
    display: flex;
    flex-direction: column;
  }

  .kt-menu-link,
  .kt-menu-label,
  .kt-menu-toggle {
    cursor: pointer;
    display: flex;
    align-items: center;
    flex-grow: 1;
  }

  .kt-menu-title {
    display: flex;
    align-items: center;
    line-height: 1;
    flex-grow: 1;
  }

  .kt-menu-icon,
  .kt-menu-bullet,
  .kt-menu-badge,
  .kt-menu-arrow {
    display: flex;
    align-items: center;
    flex-shrink: 0;
  }

  .kt-menu-dropdown,
  .kt-menu-accordion {
    padding: 0;
    margin: 0;
    display: none;
    align-items: stretch;
    flex-direction: column;
  }

  .show.kt-menu-item-dropdown>.kt-menu-dropdown,
  .base-popper-root>.kt-menu-container>.kt-menu-dropdown,
  .kt-menu-dropdown.kt-menu.show,
  .kt-menu-dropdown.show[data-popper-placement] {
    display: flex;
    will-change: transform;
  }

  .kt-menu-accordion {
    display: none;
    transition: height 0.3s ease;
  }

  .show:not(.kt-menu-dropdown)>.kt-menu-accordion,
  .transitioning:not(.kt-menu-dropdown)>.kt-menu-accordion,
  .kt-menu-accordion.show {
    display: flex;
  }
}

@layer components {
  .kt-menu-dropdown {
    gap: calc(var(--spacing) * 0.25);
    border-radius: calc(var(--radius) - 2px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--popover);
    color: var(--popover-foreground);
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-shadow-color: rgba(0, 0, 0, 0.05);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-menu-dropdown {
      --tw-shadow-color: color-mix(in oklab, rgba(0, 0, 0, 0.05) var(--tw-shadow-alpha), transparent);
    }
  }
}

@layer components {
  .kt-menu-default {
    gap: calc(var(--spacing) * 0.5);
    padding-block: calc(var(--spacing) * 2);
  }

  .kt-menu-default .kt-menu-link,
  .kt-menu-default .kt-menu-label {
    margin-inline: calc(var(--spacing) * 2);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 2);
  }

  .kt-menu-default .kt-menu-title {
    font-size: var(--text-2sm);
    line-height: var(--tw-leading, var(--text-2sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }

  .kt-menu-default .kt-menu-icon {
    margin-inline-end: calc(var(--spacing) * 2.5);
  }

  :is(.kt-menu-default .kt-menu-icon) i {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }

  .kt-menu-default .kt-menu-bullet {
    margin-inline-end: calc(var(--spacing) * 2.5);
  }

  .kt-menu-default .kt-menu-arrow {
    margin-inline-start: calc(var(--spacing) * 2);
  }

  :is(.kt-menu-default .kt-menu-arrow) i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }

  .kt-menu-default .kt-menu-badge {
    margin-inline-start: calc(var(--spacing) * 2.5);
  }

  .kt-menu-default .kt-menu-separator {
    margin-block: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--border);
  }

  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-link,
  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-label {
    margin-inline-start: calc(var(--spacing) * 5);
  }

  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-link,
  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-label {
    margin-inline-start: calc(var(--spacing) * 8);
  }

  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-link,
  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-label {
    margin-inline-start: calc(var(--spacing) * 11);
  }

  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-link,
  :is(.kt-menu-default .kt-menu-accordion:not(.kt-menu-no-indent)) .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-accordion .kt-menu-item>.kt-menu-label {
    margin-inline-start: calc(var(--spacing) * 14);
  }

  .kt-menu-fit {
    padding-block: calc(var(--spacing) * 0);
  }

  .kt-menu-fit .kt-menu-link,
  .kt-menu-fit .kt-menu-label {
    margin-inline: calc(var(--spacing) * 0);
  }

  .kt-menu-space {
    padding-block: calc(var(--spacing) * 2);
  }

  .kt-menu-space .kt-menu-link,
  .kt-menu-space .kt-menu-label {
    margin-inline: calc(var(--spacing) * 2.5);
  }
}

@layer components {
  :is(.kt-menu-default .kt-menu-item) .kt-menu-title {
    color: var(--foreground);
  }

  :is(.kt-menu-default .kt-menu-item) .kt-menu-icon i {
    color: var(--muted-foreground);
  }

  :is(.kt-menu-default .kt-menu-item) .kt-menu-arrow i {
    color: var(--muted-foreground);
  }

  :is(:is(.kt-menu-default .kt-menu-item) .kt-menu-link:hover, :is(.kt-menu-default .kt-menu-item) .kt-menu-label:hover) .kt-menu-title {
    color: var(--mono);
  }

  :is(:is(.kt-menu-default .kt-menu-item) .kt-menu-link:hover, :is(.kt-menu-default .kt-menu-item) .kt-menu-label:hover) .kt-menu-icon i {
    color: var(--primary);
  }

  :is(:is(.active:is(.kt-menu-default .kt-menu-item), .show:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item), .focus:is(.kt-menu-default .kt-menu-item)) > .kt-menu-link, :is(.active:is(.kt-menu-default .kt-menu-item), .show:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item), .focus:is(.kt-menu-default .kt-menu-item)) > .kt-menu-label) .kt-menu-title {
    color: var(--mono);
  }

  :is(:is(.active:is(.kt-menu-default .kt-menu-item), .show:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item), .focus:is(.kt-menu-default .kt-menu-item)) > .kt-menu-link, :is(.active:is(.kt-menu-default .kt-menu-item), .show:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item), .focus:is(.kt-menu-default .kt-menu-item)) > .kt-menu-label) .kt-menu-icon i {
    color: var(--primary);
  }

  :is(.active:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item))>.kt-menu-link,
  :is(.active:is(.kt-menu-default .kt-menu-item), .here:is(.kt-menu-default .kt-menu-item))>.kt-menu-label {
    background-color: var(--accent);
  }

  :is(.kt-menu-default .kt-menu-item)>.kt-menu-link:hover,
  :is(.kt-menu-default .kt-menu-item)>.kt-menu-label:hover {
    background-color: var(--accent);
  }

  .disabled:is(.kt-menu-default .kt-menu-item)>.kt-menu-link,
  .disabled:is(.kt-menu-default .kt-menu-item)>.kt-menu-label {
    opacity: 50%;
  }
}

@layer components {
  .range {
    width: 100%;
    height: 0.5rem;
    padding: 0;
    appearance: none;
  }

  .range:focus {
    outline: 0;
  }

  .range::-moz-focus-outer {
    border: 0;
  }

  .range::-webkit-slider-thumb {
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--primary);
    --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);
    width: 1.5rem;
    height: 1.5rem;
    margin-top: -0.5rem;
    appearance: none;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  }

  :is(.range::-webkit-slider-thumb):active {
    background-color: var(--primary);
  }

  .range::-moz-range-thumb {
    border-radius: calc(infinity * 1px);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--primary);
    --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);
    width: 1.5rem;
    height: 1.5rem;
    margin-top: -0.5rem;
    appearance: none;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  }

  :is(.range::-moz-range-thumb):active {
    background-color: var(--primary);
  }

  .range::-moz-range-track {
    background-color: var(--input);
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    border-color: transparent;
    border-radius: 0.188rem;
  }

  .range::-webkit-slider-runnable-track {
    background-color: var(--input);
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    border-color: transparent;
    border-radius: 0.188rem;
  }

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

  .range:disabled::-webkit-slider-thumb {
    background-color: var(--accent);
  }

  .range:disabled::-moz-range-thumb {
    background-color: var(--accent);
  }
}

@layer components {
  .kt-rating {
    display: inline-flex;
    align-items: stretch;
  }

  .kt-rating input {
    appearance: none;
    position: absolute;
    inset-inline-start: 9999px;
  }

  [disabled]:is(.kt-rating input) {
    display: none;
  }

  .kt-rating-on {
    color: var(--color-yellow-400);
  }

  .kt-rating-off {
    color: var(--muted-foreground);
  }

  .kt-rating-label {
    display: inline-flex !important;
    align-items: center;
  }

  .kt-rating-label .kt-rating-on {
    display: none !important;
  }

  .kt-rating-label .kt-rating-off {
    display: inline-flex !important;
  }

  :is(.kt-rating:hover label.kt-rating-label, label.kt-rating-label, label.kt-rating-label.checked, div.kt-rating-label.checked) .kt-rating-on {
    display: inline-flex !important;
  }

  :is(.kt-rating:hover label.kt-rating-label, label.kt-rating-label, label.kt-rating-label.checked, div.kt-rating-label.checked) .kt-rating-off {
    display: none !important;
  }

  :is(label.kt-rating-label:hover ~ label.kt-rating-label, .kt-rating-input:checked ~ .kt-rating-label) .kt-rating-on {
    display: none !important;
  }

  :is(label.kt-rating-label:hover ~ label.kt-rating-label, .kt-rating-input:checked ~ .kt-rating-label) .kt-rating-off {
    display: inline-flex !important;
  }

  .kt-rating-label.indeterminate {
    position: relative;
  }

  .kt-rating-label.indeterminate .kt-rating-on {
    display: inline-flex !important;
    position: absolute;
    z-index: 1;
    overflow: hidden;
    inset-inline-start: 0;
  }

  .kt-rating-label.indeterminate .kt-rating-off {
    display: inline-flex !important;
  }

  label.kt-rating-label {
    cursor: pointer;
  }
}

@layer components {

  .kt-scrollable,
  .kt-scrollable-y,
  .kt-scrollable-x,
  .kt-scrollable-hover,
  .kt-scrollable-y-hover,
  .kt-scrollable-x-hover,
  .kt-scrollable-auto,
  .kt-scrollable-y-auto,
  .kt-scrollable-x-auto {
    scrollbar-width: thin;
    scrollbar-color: transparent transparent;
    position: relative;
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-hover, .kt-scrollable-y-hover, .kt-scrollable-x-hover, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto)::-webkit-scrollbar {
    width: 0.35rem;
    height: 0.35rem;
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-hover, .kt-scrollable-y-hover, .kt-scrollable-x-hover, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto)::-webkit-scrollbar-track {
    background-color: transparent;
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-hover, .kt-scrollable-y-hover, .kt-scrollable-x-hover, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto)::-webkit-scrollbar-thumb {
    border-radius: 1.25rem;
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-hover, .kt-scrollable-y-hover, .kt-scrollable-x-hover, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto)::-webkit-scrollbar-corner {
    background-color: transparent;
  }

  .kt-scrollable,
  .kt-scrollable-hover {
    overflow: scroll;
  }

  .kt-scrollable-y,
  .kt-scrollable-y-hover {
    overflow-y: scroll;
  }

  .kt-scrollable-x,
  .kt-scrollable-x-hover {
    overflow-x: scroll;
  }

  .kt-scrollable-auto {
    overflow: auto;
  }

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

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

  .kt-scrollable,
  .kt-scrollable-y,
  .kt-scrollable-x,
  .kt-scrollable-auto,
  .kt-scrollable-y-auto,
  .kt-scrollable-x-auto,
  .kt-scrollable-hover:hover,
  .kt-scrollable-y-hover:hover,
  .kt-scrollable-x-hover:hover {
    scrollbar-color: var(--scrollbar-thumb-color, var(--color-input)) transparent;
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto, .kt-scrollable-hover:hover, .kt-scrollable-y-hover:hover, .kt-scrollable-x-hover:hover)::-webkit-scrollbar-thumb {
    background-color: var(--scrollbar-thumb-color, var(--color-input));
  }

  :is(.kt-scrollable, .kt-scrollable-y, .kt-scrollable-x, .kt-scrollable-auto, .kt-scrollable-y-auto, .kt-scrollable-x-auto, .kt-scrollable-hover:hover, .kt-scrollable-y-hover:hover, .kt-scrollable-x-hover:hover)::-webkit-scrollbar-corner {
    background-color: transparent;
  }

  @supports (-webkit-hyphens: none) {

    .kt-scrollable,
    .kt-scrollable-hover {
      overflow: auto;
    }

    .kt-scrollable-y,
    .kt-scrollable-y-hover {
      overflow-y: auto;
    }

    .kt-scrollable-x,
    .kt-scrollable-x-hover {
      overflow-x: auto;
    }
  }

  @media (max-width: 64rem) {

    .kt-scrollable,
    .kt-scrollable-hover {
      overflow: auto;
    }

    .kt-scrollable-y,
    .kt-scrollable-y-hover {
      overflow-y: auto;
    }

    .kt-scrollable-x,
    .kt-scrollable-x-hover {
      overflow-x: auto;
    }
  }
}

@layer components {
  .demo1 {
    --sidebar-transition-duration: 0.3s;
    --sidebar-transition-timing: ease;
    --sidebar-width: 280px;
    --sidebar-width-collapse: 80px;
    --sidebar-default-width: 280px;
    --header-height: 70px;
  }

  @media (max-width: 64rem) {
    .demo1 {
      --sidebar-width: 280px;
      --header-height: 60px;
    }
  }

  .demo1 .kt-header {
    height: var(--header-height);
  }

  .demo1 .kt-sidebar {
    width: var(--sidebar-width);
  }

  .demo1.kt-header-fixed .kt-wrapper {
    padding-top: var(--header-height);
  }

  @media (min-width: 64rem) {
    .demo1 .kt-sidebar {
      width: var(--sidebar-width);
      transition: width var(--sidebar-transition-duration) var(--sidebar-transition-timing);
    }

    .demo1 .kt-sidebar .kt-sidebar-header {
      height: var(--header-height);
    }

    .demo1 .kt-sidebar .kt-sidebar-wrapper {
      width: var(--sidebar-default-width);
    }

    .demo1 .kt-sidebar .kt-sidebar-logo {
      width: var(--sidebar-default-width);
    }

    .demo1 .kt-sidebar .small-logo {
      display: none;
    }

    .demo1.kt-sidebar-fixed .kt-wrapper {
      padding-inline-start: var(--sidebar-width) !important;
    }

    .demo1.kt-sidebar-fixed.kt-header-fixed .kt-header {
      inset-inline-start: var(--sidebar-width) !important;
    }

    .demo1.kt-sidebar-fixed.kt-header-fixed .kt-wrapper {
      padding-top: var(--header-height);
    }

    .demo1.kt-sidebar-collapse {
      --sidebar-width: var(--sidebar-width-collapse);
    }

    .demo1.kt-sidebar-collapse .kt-sidebar {
      transition: width var(--sidebar-transition-duration) var(--sidebar-transition-timing);
    }

    .demo1.kt-sidebar-collapse .kt-sidebar.animating {
      pointer-events: none;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:hover:not(.animating) {
      width: var(--sidebar-default-width);
      transition: width var(--sidebar-transition-duration) var(--sidebar-transition-timing);
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .default-logo {
      display: none;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .small-logo {
      display: flex;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-link .kt-menu-title,
    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-link .kt-menu-arrow,
    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-link .kt-menu-badge,
    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-label .kt-menu-title,
    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-label .kt-menu-arrow,
    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-label .kt-menu-badge {
      display: none;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-accordion {
      display: none;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-heading {
      visibility: hidden;
      position: relative;
    }

    .demo1.kt-sidebar-collapse .kt-sidebar:not(:hover) .kt-menu>.kt-menu-item>.kt-menu-heading::before {
      content: "...";
      color: currentColor;
      font-size: inherit;
      position: absolute;
      visibility: visible;
      display: inline-block;
      bottom: 50%;
      inset-inline-start: 0;
      margin-inline-start: 0.225rem;
      transform: translateX(100%);
    }

    .demo1.kt-sidebar-collapse .kt-sidebar .kt-sidebar-content {
      overflow: hidden;
    }
  }

  .demo1 .kt-wrapper {
    transition: padding-inline-start var(--sidebar-transition-duration) var(--sidebar-transition-timing);
  }

  .demo1 .kt-header {
    transition: inset-inline-start var(--sidebar-transition-duration) var(--sidebar-transition-timing);
  }
}

@property --tw-border-spacing-x {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-spacing-y {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}

@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}

@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}

@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}

@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}

@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}

@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}

@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}

@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}

@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-leading {
  syntax: "*";
  inherits: false;
}

@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}

@property --tw-tracking {
  syntax: "*";
  inherits: false;
}

@property --tw-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-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}

@property --tw-ease {
  syntax: "*";
  inherits: false;
}

@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}

@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {

    *,
    ::before,
    ::after,
    ::backdrop {
      --tw-border-spacing-x: 0;
      --tw-border-spacing-y: 0;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-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-content: "";
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}
:root,
:host {
    --font-sans: "Work Sans", "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --header-height: 56px;
    --color-yellow-300: oklab(92.66% -0.03708 0.17405);
}

.font-inter {
    font-family: "Inter", sans-serif;
}

.demo1 {
    --header-height: 56px;
}

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

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

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

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

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

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

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

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

.h-half {
    height: 50%;
}

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

@media (width >=48rem) {
    .md\:w-\[200px\] {
        width: 200px;
    }

    .md\:min-w-full {
        min-width: 100%;
    }

    .md\:p-7 {
        padding: calc(var(--spacing) * 7);
    }

    .md\:pb-0 {
        padding-bottom: calc(var(--spacing) * 0);
    }
}

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

.h-full\! {
    height: 100% !important;
}

/* Participant filter dropdown action buttons (Waiting list) */
.waiting-participant-accept,
.waiting-participant-remove,
.inactive-participant-remove {
    border: 0;
    width: 20px;
    height: 20px;
    border-radius: 9999px; /* round */
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    .waiting-participant-accept i,
    .waiting-participant-remove i,
    .inactive-participant-remove i {
        font-size: 10px;
        line-height: 1;
        color: white !important;
    }


    .waiting-participant-accept i {
        font-size: 10px;
        line-height: 1;
        color: #22c55e !important;
    }

    .waiting-participant-remove i,
    .inactive-participant-remove i {
        font-size: 10px;
        line-height: 1;
        color: #dc2626 !important;
    }

.waiting-participant-accept {
    color: white; /* green-500 */
}

    .waiting-participant-accept:hover {
        background-color: #55de8757; /* green-600 */
        color: white !important;
    }

.waiting-participant-remove,
.inactive-participant-remove {
    color: #ef4444; /* red-500 */
}

    .waiting-participant-remove:hover,
    .inactive-participant-remove:hover {
        background-color: var( --color-red-400); /* red-600 */
        color: white !important;
    }

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

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

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

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

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

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

@media (width >=48rem) {
    .md\:flex-col {
        flex-direction: column;
    }
}

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

.hover-border-primary:hover {
    border-color: var(--primary);
}

/* Primary action link: brand color, underline on hover */
a.link-primary-underline {
    color: var(--primary);
}

    a.link-primary-underline:hover {
        text-decoration: underline;
        text-underline-offset: 2px;
    }

.hover-card:hover .hover-text {
    color: var(--primary) !important;
}

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

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

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

.shadow-drop {
    box-shadow: 0px 0px 10px 0px rgba(53, 53, 53, 0.2);
}

.text-3xs {
    font-size: 0.625rem;
    line-height: var(--tw-leading, var(--text-2xs--line-height));
}

.fs-15 {
    font-size: 0.938rem;
}

.-top-\[35px\] {
    top: -35px;
}

.-top-\[20px\] {
    top: -20px;
}

.-top-\[25px\] {
    top: -25px;
}

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

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

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

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

.-left-\[28px\] {
    left: -28px;
}

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

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

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

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

.px-px {
    padding: 0 1px;
}

.p-1 {
    padding: 4px;
}

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

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

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

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

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

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

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

.line-height-1 {
    line-height: 1;
}

.-ml-\[30px\] {
    margin-left: -30px;
}

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

.pb-3px {
    padding-bottom: 3px;
}

.rotate-180 {
    rotate: 180deg;
}

.border-gray-custom {
    border-color: #e5e7eb !important;
}

@media (max-width: 1279px) {
    .xl-hidden {
        display: none;
    }
}

@media (width >= 64rem) {
    .lg\:min-w-12 {
        min-width: 3rem;
    }

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

    .lg\:text-2sm {
        font-size: 14px !important;
    }

    .lg\:mx-3 {
        margin: 0 14px;
    }

    .lg-min-h-42 {
        min-height: 42px !important;
    }

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

@media (width <= 80rem) {
    .px-1\.5 {
        padding-inline: 0;
    }
}

@media (width >=80rem) {
    .rounded-custom {
        border-radius: 0.5rem;
    }
}

.lg\:text-2sm {
    font-size: 10px;
}

.lg\:mx-3 {
    margin: 0 4px;
}

.lg-min-h-42 {
    min-height: 30px;
}

.kt-card-group > .card:last-child {
    border-bottom: 0 !important;
    padding-bottom: calc(var(--spacing) * 2) !important;
}

.kt-switch:before {
    inset-inline-start: calc(var(--spacing) * -0.65);
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.5412);
}

.kt-switch:checked,
.kt-switch[aria-checked='true'] {
    background-color: var(--color-green-500);
}

.kt-switch + span {
    font-size: 0.688rem;
}

.kt-switch:checked + span,
.kt-switch[aria-checked='true'] + span {
    font-size: 0.688rem;
    color: var(--color-green-500);
}

.kt-switch {
    height: calc(var(--spacing) * 4.5);
    width: calc(var(--spacing) * 7.9);
    background-color: var(--color-zinc-400);
}

    .kt-switch:before {
        width: calc(var(--spacing) * 3.9);
        height: calc(var(--spacing) * 3.9);
    }

:is(.kt-switch:checked, .kt-switch[aria-checked='true']):before {
    --tw-translate-x: calc(var(--spacing) * 4.3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
}

.before\:left-\[-48px\]::before {
    left: -48px;
}

.before\:border-m::before {
    content: var(--tw-content);
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 2px;
}

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

.transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
}

.duration-400 {
    --tw-duration: 400ms;
    transition-duration: 400ms;
}

@media (width >=80rem) {
    .kt_aside_left.fixed,
    .kt_aside_right.fixed {
        position: relative;
    }
}

@media (width <=80rem) {
    .kt_aside_left,
    .kt_aside_right {
        z-index: 10;
        border-radius: 0px;
        top: var(--header-height, 56px);
        height: calc(100vh - var(--header-height, 56px));
    }

        .kt_aside_left.shadow-none,
        .kt_aside_right.shadow-none {
            --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);
        }
}

@media (width >=80rem) {
    .xl\:hidden {
        display: none;
    }
}

#second_documents_accordion.h-auto {
    padding-bottom: 0;
}

.dark\:bg-light:is(.dark *) {
    background-color: var(--color-white);
}

.dark\:bg-white:is(.dark *) {
    background-color: var(--color-white);
}

.dark\:bg-dark:is(.dark *) {
    background-color: var(--color-black);
}

.dark\:text-dark:is(.dark *) {
    color: var(--color-black);
}

.dark\:text-white:is(.dark *) {
    color: var(--color-white);
}

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

    .dark\:bg-white:is(.dark *):hover {
        color: var(--color-white);
    }
}

.dark\:text-dark:is(.dark *):is(.kt-btn-outline:hover, .kt-btn-outline.active) svg {
    color: var(--color-white);
}

.dark\:bg-muted:is(.dark *) {
    background-color: var(--muted);
}

.kt-badge-light.kt-badge-success:is(.dark *) {
    background-color: var(--color-green-100);
    color: var(--color-green-800);
}

.kt-badge-light.kt-badge-warning:is(.dark *) {
    background-color: var(--color-yellow-100);
    color: var(--color-yellow-800);
}

.kt-badge-light.kt-badge-info:is(.dark *) {
    background-color: var(--color-violet-100);
    color: var(--color-violet-800);
}


@media (width <=48rem) {
}

/*  */
/* PDF */
/*  */
.app {
    grid-template-rows: auto 1fr;
}

/* Document toolbars - 12px for PDF, Video, Audio (Excel uses separate rule with 35px) */
#divToolbar,
#divVideoToolbar,
#toolbarContainer {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* PDF Toolbar - Metronic Design */
#divToolbar {
    flex-shrink: 0;
    overflow-x: auto;
    overflow-y: hidden;
}

    #divToolbar input[type="range"] {
        cursor: pointer;
    }

@media (max-width: 768px) {
    #divToolbar {
        gap: 8px !important;
        padding: 8px 12px !important;
    }

    .kt-alert-close {
        top: -10px;
        right: -10px;
    }

        .kt-alert-close svg {
            height: 10px;
            width: 10px;
        }
}

@media (max-width: 576px) {
    #divToolbar {
        gap: 6px !important;
        padding: 6px 8px !important;
    }

        #divToolbar .d-flex {
            flex-wrap: wrap;
        }

    .sm\:justify-center {
        justify-content: center !important;
    }

    .h-36 {
        height: 30px;
    }

    .md\:w-full {
        width: 100%;
    }

    .px-4 {
        padding: 0 12px !important;
    }

    .lg-absulate {
        position: absolute;
        top: 5px;
        left: -9px;
        z-index: 1000;
        padding: 2px 4px;
        box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
        border-radius: 4px;
    }
}

input[type=file] {
    display: none
}

input[type=color] {
    width: 22px;
    height: 22px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer
}

input[type=range] {
    width: 100%
}

#searchField {
    min-width: 250px;
}

#stampField {
    min-width: 280px;
}

.doc {
    display: grid;
    place-items: center;
    width: 100%;
    padding: 0;
    gap: 12px;
}

/* Mobile document layout adjustments */
@media (max-width: 768px) {
    .doc {
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .doc {
        gap: 8px;
    }
}

.page-outer {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
    max-width: 100%;
    content-visibility: auto;
    contain-intrinsic-size: auto 800px;
}

/* Mobile page adjustments */
@media (max-width: 768px) {
    .page-outer {
        border-radius: 8px;
        box-shadow: 0 6px 16px rgba(0, 0, 0, .1);
    }
}

@media (max-width: 576px) {
    .page-outer {
        border-radius: 4px;
    }
}

.page-wrap {
    position: relative
}

.page-viewport {
    position: relative;
    transform-origin: 0 0
}

canvas.pdf {
    display: block;
    width: 100%;
    height: auto;
    touch-action: pan-y;
    /* Allow vertical scrolling on touch devices */
}

/* Ensure PDF rendering is smooth on mobile */
@media (max-width: 768px) {
    canvas.pdf {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

.ann-layer {
    position: absolute;
    inset: 0;
    pointer-events: auto;
    z-index: 1
}

    .ann-layer svg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        overflow: visible;
        pointer-events: auto
    }

        .ann-layer svg g.svg-delete {
            pointer-events: auto;
            cursor: pointer;
            display: none
        }

            .ann-layer svg g.svg-delete[data-visible=true] {
                display: block
            }

.ann,
.ann-text {
    position: absolute;
    user-select: none;
    cursor: move;
    z-index: 2
}

    .ann img {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 8px;
        box-shadow: 0 6px 18px rgba(0, 0, 0, .18)
    }

    .ann .delete,
    .ann .resize,
    .ann-text .delete,
    .ann-text .resize {
        display: none
    }

    .ann[data-selected=true] .delete,
    .ann[data-selected=true] .resize,
    .ann-text[data-selected=true] .delete,
    .ann-text[data-selected=true] .resize {
        display: block
    }

    /* Locked annotation styles - hide controls only */
    .ann[data-locked=true] .delete,
    .ann[data-locked=true] .resize,
    .ann-text[data-locked=true] .delete,
    .ann-text[data-locked=true] .resize {
        display: none !important
    }

    .ann-text[data-locked=true] .text {
        pointer-events: none
    }

.delete {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    border: none;
    background: #ef4444;
    color: #fff;
    cursor: pointer;
    display: grid;
    place-items: center;
    font-weight: 700;
    touch-action: none;
    /* Prevent default touch actions */
}

.resize {
    position: absolute;
    right: -8px;
    bottom: -8px;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    background: #60a5fa;
    border: 2px solid #fff;
    cursor: nwse-resize;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
    touch-action: none;
    /* Prevent default touch actions */
}

/* Mobile annotation controls - larger touch targets */
@media (max-width: 768px) {
    .delete {
        width: 32px;
        height: 32px;
        top: -12px;
        right: -12px;
        font-size: 18px;
    }

    .resize {
        width: 24px;
        height: 24px;
        right: -12px;
        bottom: -12px;
    }
}

.ann-text .text {
    min-width: 120px;
    min-height: 36px;
    padding: 6px 8px;
    background: transparent;
    color: #111827;
    font-size: 18px;
    line-height: 1.25;
    border-radius: 6px;
    outline: 1px dashed rgba(96, 165, 250, 0);
    overflow-wrap: break-word;
    white-space: pre-wrap
}

.ann-text[data-selected=true] .text {
    outline-color: rgba(96, 165, 250, .9)
}

/* Empty/Placeholder text annotation styles - always visible */
.ann-text[data-placeholder=true] {
    background: rgba(255, 255, 255, 0.95);
    border: 2px dashed #60a5fa;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

    .ann-text[data-placeholder=true] .text {
        color: #9ca3af !important;
        font-style: italic;
    }

    .ann-text[data-placeholder=true][data-selected=true] {
        border-color: #3b82f6;
        border-style: solid;
        box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
    }

/* Non-empty text annotation - subtle background for visibility */
.ann-text[data-placeholder=false] {
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(96, 165, 250, 0.3);
    border-radius: 6px;
}

    .ann-text[data-placeholder=false][data-selected=true] {
        border-color: #60a5fa;
        box-shadow: 0 2px 8px rgba(96, 165, 250, 0.2);
    }

.hit {
    position: absolute;
    background: rgba(255, 230, 0, .38);
    mix-blend-mode: multiply;
    pointer-events: none;
    z-index: 1;
    border-radius: 2px
}


/* Left Active */

.document-active {
    border: 1px solid var(--primary);
    border-radius: 0.375rem;
    background-color: rgba(59, 130, 246, 0.1);
    position: relative;
}


.live-document {
    background-color: #00c950;
    position: absolute;
    top: 4px;
    right: 4px;
    color: white;
    line-height: 1;
    font-size: 12px;
    padding: 2px 4px;
    border-radius: 4px;
    text-transform: uppercase;
}

.document-active live-document {
    display: block;
}

:root,
:host {
    --font-sans: "Work Sans", "Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --header-height: 56px;
    --color-yellow-300: oklab(92.66% -0.03708 0.17405);
}

.font-inter {
    font-family: "Inter", sans-serif;
}

.demo1 {
    --header-height: 56px;
}

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

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

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

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

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

.h-\[1px\] {
    height: 1px;
}

.h-\[2px\] {
    height: 2px;
}

.h-\[56px\] {
    height: 56px;
}

.min-h-\[75px\] {
    height: 75px;
}

.h-half {
    height: 50%;
}

.min-w-\[340px\] {
    min-width: 340px;
}

@media (width >=48rem) {
    .md\:w-\[200px\] {
        width: 200px;
    }

    .md\:min-w-full {
        min-width: 100%;
    }

    .md\:p-7 {
        padding: calc(var(--spacing) * 7);
    }

    .md\:pb-0 {
        padding-bottom: calc(var(--spacing) * 0);
    }
}

.h-\[200px\] {
    height: 200px;
}

.h-full\! {
    height: 100% !important;
}

.min-h-\[200px\] {
    min-height: 200px;
}

.min-h-\[100px\] {
    min-height: 100px;
}

.min-h-\[150px\] {
    min-height: 150px;
}

.min-h-\[500px\] {
    min-height: 500px;
}

@media (width >=48rem) {
    .md\:min-h-\[500px\] {
        min-height: 500px;
    }
}

.max-h-\[100vh\] {
    max-height: 100vh;
}

@media (width >=48rem) {
    .md\:flex-col {
        flex-direction: column;
    }
}

.border-blue-200 {
    border-color: var(--color-blue-100);
}

.hover-border-primary:hover {
    border-color: var(--primary);
}

/* Primary action link: brand color, underline on hover */
a.link-primary-underline {
    color: var(--primary);
}

    a.link-primary-underline:hover {
        text-decoration: underline;
        text-underline-offset: 2px;
    }

.hover-card:hover .hover-text {
    color: var(--primary) !important;
}

.bg-light {
    background-color: var(--color-blue-50);
}

.bg-gray-400 {
    background-color: var(--accent);
}

.bg-yellow-300 {
    background-color: var(--color-yellow-300);
}

.shadow-drop {
    box-shadow: 0px 0px 10px 0px rgba(53, 53, 53, 0.2);
}

.text-3xs {
    font-size: 0.625rem;
    line-height: var(--tw-leading, var(--text-2xs--line-height));
}

.fs-15 {
    font-size: 0.938rem;
}

.-top-\[35px\] {
    top: -35px;
}

.-top-\[20px\] {
    top: -20px;
}

.-top-\[25px\] {
    top: -25px;
}

.top-1 {
    top: calc(var(--spacing) * 1);
}

.left-1 {
    left: calc(var(--spacing) * 1);
}

.-left-5 {
    left: calc(var(--spacing) * -5);
}

.bottom-1 {
    bottom: calc(var(--spacing) * 1);
}

.-left-\[28px\] {
    left: -28px;
}

.-right-\[38px\] {
    right: -38px;
}

.-right-1 {
    right: calc(var(--spacing) * -1);
}

.right-1 {
    right: calc(var(--spacing) * 1);
}

.right-2 {
    right: calc(var(--spacing) * 2);
}

.px-px {
    padding: 0 1px;
}

.p-1 {
    padding: 4px;
}

.py-4\.5 {
    padding-block: calc(var(--spacing) * 4.5);
}

.px-4\.5 {
    padding-inline: calc(var(--spacing) * 4.5);
}

.pt-4\.5 {
    padding-top: calc(var(--spacing) * 4.5);
}

.pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
}

.z-2 {
    z-index: 2;
}

.cursor-row-resize {
    cursor: row-resize;
}

.cursor-col-resize {
    cursor: col-resize;
}

.line-height-1 {
    line-height: 1;
}

.-ml-\[30px\] {
    margin-left: -30px;
}

.-mb-\[22px\] {
    margin-bottom: -22px;
}

.pb-3px {
    padding-bottom: 3px;
}

.rotate-180 {
    rotate: 180deg;
}

.border-gray-custom {
    border-color: #e5e7eb !important;
}

@media (max-width: 1279px) {
    .xl-hidden {
        display: none;
    }
}

@media (max-width: 770px) {
    .xs-hidden {
        display: none;
    }
}

@media (width >= 64rem) {
    .lg\:min-w-12 {
        min-width: 3rem;
    }

    .lg\:justify-between {
        justify-content: space-between;
    }

    .lg\:text-2sm {
        font-size: 14px !important;
    }

    .lg\:mx-3 {
        margin: 0 14px;
    }

    .lg-min-h-42 {
        min-height: 42px !important;
    }

    .h-\[60px\] {
        height: 60px;
    }
}

@media (width <= 80rem) {
    .px-1\.5 {
        padding-inline: 0;
    }
}

@media (width >=80rem) {
    .rounded-custom {
        border-radius: 0.5rem;
    }
}

.lg\:text-2sm {
    font-size: 10px;
}

.lg\:mx-3 {
    margin: 0 4px;
}

.lg-min-h-42 {
    min-height: 30px;
}

.kt-card-group > .card:last-child {
    border-bottom: 0 !important;
    padding-bottom: calc(var(--spacing) * 2) !important;
}

.kt-switch:before {
    inset-inline-start: calc(var(--spacing) * -0.65);
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.5412);
}

.kt-switch:checked,
.kt-switch[aria-checked='true'] {
    background-color: var(--color-green-500);
}

.kt-switch + span {
    font-size: 0.688rem;
}

.kt-switch:checked + span,
.kt-switch[aria-checked='true'] + span {
    font-size: 0.688rem;
    color: var(--color-green-500);
}

.kt-switch {
    height: calc(var(--spacing) * 4.5);
    width: calc(var(--spacing) * 7.9);
    background-color: var(--color-zinc-400);
}

    .kt-switch:before {
        width: calc(var(--spacing) * 3.9);
        height: calc(var(--spacing) * 3.9);
    }

:is(.kt-switch:checked, .kt-switch[aria-checked='true']):before {
    --tw-translate-x: calc(var(--spacing) * 4.3);
    translate: var(--tw-translate-x) var(--tw-translate-y);
}

.before\:left-\[-48px\]::before {
    left: -48px;
}

.before\:border-m::before {
    content: var(--tw-content);
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 2px;
}

.before\:border-dashed::before {
    --tw-border-style: dashed;
    border-style: dashed;
}

.transition-\[width\] {
    transition-property: width;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
}

.duration-400 {
    --tw-duration: 400ms;
    transition-duration: 400ms;
}

@media (width >=80rem) {
    .kt_aside_left.fixed,
    .kt_aside_right.fixed {
        position: relative;
    }
}

@media (width <=80rem) {
    .kt_aside_left,
    .kt_aside_right {
        z-index: 10;
        top: var(--header-height, 56px);
        height: calc(100vh - var(--header-height, 56px));
    }

        .kt_aside_left.shadow-none,
        .kt_aside_right.shadow-none {
            --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);
        }
}

@media (width >=80rem) {
    .xl\:hidden {
        display: none;
    }
}

#second_documents_accordion.h-auto {
    padding-bottom: 0;
}

.dark\:bg-light:is(.dark *) {
    background-color: var(--color-white);
}

.dark\:bg-white:is(.dark *) {
    background-color: var(--color-white);
}

.dark\:bg-dark:is(.dark *) {
    background-color: var(--color-black);
}

.dark\:text-dark:is(.dark *) {
    color: var(--color-black);
}

.dark\:text-white:is(.dark *) {
    color: var(--color-white);
}

@media (hover: hover) {
    .dark\:bg-white:is(.dark *):hover {
        background-color: var(--primary);
    }

    .dark\:bg-white:is(.dark *):hover {
        color: var(--color-white);
    }
}

.dark\:text-dark:is(.dark *):is(.kt-btn-outline:hover, .kt-btn-outline.active) svg {
    color: var(--color-white);
}

.dark\:bg-muted:is(.dark *) {
    background-color: var(--muted);
}

.kt-badge-light.kt-badge-success:is(.dark *) {
    background-color: var(--color-green-100);
    color: var(--color-green-800);
}

.kt-badge-light.kt-badge-warning:is(.dark *) {
    background-color: var(--color-yellow-100);
    color: var(--color-yellow-800);
}

.kt-badge-light.kt-badge-info:is(.dark *) {
    background-color: var(--color-violet-100);
    color: var(--color-violet-800);
}


@media (width <=48rem) {
}

/*  */
/* PDF */
/*  */
.app {
    grid-template-rows: auto 1fr;
}

/* Document toolbars - 12px for PDF, Video, Audio (Excel uses separate rule with 35px) */
#divToolbar,
#divVideoToolbar,
#toolbarContainer {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* PDF Toolbar - Metronic Design */
#divToolbar {
    flex-shrink: 0;
    overflow-x: auto;
    overflow-y: hidden;
}

    #divToolbar input[type="range"] {
        cursor: pointer;
    }

@media (max-width: 768px) {
    #divToolbar {
        gap: 8px !important;
        padding: 8px 12px !important;
    }

    .kt-alert-close {
        top: -10px;
        right: -10px;
    }

        .kt-alert-close svg {
            height: 10px;
            width: 10px;
        }
}

@media (max-width: 576px) {
    #divToolbar {
        gap: 6px !important;
        padding: 6px 8px !important;
    }

        #divToolbar .d-flex {
            flex-wrap: wrap;
        }

    .sm\:justify-center {
        justify-content: center !important;
    }

    .h-36 {
        height: 30px;
    }

    .md\:w-full {
        width: 100%;
    }

    .px-4 {
        padding: 0 12px !important;
    }

    .lg-absulate {
        position: absolute;
        top: 5px;
        left: -9px;
        z-index: 1000;
        padding: 2px 4px;
        box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
        border-radius: 4px;
    }
}

input[type=file] {
    display: none
}

input[type=color] {
    width: 22px;
    height: 22px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer
}

input[type=range] {
    width: 100%
}

#searchField {
    min-width: 250px;
}

#stampField {
    min-width: 280px;
}

.doc {
    display: grid;
    place-items: center;
    width: 100%;
    padding: 0;
    gap: 12px;
}

/* Mobile document layout adjustments */
@media (max-width: 768px) {
    .doc {
        gap: 10px;
    }
}

@media (max-width: 576px) {
    .doc {
        gap: 8px;
    }
}

.page-outer {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
    max-width: 100%;
    content-visibility: auto;
    contain-intrinsic-size: auto 800px;
}

/* Mobile page adjustments */
@media (max-width: 768px) {
    .page-outer {
        border-radius: 8px;
        box-shadow: 0 6px 16px rgba(0, 0, 0, .1);
    }
}

@media (max-width: 576px) {
    .page-outer {
        border-radius: 4px;
    }
}

.page-wrap {
    position: relative
}

.page-viewport {
    position: relative;
    transform-origin: 0 0
}

canvas.pdf {
    display: block;
    width: 100%;
    height: auto;
    touch-action: pan-y;
    /* Allow vertical scrolling on touch devices */
}

/* Ensure PDF rendering is smooth on mobile */
@media (max-width: 768px) {
    canvas.pdf {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

.ann-layer {
    position: absolute;
    inset: 0;
    pointer-events: auto;
    z-index: 1
}

    .ann-layer svg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
        overflow: visible;
        pointer-events: auto
    }

        .ann-layer svg g.svg-delete {
            pointer-events: auto;
            cursor: pointer;
            display: none
        }

            .ann-layer svg g.svg-delete[data-visible=true] {
                display: block
            }

.ann,
.ann-text {
    position: absolute;
    user-select: none;
    cursor: move;
    z-index: 2
}

    .ann img {
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 8px;
        box-shadow: 0 6px 18px rgba(0, 0, 0, .18)
    }

    .ann .delete,
    .ann .resize,
    .ann-text .delete,
    .ann-text .resize {
        display: none
    }

    .ann[data-selected=true] .delete,
    .ann[data-selected=true] .resize,
    .ann-text[data-selected=true] .delete,
    .ann-text[data-selected=true] .resize {
        display: block
    }

    /* Locked annotation styles - hide controls only */
    .ann[data-locked=true] .delete,
    .ann[data-locked=true] .resize,
    .ann-text[data-locked=true] .delete,
    .ann-text[data-locked=true] .resize {
        display: none !important
    }

    .ann-text[data-locked=true] .text {
        pointer-events: none
    }

.delete {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    border: none;
    background: #ef4444;
    color: #fff;
    cursor: pointer;
    display: grid;
    place-items: center;
    font-weight: 700;
    touch-action: none;
    /* Prevent default touch actions */
}

.resize {
    position: absolute;
    right: -8px;
    bottom: -8px;
    width: 16px;
    height: 16px;
    border-radius: 4px;
    background: #60a5fa;
    border: 2px solid #fff;
    cursor: nwse-resize;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
    touch-action: none;
    /* Prevent default touch actions */
}

/* Mobile annotation controls - larger touch targets */
@media (max-width: 768px) {
    .delete {
        width: 32px;
        height: 32px;
        top: -12px;
        right: -12px;
        font-size: 18px;
    }

    .resize {
        width: 24px;
        height: 24px;
        right: -12px;
        bottom: -12px;
    }
}

.ann-text .text {
    min-width: 120px;
    min-height: 36px;
    padding: 6px 8px;
    background: transparent;
    color: #111827;
    font-size: 18px;
    line-height: 1.25;
    border-radius: 6px;
    outline: 1px dashed rgba(96, 165, 250, 0);
    overflow-wrap: break-word;
    white-space: pre-wrap
}

.ann-text[data-selected=true] .text {
    outline-color: rgba(96, 165, 250, .9)
}

/* Empty/Placeholder text annotation styles - always visible */
.ann-text[data-placeholder=true] {
    background: rgba(255, 255, 255, 0.95);
    border: 2px dashed #60a5fa;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

    .ann-text[data-placeholder=true] .text {
        color: #9ca3af !important;
        font-style: italic;
    }

    .ann-text[data-placeholder=true][data-selected=true] {
        border-color: #3b82f6;
        border-style: solid;
        box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
    }

/* Non-empty text annotation - subtle background for visibility */
.ann-text[data-placeholder=false] {
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(96, 165, 250, 0.3);
    border-radius: 6px;
}

    .ann-text[data-placeholder=false][data-selected=true] {
        border-color: #60a5fa;
        box-shadow: 0 2px 8px rgba(96, 165, 250, 0.2);
    }

.hit {
    position: absolute;
    background: rgba(255, 230, 0, .38);
    mix-blend-mode: multiply;
    pointer-events: none;
    z-index: 1;
    border-radius: 2px
}


/* Left Active */

.document-active {
    padding: 6px;
    border: 1px solid var(--primary);
    border-radius: 0.375rem;
    background-color: rgba(59, 130, 246, 0.1);
    position: relative;
}

.live-document {
    background-color: #00c950;
    position: absolute;
    top: 4px;
    right: 4px;
    color: white;
    line-height: 1;
    font-size: 12px;
    padding: 2px 4px;
    border-radius: 4px;
    text-transform: uppercase;
}

.presenter-card {
    border-radius: 0.375rem;
    background-color: rgba(59, 130, 246, 0.1);
    position: relative;
}

.document {
    padding: 6px;
    cursor: pointer;
}

@keyframes shimmer {
    0% {
        background-position: -1000px 0;
    }

    100% {
        background-position: 1000px 0;
    }
}

.pdf-skeleton-page .shimmer {
    background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
    background-size: 2000px 100%;
    animation: shimmer 2s infinite;
}

/* PDF page skeleton overlay – line-style placeholder until page is rendered */
.pdf-page-skeleton {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 12px;
    padding: 24px 20px;
    box-sizing: border-box;
    border-radius: inherit;
    background: #f9fafb;
}

    .pdf-page-skeleton .pdf-skeleton-line {
        height: 12px;
        border-radius: 6px;
        min-width: 40%;
        flex-shrink: 0;
    }

        .pdf-page-skeleton .pdf-skeleton-line.shimmer {
            background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
            background-size: 2000px 100%;
            animation: shimmer 2s infinite;
        }

    .pdf-page-skeleton.pdf-skeleton-loaded {
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease;
    }

/* Full-page skeleton shown in #doc immediately when load starts (before build) */
.pdf-loading-skeleton {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 12px;
    padding: 24px 20px;
    box-sizing: border-box;
    min-height: 60vh;
    width: 100%;
    /*   max-width: 800px;*/
    margin: 0 auto;
    background: #f9fafb;
}

    .pdf-loading-skeleton .pdf-skeleton-line {
        height: 12px;
        border-radius: 6px;
        min-width: 40%;
        flex-shrink: 0;
    }

        .pdf-loading-skeleton .pdf-skeleton-line.shimmer {
            background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
            background-size: 2000px 100%;
            animation: shimmer 2s infinite;
        }

/* PDF load error state (3.4) – message + Retry in document area */
.pdf-error-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    min-height: 200px;
    padding: 2rem;
    text-align: center;
    background: #f9fafb;
    border-radius: 12px;
    margin: 1rem auto;
    max-width: 480px;
}

    .pdf-error-state .pdf-error-message {
        color: var(--color-gray-700, #374151);
        font-size: 0.9375rem;
        margin: 0;
    }

    .pdf-error-state .kt-btn {
        flex-shrink: 0;
    }

.grayColor {
    color: gray;
}


.access-wait-icon {
    font-size: 8rem;
    color: var(--primary);
    display: block;
}

.access-sucess-icon {
    font-size: 8rem;
    color: var(--color-green-500);
    display: block;
}


.access-denied-icon {
    font-size: 8rem;
    color: var(--destructive);
    display: block;
}

.access-denied-title {
    font-size: 2.5rem;
    line-height: 1.2;
}

@media (max-width: 768px) {

    .access-wait-icon {
        font-size: 5rem;
    }

    .access-denied-icon {
        font-size: 5rem;
    }

    .access-denied-title {
        font-size: 2rem;
    }
}

.declined-icon {
    font-size: 6rem;
    color: var(--destructive);
    display: block;
}

@media (max-width: 768px) {
    .declined-icon {
        font-size: 4.5rem;
    }
}

.select_color span.color_box {
    width: 30px;
    height: 30px;
    border-radius: 3px;
    border: 1px solid rgba(0, 0, 0, 0.06);
    margin-right: 10px;
    cursor: pointer;
    display: inline-block;
}

    .select_color span.color_box:hover, .select_color span.color_box.selected {
        border-color: #000000;
    }

.sticker.sticker-stamp {
    color: #2e353b;
    font-size: 18px;
    padding: 20px 15px 15px;
    line-height: 24px;
    min-width: 160px;
    text-transform: uppercase;
}

.sticker {
    background-color: #FFE210;
    border: 2px solid #000000;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 700;
    padding: 2px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}

.d-none {
    display: none !important;
}

/* ============================================ */
/* Document Close Button - Match Participant Close */
/* ============================================ */

.document-close {
    flex-shrink: 0;
    width: 1.1rem; /* w-6 = 24px */
    height: 1.1rem; /* h-6 = 24px */
    min-width: 16px;
    min-height: 16px;
    border-radius: 9999px;
    background-color: var(--color-red-400); /* bg-red-500 */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border: 0;
    padding: 0;
    margin: 0;
    transition: background-color 0.2s ease;
}

    .document-close:hover {
        background-color: var(--color-red-600); /* hover:bg-red-600 */
    }

    .document-close i {
        font-size: 10px;
        color: white; /* bg-red-500 */
        line-height: 1;
    }

/* Participant count badge blink animation */
@keyframes badgeBlink {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.3;
        transform: scale(1.2);
    }
}

#participantCountBadge {
    background-color: var(--color-red-400);
    top: -10px;
    right: -7px;
    z-index: 99;
}

    #participantCountBadge.badge-blink {
        animation: badgeBlink 5.0s ease-in-out 5;
    }

/* ============================================ */
/* Colorful Avatar Circles - Random Flat Colors */
/* ============================================ */

/* Flat colorful backgrounds for avatars - using nth-child for variety */
.participant-card .kt-badge-success,
.participant-card .kt-badge-warning,
.participant-card .kt-badge-info {
    position: relative;
    font-weight: bold;
    transition: all 0.3s ease;
}

/* Flat colors for avatars - using nth-child for variety */
.participant-card:nth-child(1) .kt-badge-success,
.participant-card:nth-child(1) .kt-badge-warning,
.participant-card:nth-child(1) .kt-badge-info {
    background: #667eea !important;
    color: white !important;
}

.participant-card:nth-child(2) .kt-badge-success,
.participant-card:nth-child(2) .kt-badge-warning,
.participant-card:nth-child(2) .kt-badge-info {
    background: #f5576c !important;
    color: white !important;
}

.participant-card:nth-child(3) .kt-badge-success,
.participant-card:nth-child(3) .kt-badge-warning,
.participant-card:nth-child(3) .kt-badge-info {
    background: #4facfe !important;
    color: white !important;
}

.participant-card:nth-child(4) .kt-badge-success,
.participant-card:nth-child(4) .kt-badge-warning,
.participant-card:nth-child(4) .kt-badge-info {
    background: #fa709a !important;
    color: white !important;
}

.participant-card:nth-child(5) .kt-badge-success,
.participant-card:nth-child(5) .kt-badge-warning,
.participant-card:nth-child(5) .kt-badge-info {
    background: #30cfd0 !important;
    color: white !important;
}

.participant-card:nth-child(6) .kt-badge-success,
.participant-card:nth-child(6) .kt-badge-warning,
.participant-card:nth-child(6) .kt-badge-info {
    background: #a8edea !important;
    color: #333 !important;
}

.participant-card:nth-child(7) .kt-badge-success,
.participant-card:nth-child(7) .kt-badge-warning,
.participant-card:nth-child(7) .kt-badge-info {
    background: #fcb69f !important;
    color: #333 !important;
}

.participant-card:nth-child(8) .kt-badge-success,
.participant-card:nth-child(8) .kt-badge-warning,
.participant-card:nth-child(8) .kt-badge-info {
    background: #ff6a88 !important;
    color: white !important;
}

.participant-card:nth-child(9) .kt-badge-success,
.participant-card:nth-child(9) .kt-badge-warning,
.participant-card:nth-child(9) .kt-badge-info {
    background: #a1c4fd !important;
    color: #333 !important;
}

.participant-card:nth-child(10) .kt-badge-success,
.participant-card:nth-child(10) .kt-badge-warning,
.participant-card:nth-child(10) .kt-badge-info {
    background: #84fab0 !important;
    color: #333 !important;
}

/* For more than 10 participants, cycle through colors */
.participant-card:nth-child(11) .kt-badge-success,
.participant-card:nth-child(11) .kt-badge-warning,
.participant-card:nth-child(11) .kt-badge-info {
    background: #667eea !important;
    color: white !important;
}

.participant-card:nth-child(12) .kt-badge-success,
.participant-card:nth-child(12) .kt-badge-warning,
.participant-card:nth-child(12) .kt-badge-info {
    background: #f5576c !important;
    color: white !important;
}

/* Continue pattern for more participants - cycles every 10 */
.participant-card:nth-child(n+13) .kt-badge-success,
.participant-card:nth-child(n+13) .kt-badge-warning,
.participant-card:nth-child(n+13) .kt-badge-info {
    background: #4facfe !important;
    color: white !important;
}

/* Hover effects */
.participant-card:hover .kt-badge-success,
.participant-card:hover .kt-badge-warning,
.participant-card:hover .kt-badge-info {
    transform: scale(1.1);
}

/* Participant Filter Dropdown Widths */
#participantFilterDropdown {
    width: 450px !important;
    max-width: 450px !important;
    min-width: 450px !important;
}

.waiting-participant-role,
.inactive-participant-role {
    min-width: 180px !important;
    width: 300px !important;
    max-width: 300px !important;
}

    /* KTSelect wrapper width */
    .waiting-participant-role + .kt-select,
    .inactive-participant-role + .kt-select,
    .kt-select:has(.waiting-participant-role),
    .kt-select:has(.inactive-participant-role) {
        min-width: 180px !important;
        width: 300px !important;
        max-width: 300px !important;
    }

#participantFilterDropdownContent {
    overflow-y: auto;
    overflow-x: hidden;
}

/* Remove white background for stamp images when resizing */
.ann[data-stamp="true"] {
    background: transparent !important;
}

    .ann[data-stamp="true"] img {
        object-fit: fill;
        background: transparent !important;
        box-shadow: none;
        display: block;
        width: 100%;
        height: 100%;
    }

.field-validation-error {
    color: #ff0000 !important;
}

/* PDF progressive loading overlay */
.pdf-loading-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.95);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    transition: opacity 0.3s ease;
}

    .pdf-loading-overlay.pdf-loading-fade-out {
        opacity: 0;
        pointer-events: none;
    }

.pdf-loading-content {
    text-align: center;
    max-width: 400px;
    padding: 2rem;
}

.pdf-loading-spinner {
    width: 50px;
    height: 50px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    animation: pdf-spin 1s linear infinite;
    margin: 0 auto 1rem;
}

@keyframes pdf-spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.pdf-loading-progress {
    width: 100%;
    height: 8px;
    background: #f3f3f3;
    border-radius: 4px;
    overflow: hidden;
    margin: 1rem 0;
}

.pdf-progress-bar {
    height: 100%;
    background: linear-gradient(90deg, #3498db, #2ecc71);
    transition: width 0.3s ease;
    width: 0%;
}

.pdf-loading-text {
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.5rem;
}

.pdf-loading-details {
    font-size: 0.9rem;
    color: #666;
    margin-top: 0.5rem;
    min-height: 1.5em;
}

/* Prevent document content (Excel headers, etc.) from overriding left/right document panels */
.kt_aside_left,
.kt_aside_right {
    border-radius: 12px;
}

/* Accordion: show only one icon (up when collapsed, down when expanded) */
.secondSection {
    position: relative;
    overflow: hidden;
    width: 30px;
    height: 25px;
    min-width: calc(var(--spacing, 0.25rem) * 3.5);
}

    .secondSection .kt-accordion-indicator-on,
    .secondSection .kt-accordion-indicator-off {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        margin: 0;
    }

    .secondSection .kt-accordion-indicator-on {
        display: block !important;
    }

    .secondSection .kt-accordion-indicator-off {
        display: none !important;
    }

.kt-accordion-item.active .secondSection .kt-accordion-indicator-on {
    display: none !important;
}

.kt-accordion-item.active .secondSection .kt-accordion-indicator-off {
    display: block !important;
}

/*PDF CSS*/

#officialPdfViewerContainer #outerContainer {
    position: absolute;
    inset: 0;
    background: #fff !important;
}

.page {
    background-color: var(--body-bg-color);
}

/* PDF.js text layer — keep default line-height:1 from viewer.css for proper selection alignment */
/* NOTE: Do NOT add mix-blend-mode to .textLayer — it creates a stacking context
   that breaks PDF.js text span positioning and selection hit-testing.
   The official PDF.js viewer does not use it. Search highlights (.hit class)
   already have their own mix-blend-mode: multiply. */

/* Findbar: use project CSS framework colors */
#findbar {
    background-color: var(--background, #fff) !important;
    border-color: var(--border, #e5e7eb) !important;
}

    #findbar #findInput {
        background-color: var(--background, #fff) !important;
        color: var(--foreground, #111) !important;
        border-color: var(--border, #e5e7eb) !important;
    }

    #findbar .toggleButton {
        --toggled-btn-color: var(--primary-foreground, #fff) !important;
        --toggled-btn-bg-color: var(--primary, #3b82f6) !important;
        --button-hover-color: color-mix(in oklab, var(--muted, #f4f4f5) 80%, var(--foreground, #111) 20%) !important;
        background-color: var(--muted, #f4f4f5) !important;
        color: var(--muted-foreground, #71717a) !important;
    }

        #findbar .toggleButton:has( > input:checked) {
            background-color: var(--primary, #3b82f6) !important;
            color: var(--primary-foreground, #fff) !important;
        }

    #findbar #findResultsCount {
        background-color: var(--muted, #f4f4f5) !important;
        color: var(--muted-foreground, #71717a) !important;
    }
    /* Findbar loader: position at end of textbox, vertically centered */
    #findbar .loadingInput:has( > [data-status="pending"])::after {
        inset-inline-start: auto !important;
        inset-inline-end: 8px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    #findbar .loadingInput:has( > [data-status="pending"]) #findInput {
        padding-inline-end: 28px !important;
    }
/* Search highlight colors: let viewer.css defaults apply (pink for matches, green for selected).
   Do NOT override --highlight-bg-color or --highlight-selected-bg-color here. */

/* Hide PDF.js CSS-mask icons on main toolbar buttons (using KT icons instead) */
#toolbarContainer .toolbarButton::before, #viewsManagerHeader {
    display: none !important;
}

:is(:is(#viewsManager #viewsManagerContent) #thumbnailsView) > .thumbnail {
    width: initial !important;
}

/* Hidden elements */
#printButton, #downloadButton, #secondaryToolbarToggle,
#toolbarViewerRight > .hiddenMediumView {
    display: none !important;
}

/* Hide PDF.js built-in editor buttons — we use our own custom toolbar instead */
#editorModeButtons {
    display: none !important;
}

/* Hide undo bar (Image removed / Undo toast) — undo functionality not desired */
#editorUndoBar {
    display: none !important;
}

/* Custom annotation toolbar: active tool button */
.ae-tool-btn.ae-active {
    background-color: #3b82f6 !important;
    color: white !important;
    border-color: #3b82f6 !important;
}

    .ae-tool-btn.ae-active i,
    .ae-tool-btn.ae-active span,
    .ae-tool-btn.ae-active svg {
        color: white !important;
    }

/* Locked annotations: hide resize handles, Alt text toolbar, delete button */
.annotationEditorLayer .ae-locked .resizers,
.annotationEditorLayer .ae-locked .editToolbar {
    display: none !important;
}
/* Remove selection border and hover outline on locked annotations */
.annotationEditorLayer .ae-locked.selectedEditor,
.annotationEditorLayer .ae-locked:hover {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

    .annotationEditorLayer .ae-locked.selectedEditor::before,
    .annotationEditorLayer .ae-locked:hover::before {
        display: none !important;
    }

/* Hide Alt text option from annotation editor toolbar */
.annotationEditorLayer .editToolbar .altText,
.annotationEditorLayer .editToolbar .buttons .altText {
    display: none !important;
}

/* === Desired annotation UI: single resize handle + red delete at top-right === */
/* Hide 7 of 8 resizers — show only bottom-right (light blue square) */
.annotationEditorLayer .stampEditor > .resizers > .resizer:not(.bottomRight),
.annotationEditorLayer .freeTextEditor > .resizers > .resizer:not(.bottomRight),
.annotationEditorLayer .highlightEditor > .resizers > .resizer:not(.bottomRight) {
    display: none !important;
}
/* Style bottom-right resizer as light blue square */
.annotationEditorLayer .stampEditor > .resizers > .resizer.bottomRight,
.annotationEditorLayer .freeTextEditor > .resizers > .resizer.bottomRight,
.annotationEditorLayer .highlightEditor > .resizers > .resizer.bottomRight {
    background: #7dd3fc !important;
    border: 1px solid #0ea5e9 !important;
    width: 10px !important;
    height: 10px !important;
    border-radius: 2px !important;
}

:is(:is(:is(:is(.annotationEditorLayer :is(.freeTextEditor,.inkEditor,.stampEditor,.highlightEditor,.signatureEditor),.textLayer) .editToolbar) .buttons) .basic)::before {
    display: block !important;
}

/* Disable resize for pen (ink) annotations — delete still works */
.annotationEditorLayer .inkEditor > .resizers {
    display: none !important;
    pointer-events: none !important;
}
/* Remove blue selection rectangle for ink — keep only delete and color toolbar */
.annotationEditorLayer .inkEditor.selectedEditor,
.annotationEditorLayer .inkEditor.selectedEditor::before,
.annotationEditorLayer .inkEditor:hover:not(.selectedEditor),
.annotationEditorLayer .inkEditor:hover:not(.selectedEditor)::before {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

#viewerContainer {
    overflow: auto;
    position: absolute;
    inset: var(--toolbar-height) 0 0;
    outline: none;
    z-index: 0;
}

/* Hide PDF.js native loadingBar — we use our own progress rail */
#loadingBar {
    display: none !important;
}

/* ── PDF Loading Overlay ─────────────────────────────────────────── */
#pdfLoadingOverlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 3 !important;
    background: #fff !important;
    overflow: hidden !important;
    display: none;
    box-sizing: border-box;
}

/* ── Slim progress bar pinned to top ─────────────────────────── */
.pdf-progress-rail {
    display: none;
}

.pdf-progress-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #3b82f6, #93c5fd);
    border-radius: 0 3px 3px 0;
    transition: width 350ms ease;
    position: relative;
}

.pdf-progress-badge {
    position: absolute;
    top: 6px;
    left: 0%;
    transform: translateX(-50%);
    font-size: 10px;
    font-weight: 700;
    color: #3b82f6;
    background: #fff;
    border: 1px solid #bfdbfe;
    border-radius: 4px;
    padding: 2px 6px;
    line-height: 1.4;
    white-space: nowrap;
    pointer-events: none;
    transition: left 350ms ease;
    box-shadow: 0 1px 4px rgba(59,130,246,0.22);
    z-index: 2;
}

/* ── Skeleton content area — fills the full viewer ───────────── */
.pdf-sk-wrapper {
    position: absolute;
    inset: 0;
    padding: 28px 36px;
    box-sizing: border-box;
    overflow: hidden;
}

/* All skeleton bones share the shimmer */
.pdf-sk-bone {
    background: linear-gradient( 90deg, #dce3ed 25%, #edf0f5 50%, #dce3ed 75% );
    background-size: 400% 100%;
    animation: pdf-sk-shimmer 1.8s ease-in-out infinite;
    border-radius: 10px;
    display: block;
}

@keyframes pdf-sk-shimmer {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: -100% 0;
    }
}

.pdf-sk-title {
    height: 9px;
    width: 42%;
    margin-bottom: 18px;
}

.pdf-sk-line {
    height: 14px;
    margin-bottom: 10px;
    border-radius: 10px;
}

.pdf-sk-para-gap {
    height: 10px;
}

/* Use outline instead of border so it doesn't affect the page's content box.
   border adds to the box and shifts canvas vs textLayer alignment. */
.pdfViewer .page {
    border: none !important;
    outline: 9px solid #f4f4f5;
    outline-offset: 0px;
}

/* ── Find / Search panel ──────────────────────────────────────────── */
#findbar {
    flex-direction: column !important;
    min-width: 300px !important;
    padding: 0 !important;
    background: var(--kt-card-bg, #ffffff) !important;
    background-color: var(--kt-card-bg, #ffffff) !important;
    border: 1px solid var(--kt-border-color, #e9ecef) !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.12) !important;
    overflow: hidden !important;
    gap: 0 !important;
}

    /* Hide the doorHanger triangle arrow — we use a card-style popup instead */
    #findbar::before,
    #findbar::after {
        display: none !important;
    }

    #findbar #findInputContainer {
        display: flex !important;
        align-items: center;
        gap: 6px;
        padding: 10px 10px 10px 10px;
        border-bottom: 1px solid var(--kt-border-color, #e9ecef);
    }

        #findbar #findInputContainer .loadingInput {
            flex: 1 1 auto;
            min-width: 0;
        }

    #findbar #findInput {
        width: 100% !important;
        font-size: 0.82rem !important;
        height: 32px !important;
    }

    #findbar #findInputContainer .toolbarHorizontalGroup {
        display: flex;
        align-items: center;
        gap: 4px;
        flex-shrink: 0;
    }

    #findbar #findbarOptionsOneContainer,
    #findbar #findbarOptionsTwoContainer {
        display: flex !important;
        align-items: center;
        gap: 16px;
        padding: 7px 12px;
    }

    #findbar #findbarOptionsTwoContainer {
        padding-top: 2px;
        padding-bottom: 9px;
    }

    #findbar .toggleButton {
        display: flex !important;
        align-items: center;
        gap: 5px;
        cursor: pointer;
        user-select: none;
    }

        #findbar .toggleButton input[type="checkbox"] {
            width: 13px;
            height: 13px;
            accent-color: var(--kt-primary, #3b82f6);
            cursor: pointer;
            margin: 0;
            flex-shrink: 0;
        }

        #findbar .toggleButton label {
            font-size: 0.78rem !important;
            font-weight: 500;
            color: var(--kt-gray-700, #4b5563);
            cursor: pointer;
            margin: 0;
            white-space: nowrap;
            line-height: 1.3;
            background-color: transparent;
        }

:is(#findbar.wrapContainers #findbarMessageContainer) #findResultsCount {
    height: auto !important;
}

#findbar #findbarMessageContainer {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 0;
    padding: 0 12px 8px;
}

    #findbar #findbarMessageContainer:empty,
    #findbar #findbarMessageContainer span:empty {
        display: none;
    }

#findbar #findResultsCount,
#findbar #findMsg {
    font-size: 0.72rem;
    color: var(--kt-text-muted, #a1a5b7);
    white-space: nowrap;
}

#findbar #findPreviousButton > span[data-l10n-id],
#findbar #findNextButton > span[data-l10n-id] {
    display: none !important;
}

/* ============================================ */
/* NEW MEETING HEADER — Approved Design         */
/* ============================================ */

/* CSS Variables — mapped to existing KT UI vars for theme compat */
:root {
    --cl-background: #ffffff;
    --cl-foreground: #09090b;
    --cl-primary: #3b82f6;
    --cl-primary-light: rgba(59,130,246,0.05);
    --cl-muted: #f4f4f5;
    --cl-muted-fg: #71717a;
    --cl-border: #e4e4e7;
    --cl-destructive: #dc2626;
    --cl-accent: rgba(59,130,246,0.08);
}

/* Remove dark border/shadow between left sidebar and center panel */
.kt_aside_left.shadow-sm {
    --tw-shadow: none;
    box-shadow: none;
}

/* Header container — inherits theme font (Work Sans / Inter) */
.cl-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 11;
    background: var(--cl-background);
    border-bottom: 1px solid var(--cl-border);
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    font-family: var(--font-sans, "Work Sans", "Inter", ui-sans-serif, system-ui, sans-serif);
    transition: box-shadow 0.3s ease;
}

    .cl-header.doc-open {
        box-shadow: 0 1px 6px rgba(0,0,0,0.08);
    }

.cl-header-main {
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 16px;
    position: relative;
    transition: height 0.3s ease;
}
/* Shrink main bar when document is open */
.cl-header.doc-open .cl-header-main {
    height: 44px;
}

/* Three-zone layout */
.cl-zone-left,
.cl-zone-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cl-zone-center {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    pointer-events: none;
}

/* Pill buttons (left zone) */
.cl-pill-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid var(--cl-border);
    border-radius: 8px;
    font-size: var(--text-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    color: #52525b;
    background: var(--cl-background);
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    font-family: inherit;
}

.cl-header.doc-open .cl-pill-btn {
    padding: 4px 10px;
    font-size: 0.6875rem;
}

.cl-pill-btn:hover {
    background: var(--cl-muted);
    border-color: #d4d4d8;
}

.cl-pill-btn.active {
    background: var(--cl-accent);
    border-color: var(--cl-primary);
    color: var(--cl-primary);
}

.cl-pill-btn.danger {
    color: var(--cl-destructive);
    border-color: rgba(220,38,38,0.3);
}

    .cl-pill-btn.danger:hover {
        background: rgba(220,38,38,0.06);
        border-color: var(--cl-destructive);
    }

.cl-pill-btn svg,
.cl-pill-btn i {
    flex-shrink: 0;
}

/* Primary pill button */
.cl-pill-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border: none;
    border-radius: 8px;
    font-size: var(--text-xs, 0.75rem);
    font-weight: var(--font-weight-semibold, 600);
    color: #fff;
    background: var(--cl-primary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    box-shadow: 0 1px 2px rgba(59,130,246,0.2);
    font-family: inherit;
}

    .cl-pill-btn-primary:hover {
        background: #2563eb;
    }

/* Icon buttons (right zone) */
.cl-icon-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 6px 8px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.25s ease;
    color: #52525b;
    min-width: 48px;
    border: none;
    background: none;
    font-family: inherit;
}

.cl-header.doc-open .cl-icon-btn {
    gap: 1px;
    padding: 4px 6px;
    min-width: 42px;
}

    .cl-header.doc-open .cl-icon-btn svg {
        width: 16px;
        height: 16px;
    }

    .cl-header.doc-open .cl-icon-btn span {
        font-size: 0.5625rem;
    }

.cl-icon-btn:hover {
    background: var(--cl-muted);
    color: var(--cl-primary);
}

.cl-icon-btn span {
    font-size: 0.625rem; /* 10px — no theme variable for this extra-small size */
    font-weight: var(--font-weight-medium, 500);
    transition: font-size 0.25s ease;
}

.cl-icon-btn svg {
    transition: width 0.25s ease, height 0.25s ease;
}

/* Chat icon wrapper + unread badge */
.chat-icon-wrap {
    position: relative;
    display: inline-flex !important; /* never hidden by .cl-icon-btn span rules */
    align-items: center;
    justify-content: center;
    font-size: inherit !important;
}

#chatUnreadBadge {
    position: absolute;
    top: -4px;
    right: -6px;
    min-width: 16px;
    height: 16px;
    background: #E24B4A;
    border-radius: 99px;
    display: flex !important; /* override .cl-icon-btn span rules */
    align-items: center;
    justify-content: center;
    font-size: 9px !important;
    font-weight: 700;
    color: #fff;
    padding: 0 4px;
    box-sizing: border-box;
    pointer-events: none;
    line-height: 1;
}

    #chatUnreadBadge[style*="display:none"],
    #chatUnreadBadge[style*="display: none"] {
        display: none !important;
    }

/* Separator */
.cl-sep-v {
    width: 1px;
    height: 24px;
    background: var(--cl-border);
    margin: 0 2px;
    flex-shrink: 0;
    transition: height 0.25s ease;
}

.cl-header.doc-open .cl-sep-v {
    height: 18px;
}

/* End / Leave button */
.cl-btn-end {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 16px;
    border: none;
    border-radius: 8px;
    font-size: var(--text-2sm, 0.8125rem);
    font-weight: var(--font-weight-semibold, 600);
    color: #fff;
    background: var(--cl-destructive);
    cursor: pointer;
    transition: all 0.25s ease;
    font-family: inherit;
}

.cl-header.doc-open .cl-btn-end {
    padding: 5px 14px;
    font-size: var(--text-xs, 0.75rem);
}

.cl-btn-end:hover {
    background: #b91c1c;
}

/* REC badge — JS uses .hidden to toggle via classList */
.cl-rec-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    background: rgba(220,38,38,0.08);
    border-radius: 6px;
    color: var(--cl-destructive);
    font-size: var(--text-xs, 0.75rem);
    font-weight: var(--font-weight-medium, 500);
    transition: padding 0.25s ease, font-size 0.25s ease;
}

.cl-header.doc-open .cl-rec-badge {
    padding: 3px 8px;
    font-size: var(--text-2xs, 0.6875rem);
}

.cl-rec-badge.hidden {
    display: none !important;
}

.cl-rec-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--cl-destructive);
    animation: cl-pulse 1.5s infinite;
}

@keyframes cl-pulse {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.4;
    }
}

/* Status badges */
.cl-status-badge {
    display: none;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: var(--text-2xs, 0.6875rem);
    font-weight: var(--font-weight-medium, 500);
}

    .cl-status-badge.visible {
        display: inline-flex;
    }

    .cl-status-badge.viewing {
        background: rgba(59,130,246,0.08);
        color: var(--cl-primary);
        border: 1px solid rgba(59,130,246,0.2);
    }

    .cl-status-badge.annotation {
        background: rgba(245,158,11,0.08);
        color: #d97706;
        border: 1px solid rgba(245,158,11,0.2);
    }

    .cl-status-badge.screen-share {
        background: rgba(139, 92, 246, 0.1);
        color: #6d28d9;
        border: 1px solid rgba(139, 92, 246, 0.28);
    }
    /* Breakout room name: same pattern as .annotation, indigo (not orange) — visibility only via .visible (see .cl-status-badge) */
    .cl-status-badge.breakout {
        background: rgba(99, 102, 241, 0.1);
        color: #4338ca;
        border: 1px solid rgba(99, 102, 241, 0.28);
        max-width: min(16rem, 100%);
        font-weight: var(--font-weight-semibold, 600);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
    }

        .cl-status-badge.breakout:hover:not(.is-breakout-locked) {
            background: rgba(99, 102, 241, 0.16);
            border-color: rgba(99, 102, 241, 0.4);
        }
        /* Waiting for host — not clickable */
        .cl-status-badge.breakout.is-breakout-locked {
            opacity: 0.6;
            cursor: not-allowed;
            pointer-events: none;
        }
    /* Return to main — matches pill pattern, green */
    .cl-status-badge.breakout-main {
        background: rgba(16, 185, 129, 0.1);
        color: #047857;
        border: 1px solid rgba(16, 185, 129, 0.28);
        font-weight: var(--font-weight-semibold, 600);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

        .cl-status-badge.breakout-main:hover {
            background: rgba(16, 185, 129, 0.16);
            border-color: rgba(16, 185, 129, 0.4);
        }
/* Screen-reader line for breakout (never rely on Tailwind sr-only alone in this layout) */
#meeting-breakout-guest-header-wrap .cl-sr-only,
.cl-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

#meeting-breakout-guest-header-wrap {
    position: relative;
}
/* Local user is actively publishing screen share */
#meeting-btn-screen.cl-screen-sharing-active {
    color: #dc2626;
}

    #meeting-btn-screen.cl-screen-sharing-active svg,
    #meeting-btn-screen.cl-screen-sharing-active span {
        color: #dc2626;
        stroke: #dc2626;
    }

/* Right participant list only: mute indicator when participant’s subscribed Twilio mic is disabled */
#participantListContainer .cl-remote-mic-muted-badge {
    position: absolute;
    left: 0.5rem;
    top: 0.5rem;
    z-index: 20;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.625rem;
    height: 1.625rem;
    border-radius: 9999px;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

    #participantListContainer .cl-remote-mic-muted-badge svg {
        display: block;
        opacity: 0.95;
    }

/* Camera-off variant: mic-off icon inline beside the participant name */
#participantListContainer .cl-remote-muted-nocam-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    width: 1.125rem;
    height: 1.125rem;
    border-radius: 9999px;
    background: rgba(220, 38, 38, 0.10);
    color: #dc2626;
    border: 1px solid rgba(220, 38, 38, 0.25);
    margin-left: 0.25rem;
    flex-shrink: 0;
    position: relative;
    top: -1px;
}

    #participantListContainer .cl-remote-muted-nocam-badge svg {
        display: block;
    }

/* Meeting title (center zone) */
.cl-meeting-title {
    font-size: var(--text-sm, 0.875rem);
    font-weight: var(--font-weight-semibold, 600);
    color: var(--cl-foreground);
    font-family: var(--font-sans, "Work Sans", "Inter", ui-sans-serif, system-ui, sans-serif);
    transition: font-size 0.25s ease;
}

.cl-header.doc-open .cl-meeting-title {
    font-size: var(--text-2sm, 0.8125rem);
}

.cl-meeting-subtitle {
    font-size: var(--text-2xs, 0.6875rem);
    color: var(--cl-muted-fg);
    font-family: var(--font-sans, "Work Sans", "Inter", ui-sans-serif, system-ui, sans-serif);
    max-height: 20px;
    opacity: 1;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.25s ease;
}

.cl-header.doc-open .cl-meeting-subtitle {
    max-height: 0;
    opacity: 0;
}

.cl-meeting-code-value {
    pointer-events: auto;
    cursor: pointer;
    border-radius: 3px;
    padding: 0 3px;
    transition: background 0.15s ease, color 0.15s ease;
}

    .cl-meeting-code-value:hover {
        background: var(--cl-muted, #f4f4f5);
        color: var(--cl-primary, #3b82f6);
    }

/* Document banner sub-bar — animated slide-in via .doc-open on parent .cl-header */
.cl-doc-banner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 16px;
    background: #eff6ff;
    border-top: 1px solid #dbeafe;
    font-size: 11px;
    color: #1e40af;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, opacity 0.3s ease, padding 0.35s ease;
}

.cl-header.doc-open .cl-doc-banner {
    max-height: 30px;
    opacity: 1;
    padding: 4px 16px;
}

.cl-doc-banner svg {
    flex-shrink: 0;
}

.cl-doc-banner strong {
    font-weight: var(--font-weight-medium, 500);
    color: #1e40af;
}
/* Document name link style */
.cl-doc-name {
    color: #3b82f6;
    font-weight: var(--font-weight-semibold, 600);
}
/* Page info pill badge — hidden for now */
.cl-doc-page-badge {
    display: none !important;
    align-items: center;
    gap: 3px;
    padding: 1px 7px;
    background: rgba(59,130,246,0.08);
    border-radius: 3px;
    font-size: 10px;
    color: #3b82f6;
    font-weight: var(--font-weight-medium, 500);
}
/* Keep .hidden support for JS that adds it directly */
.cl-doc-banner.hidden {
    max-height: 0 !important;
    opacity: 0 !important;
    padding: 0 16px !important;
}

.cl-doc-close-btn {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #ef4444;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    margin-left: 4px;
    transition: background 0.15s ease, transform 0.15s ease;
}

    .cl-doc-close-btn:hover {
        background: #dc2626;
        transform: scale(1.2);
    }

/* Dropdown menus */
.cl-dropdown-wrapper {
    position: relative;
}

.cl-dropdown-menu {
    display: none;
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    min-width: 240px;
    background: var(--cl-background);
    border: 1px solid var(--cl-border);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1);
    padding: 6px 0;
    z-index: 100;
}

    .cl-dropdown-menu.open {
        display: block;
    }

    .cl-dropdown-menu.right-align {
        right: 0;
        left: auto;
    }

.cl-dropdown-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    font-size: var(--text-2sm, 0.8125rem);
    color: var(--cl-foreground);
    cursor: pointer;
    transition: all 0.1s ease;
    border: none;
    background: none;
    width: 100%;
    text-align: left;
    font-family: inherit;
}

    .cl-dropdown-item:hover {
        background: var(--cl-muted);
        color: var(--cl-primary);
    }

    .cl-dropdown-item.active {
        font-weight: var(--font-weight-semibold, 600);
        color: var(--cl-primary);
    }

    .cl-dropdown-item.danger:hover {
        background: rgba(220,38,38,0.05);
        color: var(--cl-destructive);
    }

        .cl-dropdown-item.danger:hover svg {
            color: var(--cl-destructive);
            stroke: var(--cl-destructive);
        }

    .cl-dropdown-item svg {
        flex-shrink: 0;
    }

.cl-dropdown-sep {
    height: 1px;
    background: var(--cl-border);
    margin: 4px 0;
}

/* Auto-separator: groups inside a dropdown get a divider between them
   only when both adjacent groups have visible children */
.cl-dropdown-auto-sep > .cl-dropdown-group:empty {
    display: none;
}

.cl-dropdown-auto-sep > .cl-dropdown-group + .cl-dropdown-group {
    border-top: 1px solid var(--cl-border);
    margin-top: 4px;
    padding-top: 4px;
}
/* Hide the separator when a group has no visible items inside */
.cl-dropdown-auto-sep > .cl-dropdown-group:has(> .cl-dropdown-item:not([style*="display: none"]):not([style*="display:none"])) + .cl-dropdown-group:not(:has(> .cl-dropdown-item:not([style*="display: none"]):not([style*="display:none"]))) {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}

.cl-dropdown-auto-sep > .cl-dropdown-group:not(:has(> .cl-dropdown-item:not([style*="display: none"]):not([style*="display:none"]))) + .cl-dropdown-group {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}
/* Hide groups entirely when all children are hidden */
.cl-dropdown-auto-sep > .cl-dropdown-group:not(:has(> .cl-dropdown-item:not([style*="display: none"]):not([style*="display:none"]))) {
    display: none;
}

.cl-chevron {
    transition: transform 0.2s ease;
}

    .cl-chevron.rotated {
        transform: rotate(180deg);
    }

/* Generic hidden for new header elements */
.cl-header .hidden,
.cl-dropdown-item.hidden,
.cl-rec-badge.hidden {
    display: none !important;
}
/* .cl-doc-banner.hidden is handled above with animated max-height approach */

/* Smooth content area transition when header height changes on doc open/close */
.pt-\(--header-height\) {
    transition: padding-top 0.3s ease;
}

/* Backdrop for dropdown dismiss */
.cl-backdrop {
    position: fixed;
    inset: 0;
    z-index: 3;
    display: none;
}

    .cl-backdrop.open {
        display: block;
    }

/* ---- Mobile responsive for new header ---- */
@media (max-width: 768px) {
    .cl-header-main {
        padding: 0 10px;
        gap: 4px;
    }

    .cl-zone-center {
        display: none;
    }

    .cl-pill-btn span.cl-btn-label,
    .cl-icon-btn span:not(.chat-icon-wrap) {
        display: none;
    }

    .cl-pill-btn {
        padding: 6px 8px;
    }

    .cl-icon-btn {
        min-width: 36px;
        padding: 6px 4px;
    }

    .cl-btn-end span {
        display: none;
    }

    .cl-sep-v {
        height: 20px;
    }
}

@media (max-width: 576px) {
    .cl-header-main {
        padding: 0 8px;
    }

    .cl-zone-left,
    .cl-zone-right {
        gap: 4px;
    }

    .cl-btn-end {
        padding: 6px 10px;
    }

    .cl-status-badge,
    .cl-rec-badge {
        font-size: 0.625rem; /* 10px compact mobile size */
        padding: 3px 6px;
    }
}

/* While any breakout room is open: hide host participant menu actions (JS also guards handlers). */
body[data-case-loom-breakout-open="true"] #participantListContainer.case-loom-breakout-presenter-lock a[onclick*="changePresenterConformation"],
body[data-case-loom-breakout-open="true"] #participantListContainer.case-loom-breakout-presenter-lock a[onclick*="removeMeetingParticipant"],
body[data-case-loom-breakout-open="true"] #participantListContainer.case-loom-breakout-presenter-lock a[onclick*="showEditParticipant"] {
    display: none !important;
}

/* Breakout: annotation badge, PDF annotation toolbar, document list Annotation Access / stamp menu items */
body[data-case-loom-breakout-open="true"] #annotationBadge {
    display: none !important;
}

body[data-case-loom-breakout-open="true"] #screenSharingBadge {
    display: none !important;
}

body[data-case-loom-breakout-open="true"] #divAnnotationToolbar,
body[data-case-loom-breakout-open="true"] #divVideoToolbar {
    display: none !important;
}

body[data-case-loom-breakout-open="true"] .kt-menu-dropdown a[onclick*="getDocumentAccessParticipants"],
body[data-case-loom-breakout-open="true"] .kt-menu-dropdown a[onclick*="openStampEditModel"],
body[data-case-loom-breakout-open="true"] a.kt-menu-link[onclick*="openStampEditModel"] {
    display: none !important;
}

body[data-case-loom-breakout-open="true"] i[title="Annotation Access"] {
    display: none !important;
}

#scaleSelect {
    width: 140px !important;
}


/* =============================================================================
   Pre-Meeting Notes — PreMeetingNotesEngine.js styles
   Completely isolated: all selectors prefixed with .pn-
   Does not override any existing styles.
   ============================================================================= */

/* ── Skeleton loading animation ─────────────────────────────────────────── */
@keyframes pnShimmer {
    0% {
        background-position: -260px 0;
    }

    100% {
        background-position: 260px 0;
    }
}

.pn-skeleton-card {
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 8px;
}

.pn-skel {
    border-radius: 4px;
    background: linear-gradient(90deg, #f0f2f5 25%, #e4e7ed 50%, #f0f2f5 75%);
    background-size: 520px 100%;
    animation: pnShimmer 1.3s infinite linear;
}

.pn-skel-label {
    height: 9px;
    width: 48px;
    margin-bottom: 8px;
}

.pn-skel-line {
    height: 11px;
    width: 100%;
    margin-bottom: 5px;
}

.pn-skel-line-s {
    height: 11px;
    width: 65%;
    margin-bottom: 0;
}

.pn-skel-time {
    height: 8px;
    width: 55px;
    margin-top: 10px;
}

/* ── Note marker (blue pin on the PDF page) ─────────────────────────────── */
.pn-marker {
    position: absolute;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1a6fd4;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 8px rgba(26, 111, 212, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 200;
    transition: transform 0.15s, box-shadow 0.15s;
    user-select: none;
    pointer-events: all;
}

    .pn-marker:hover {
        transform: scale(1.15);
        box-shadow: 0 4px 14px rgba(26, 111, 212, 0.45);
    }

    .pn-marker span {
        color: #fff;
        font-size: 11px;
        font-weight: 700;
        line-height: 1;
    }

    .pn-marker.pn-active {
        background: #0d4fa0;
        box-shadow: 0 0 0 4px rgba(26, 111, 212, 0.25);
    }

/* Pulse animation when scrolled-to */
@keyframes pnPulse {
    0% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.55);
    }

    40% {
        transform: scale(1.4);
        box-shadow: 0 0 0 12px rgba(26, 111, 212, 0);
    }

    70% {
        transform: scale(1.15);
    }

    100% {
        transform: scale(1);
        box-shadow: 0 2px 8px rgba(26, 111, 212, 0.35);
    }
}

.pn-marker.pn-pulse {
    animation: pnPulse 0.85s ease;
}

/* ── Note popup (view existing note) ────────────────────────────────────── */
.pn-popup {
    position: absolute;
    width: 285px;
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.14);
    z-index: 300;
    overflow: hidden;
    animation: pnFadeUp 0.15s ease;
}

@keyframes pnFadeUp {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pn-popup-head {
    padding: 10px 14px;
    background: #f8f9fb;
    border-bottom: 1px solid #e4e7ed;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.pn-popup-head-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

.pn-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1a6fd4;
    flex-shrink: 0;
}

.pn-popup-title {
    font-size: 11px;
    font-weight: 600;
    color: #2d3748;
}

.pn-popup-close {
    cursor: pointer;
    color: #9aa3b0;
    font-size: 18px;
    line-height: 1;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .pn-popup-close:hover {
        color: #2d3748;
    }

.pn-popup-body {
    padding: 12px 14px;
    font-size: 13px;
    line-height: 1.65;
    color: #2d3748;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 180px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #d1d5db transparent;
}

    .pn-popup-body::-webkit-scrollbar {
        width: 4px;
    }

    .pn-popup-body::-webkit-scrollbar-track {
        background: transparent;
    }

    .pn-popup-body::-webkit-scrollbar-thumb {
        background: #d1d5db;
        border-radius: 4px;
    }

        .pn-popup-body::-webkit-scrollbar-thumb:hover {
            background: #9ca3af;
        }

.pn-popup-foot {
    padding: 8px 14px;
    border-top: 1px solid #f1f3f6;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.pn-private-tag {
    font-size: 10px;
    color: #2e7d4f;
    background: #e8f5ee;
    border-radius: 20px;
    padding: 2px 9px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
}

.pn-popup-acts {
    display: flex;
    gap: 6px;
}

/* ── Shared button style ─────────────────────────────────────────────────── */
.pn-btn {
    font-size: 11px;
    padding: 4px 10px;
    border: 1px solid #e4e7ed;
    border-radius: 6px;
    background: #fff;
    color: #4a5568;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.1s;
}

    .pn-btn:hover {
        background: #f8f9fb;
    }

.pn-btn-del {
    color: #c0392b;
    border-color: #f5c6c3;
}

    .pn-btn-del:hover {
        background: #fdf0ee;
    }

/* ── Note input box (add mode) ──────────────────────────────────────────── */
.pn-input-box {
    position: absolute;
    width: 292px;
    background: #fff;
    border: 2px solid #1a6fd4;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.14);
    z-index: 310;
    overflow: hidden;
    animation: pnFadeUp 0.15s ease;
}

.pn-input-head {
    padding: 9px 14px;
    background: #e8f1fd;
    border-bottom: 1px solid #b8d4f8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 11px;
    font-weight: 600;
    color: #0d4fa0;
}

.pn-input-close {
    cursor: pointer;
    font-size: 17px;
    line-height: 1;
    color: #1a6fd4;
}

    .pn-input-close:hover {
        color: #0d4fa0;
    }

.pn-input-body {
    padding: 12px;
}

.pn-textarea {
    width: 100%;
    height: 82px;
    padding: 8px 10px;
    border: 1px solid #e4e7ed;
    border-radius: 6px;
    font-size: 13px;
    font-family: inherit;
    color: #2d3748;
    resize: none;
    outline: none;
    background: #f8f9fb;
    line-height: 1.6;
    box-sizing: border-box;
}

    .pn-textarea:focus {
        border-color: #b8d4f8;
        background: #fff;
    }

.pn-input-hint {
    font-size: 10px;
    color: #2e7d4f;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.pn-input-foot {
    padding: 8px 12px 12px;
    display: flex;
    justify-content: flex-end;
    gap: 7px;
}

.pn-btn-cancel {
    font-size: 12px;
    padding: 6px 14px;
    border-radius: 6px;
}

.pn-btn-save {
    font-size: 12px;
    padding: 6px 14px;
    border-radius: 6px;
    border: none;
    background: #1a6fd4;
    color: #fff;
    cursor: pointer;
    font-family: inherit;
    font-weight: 500;
}

    .pn-btn-save:hover {
        background: #0d4fa0;
    }

/* ── Add mode: crosshair on viewer container ────────────────────────────── */
.pn-add-mode,
.pn-add-mode .page {
    cursor: crosshair !important;
}

/* ── Drop hint bar (fixed, bottom of viewer) ────────────────────────────── */
.pn-drop-hint {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #1a6fd4;
    color: #fff;
    font-size: 12.5px;
    font-weight: 500;
    text-align: center;
    padding: 9px;
    z-index: 400;
    display: none;
    cursor: crosshair;
    pointer-events: none;
}

    .pn-drop-hint.pn-hint-visible {
        display: block;
    }

/* ── Excel mode: fixed-position input box ───────────────────────────────── */
.pn-input-box-fixed {
    position: fixed; /* viewport-relative so it doesn't scroll with the table */
    z-index: 9000;
}

/* ── Excel mode: fixed-position note popup ──────────────────────────────── */
.pn-popup-fixed {
    position: fixed; /* viewport-relative so it doesn't scroll with the table */
    z-index: 9000;
}

/* ── Excel mode: numbered note marker on cells ──────────────────────────── */
/* Cells need a positioning context for the absolute marker */
td.excel-cell {
    position: relative;
}
/* Smaller pin variant — sits in the top-right corner of the cell */
.pn-excel-marker {
    width: 18px;
    height: 18px;
    position: absolute;
    top: -1px;
    right: -1px;
    z-index: 50;
}

    .pn-excel-marker span {
        font-size: 9px;
        font-weight: 700;
    }

/* ── Excel mode: cell pulse highlight ──────────────────────────────────── */
@keyframes pnCellPulse {
    0% {
        box-shadow: inset 0 0 0 2px #1a6fd4, 0 0 0 0 rgba(26, 111, 212, 0.45);
    }

    50% {
        box-shadow: inset 0 0 0 2px #1a6fd4, 0 0 0 6px rgba(26, 111, 212, 0);
    }

    100% {
        box-shadow: none;
    }
}

.pn-excel-cell-pulse {
    animation: pnCellPulse 1.2s ease-out forwards;
    background: rgba(26, 111, 212, 0.12) !important;
}

/* ── Excel add-mode cursor on cells ─────────────────────────────────────── */
#excel-viewer-container.pn-add-mode .excel-cell:not(.highlighted) {
    cursor: crosshair;
}

/* ── Action buttons inside the panel head (right side) ──────────────────── */
.pn-panel-actions {
    display: flex;
    gap: 6px;
    margin-left: auto; /* push + Note button to the right */
    flex-shrink: 0;
}

.pn-action-btn {
    flex: none;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid #e4e7ed;
    background: #fff;
    color: #4a5568;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    transition: background 0.15s, border-color 0.15s;
    font-family: inherit;
    white-space: nowrap;
}

    .pn-action-btn:hover {
        background: #f3f4f6;
    }

/* Add note — blue primary */
.pn-action-add {
    background: #1a6fd4;
    color: #fff;
    border-color: #1a6fd4;
}

    .pn-action-add:hover {
        background: #0d4fa0;
        border-color: #0d4fa0;
    }

    .pn-action-add.pn-btn-active {
        background: #dc3545;
        border-color: #dc3545;
    }

        .pn-action-add.pn-btn-active:hover {
            background: #b02a37;
        }

/* Show/Hide notes toggle — match primary download button */
.pn-action-vis {
    background: var(--bs-primary, #3b82f6);
    color: #fff;
    border-color: var(--bs-primary, #3b82f6);
}

    .pn-action-vis:hover {
        opacity: 0.9;
        background: var(--bs-primary, #3b82f6);
        border-color: var(--bs-primary, #3b82f6);
    }

    .pn-action-vis.pn-vis-hidden {
        background: var(--bs-primary, #3b82f6);
        border-color: var(--bs-primary, #3b82f6);
        color: #fff;
    }

/* ── Two-column viewer layout ────────────────────────────────────────────── */
.pn-viewer-layout {
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
    overflow: visible; /* don't clip children — sheet tabs live deep in the Excel viewer */
    height: 100%;
    min-height: 0;
}

.pn-viewer-content {
    flex: 1 1 auto;
    overflow: visible; /* must NOT be hidden — overflow:hidden clips pointer events   */
    min-height: 0; /* for inner content that's taller than its computed grid row */
    height: 100%; /* lets h-full! children (pdfViwerSection etc.) resolve correctly */
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* ── Left notes panel (in-flow, not fixed) ──────────────────────────────── */
.pn-panel {
    width: 260px;
    min-width: 260px;
    min-height: 0; /* allow panel to shrink inside the flex layout */
    flex-shrink: 0;
    background: #fff;
    border-right: 1px solid #e4e7ed;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 2px 0 6px rgba(0, 0, 0, 0.05);
    transition: width 0.22s ease, min-width 0.22s ease, opacity 0.22s ease, box-shadow 0.22s ease;
}

    /* Collapsed state — panel slides out of view */
    .pn-panel.pn-panel-collapsed {
        width: 0 !important;
        min-width: 0 !important;
        opacity: 0;
        border-right: none;
        box-shadow: none;
    }

.pn-panel-head {
    padding: 10px 12px;
    border-bottom: 1px solid #e4e7ed;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.pn-panel-title {
    font-size: 13px;
    font-weight: 600;
    color: #1a202c;
    white-space: nowrap;
    flex-shrink: 0;
}

.pn-count-badge {
    font-size: 11px;
    background: #e8f1fd;
    color: #1a6fd4;
    border-radius: 20px;
    padding: 2px 10px;
    font-weight: 600;
}

.pn-panel-sub {
    font-size: 11px;
    color: #9aa3b0;
    display: flex;
    align-items: center;
    gap: 5px;
}

.pn-info-banner {
    margin: 10px 12px 4px;
    padding: 10px 13px;
    background: #e8f1fd;
    border: 1px solid #b8d4f8;
    border-radius: 8px;
    font-size: 11px;
    color: #0d4fa0;
    line-height: 1.6;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    flex-shrink: 0;
}

.pn-notes-scroll {
    flex: 1 1 0; /* 0 base keeps it from inheriting content size */
    min-height: 0; /* override flex min-height:auto so it can shrink */
    overflow-y: auto;
    overflow-x: hidden;
    padding: 10px 12px 0;
    /* thin custom scrollbar */
    scrollbar-width: thin;
    scrollbar-color: #d1d5db transparent;
}

    .pn-notes-scroll::-webkit-scrollbar {
        width: 4px;
    }

    .pn-notes-scroll::-webkit-scrollbar-track {
        background: transparent;
    }

    .pn-notes-scroll::-webkit-scrollbar-thumb {
        background: #d1d5db;
        border-radius: 4px;
    }

        .pn-notes-scroll::-webkit-scrollbar-thumb:hover {
            background: #9ca3af;
        }

.pn-add-hint {
    padding: 10px 12px 14px;
    font-size: 12px;
    color: #9aa3b0;
    text-align: center;
    border-top: 1px solid #f1f3f6;
    cursor: pointer;
    transition: color 0.15s;
    flex-shrink: 0;
}

    .pn-add-hint:hover {
        color: #1a6fd4;
    }

/* ── Note cards in the panel ────────────────────────────────────────────── */
.pn-note-card {
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 8px;
    position: relative;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}

    .pn-note-card:hover {
        border-color: #b8d4f8;
        box-shadow: 0 2px 6px rgba(26, 111, 212, 0.09);
    }

    .pn-note-card.pn-card-active {
        border-color: #1a6fd4;
        background: #f0f6ff;
    }

/* Page label row */
.pn-card-loc {
    font-size: 10px;
    font-weight: 700;
    color: #1a6fd4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Note body text — clamped to 3 lines in the list; full text visible in the popup */
.pn-card-text {
    font-size: 12.5px;
    color: #2d3748;
    line-height: 1.5;
    word-break: break-word;
    padding-right: 18px; /* room for delete × */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Bottom row: timestamp only (no private tag) */
.pn-card-foot {
    margin-top: 7px;
    display: flex;
    align-items: center;
}

.pn-card-time {
    font-size: 10px;
    color: #b0b7c3;
}

/* Delete button — top-right, subtle until hover */
.pn-card-del {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #c5cdd8;
    font-size: 14px;
    line-height: 1;
    transition: background 0.12s, color 0.12s;
}

    .pn-card-del:hover {
        background: #fdecea;
        color: #c0392b;
    }

.pn-empty {
    font-size: 12px;
    color: #b0b7c3;
    text-align: center;
    padding: 28px 12px;
    line-height: 1.7;
}

/* ── Floating toolbar fallback (if viewer-top-bar not found) ────────────── */
.pn-floating-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #fff;
    border-bottom: 1px solid #e4e7ed;
    flex-shrink: 0;
}

/* ── Toast ──────────────────────────────────────────────────────────────── */
.pn-toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%) translateY(60px);
    background: #1a202c;
    color: #fff;
    padding: 9px 20px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    z-index: 9999;
    transition: transform 0.22s ease;
    white-space: nowrap;
    pointer-events: none;
}

    .pn-toast.pn-toast-show {
        transform: translateX(-50%) translateY(0);
    }

/* ── Video / Audio mode: timeline markers ──────────────────────────────── */
/* Ensure Video.js progress bar has a positioning context for our pins */
.vjs-progress-holder {
    position: relative;
    overflow: visible !important;
}

/* The pin dot on the seek bar */
.pn-video-marker {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background: #1a6fd4;
    border: 2px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    z-index: 20;
    box-shadow: 0 1px 4px rgba(26, 111, 212, 0.45);
    transition: transform 0.15s, box-shadow 0.15s;
}

    .pn-video-marker:hover {
        transform: translateY(-50%) scale(1.45);
        box-shadow: 0 2px 10px rgba(26, 111, 212, 0.55);
    }

    .pn-video-marker.pn-active {
        background: #0d4fa0;
        box-shadow: 0 0 0 4px rgba(26, 111, 212, 0.25);
    }

    /* Number badge inside the dot */
    .pn-video-marker span {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        font-size: 7px;
        font-weight: 700;
        color: #fff;
        line-height: 1;
        user-select: none;
    }

/* Timestamp label that floats above the marker on hover */
.pn-video-marker-label {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    background: #1a202c;
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.15s;
}

.pn-video-marker:hover .pn-video-marker-label {
    opacity: 1;
}

/* Pulse animation when seeking to a note */
@keyframes pnVideoPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.7);
    }

    60% {
        box-shadow: 0 0 0 8px rgba(26, 111, 212, 0);
    }

    100% {
        box-shadow: 0 1px 4px rgba(26, 111, 212, 0.45);
    }
}

.pn-video-marker.pn-pulse {
    animation: pnVideoPulse 0.85s ease;
}

/* Add-mode cursor on the Video.js progress bar */
.vjs-progress-control.pn-add-mode,
.vjs-progress-control.pn-add-mode .vjs-progress-holder {
    cursor: crosshair !important;
}

/* Video note input box (position:fixed like the Excel one) */
.pn-video-input-box {
    position: fixed;
    background: #fff;
    border: 1px solid #d1d9e6;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.14);
    width: 305px;
    z-index: 9100;
    overflow: hidden;
    font-family: inherit;
}

    .pn-video-input-box .pn-input-head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 14px 8px;
        background: #f7f9fc;
        border-bottom: 1px solid #e4e7ed;
        font-size: 12px;
        font-weight: 600;
        color: #2d3748;
    }

    .pn-video-input-box .pn-input-close {
        cursor: pointer;
        font-size: 16px;
        color: #9aa3b0;
        line-height: 1;
    }

        .pn-video-input-box .pn-input-close:hover {
            color: #374151;
        }

    .pn-video-input-box .pn-timestamp-chip {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        background: #e8f1fd;
        color: #1a6fd4;
        font-size: 11px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: 20px;
        margin-left: 8px;
    }

/* Video note popup (position:fixed) */
.pn-video-popup {
    position: fixed;
    background: #fff;
    border: 1px solid #d1d9e6;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.14);
    width: 280px;
    z-index: 9100;
    overflow: hidden;
    font-family: inherit;
}

/* ── Video frame note markers (clickable pins on the video image) ───────── */

/* The video stage needs relative positioning so absolute pins are anchored to it */
.cl-video-viewer__stage {
    position: relative;
}

/* Pin dot at the clicked x,y position on the video frame */
.pn-video-frame-marker {
    position: absolute;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1a6fd4;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 10px rgba(26, 111, 212, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 50;
    transform: translate(-50%, -50%);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    user-select: none;
    pointer-events: all;
}

    .pn-video-frame-marker:hover {
        transform: translate(-50%, -50%) scale(1.35);
        box-shadow: 0 4px 14px rgba(26, 111, 212, 0.55);
    }

    .pn-video-frame-marker.pn-active {
        background: #0d4fa0;
        box-shadow: 0 0 0 3px rgba(26, 111, 212, 0.35), 0 2px 10px rgba(0, 0, 0, 0.25);
    }

    .pn-video-frame-marker span {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 10px;
        font-weight: 700;
        line-height: 1;
        user-select: none;
        pointer-events: none;
    }
/* Timestamp label that floats above the frame marker on hover */
.pn-video-frame-marker-label {
    position: absolute;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.78);
    color: #fff;
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

.pn-video-frame-marker:hover .pn-video-frame-marker-label {
    opacity: 1;
}

/* Pulse animation for frame markers */
@keyframes pnFramePulse {
    0% {
        box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.65);
    }

    70% {
        box-shadow: 0 0 0 12px rgba(26, 111, 212, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(26, 111, 212, 0);
    }
}

.pn-video-frame-marker.pn-pulse {
    animation: pnFramePulse 0.9s ease-out;
}

/* Crosshair cursor on video stage when add mode is active */
.cl-video-viewer__stage.pn-add-mode {
    cursor: crosshair !important;
}

/* Seek-bar pin for frame notes uses a slightly different outline to distinguish */
.pn-video-marker.pn-frame-note {
    background: #7c3aed;
    border-color: #fff;
}

    .pn-video-marker.pn-frame-note.pn-active {
        background: #5b21b6;
    }

:root {
    --spacing: 0.25rem;
    --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);
}

/* Dropzone Base Styles */
.dropzone, .dropzone * {
  box-sizing: border-box;
}

.dropzone {
  min-height: 150px;
  border: 2px solid rgba(0, 0, 0, 0.3);
  background: white;
  padding: 20px 20px;
}

.dropzone.dz-clickable {
  cursor: pointer;
}

.dropzone.dz-clickable * {
  cursor: default;
}

.dropzone.dz-clickable .dz-message, .dropzone.dz-clickable .dz-message * {
  cursor: pointer;
}

.dropzone.dz-started .dz-message {
  display: none;
}

.dropzone.dz-drag-hover {
  border-style: solid;
}

.dropzone.dz-drag-hover .dz-message {
  opacity: 0.5;
}

.dropzone .dz-message {
  text-align: center;
  margin: 2em 0;
}

.dropzone .dz-message .dz-button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
}

.dropzone .dz-preview {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 16px;
  min-height: 100px;
}

.dropzone .dz-preview:hover {
  z-index: 1000;
}

.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}

.dropzone .dz-preview.dz-file-preview .dz-image {
  border-radius: 20px;
  background: #999;
  background: linear-gradient(to bottom, #eee, #ddd);
}

.dropzone .dz-preview.dz-file-preview .dz-details {
  opacity: 1;
}

.dropzone .dz-preview.dz-image-preview {
  background: white;
}

.dropzone .dz-preview.dz-image-preview .dz-details {
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -ms-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.dropzone .dz-preview .dz-remove {
  font-size: 14px;
  text-align: center;
  display: block;
  cursor: pointer;
  border: none;
}

.dropzone .dz-preview .dz-remove:hover {
  text-decoration: underline;
}

.dropzone .dz-preview:hover .dz-details {
  opacity: 1;
}

.dropzone .dz-preview .dz-details {
  z-index: 20;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  font-size: 13px;
  min-width: 100%;
  max-width: 100%;
  padding: 2em 1em;
  text-align: center;
  color: rgba(0, 0, 0, 0.9);
  line-height: 150%;
}

.dropzone .dz-preview .dz-details .dz-size {
  margin-bottom: 1em;
  font-size: 16px;
}

.dropzone .dz-preview .dz-details .dz-filename {
  white-space: nowrap;
}

.dropzone .dz-preview .dz-details .dz-filename:hover span {
  border: 1px solid rgba(200, 200, 200, 0.8);
  background-color: rgba(255, 255, 255, 0.8);
}

.dropzone .dz-preview .dz-details .dz-filename:not(:hover) {
  overflow: hidden;
  text-overflow: ellipsis;
}

.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span {
  border: 1px solid transparent;
}

.dropzone .dz-preview .dz-details .dz-filename span, .dropzone .dz-preview .dz-details .dz-size span {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 0 0.4em;
  border-radius: 3px;
}

.dropzone .dz-preview:hover .dz-image img {
  -webkit-transform: scale(1.05, 1.05);
  -moz-transform: scale(1.05, 1.05);
  -ms-transform: scale(1.05, 1.05);
  -o-transform: scale(1.05, 1.05);
  transform: scale(1.05, 1.05);
  -webkit-filter: blur(8px);
  filter: blur(8px);
}

.dropzone .dz-preview .dz-image {
  border-radius: 20px;
  overflow: hidden;
  width: 120px;
  height: 120px;
  position: relative;
  display: block;
  z-index: 10;
}

.dropzone .dz-preview .dz-image img {
  display: block;
}

.dropzone .dz-preview.dz-success .dz-success-mark {
  -webkit-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  -o-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
  animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1);
}

.dropzone .dz-preview.dz-error .dz-error-mark {
  opacity: 1;
  -webkit-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -moz-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -ms-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  -o-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
  animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1);
}

.dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark {
  pointer-events: none;
  opacity: 0;
  z-index: 500;
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  margin-left: -27px;
  margin-top: -27px;
}

.dropzone .dz-preview .dz-success-mark svg, .dropzone .dz-preview .dz-error-mark svg {
  display: block;
  width: 54px;
  height: 54px;
}

.dropzone .dz-preview.dz-processing .dz-progress {
  opacity: 1;
  -webkit-transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  -ms-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

.dropzone .dz-preview.dz-complete .dz-progress {
  opacity: 0;
  -webkit-transition: opacity 0.4s ease-in;
  -moz-transition: opacity 0.4s ease-in;
  -ms-transition: opacity 0.4s ease-in;
  -o-transition: opacity 0.4s ease-in;
  transition: opacity 0.4s ease-in;
}

.dropzone .dz-preview:not(.dz-processing) .dz-progress {
  -webkit-animation: pulse 6s ease infinite;
  -moz-animation: pulse 6s ease infinite;
  -ms-animation: pulse 6s ease infinite;
  -o-animation: pulse 6s ease infinite;
  animation: pulse 6s ease infinite;
}

.dropzone .dz-preview .dz-progress {
  opacity: 1;
  z-index: 1000;
  pointer-events: none;
  position: absolute;
  height: 16px;
  left: 50%;
  top: 50%;
  margin-top: -8px;
  width: 80px;
  margin-left: -40px;
  background: rgba(255, 255, 255, 0.9);
  -webkit-transform: scale(1);
  border-radius: 8px;
  overflow: hidden;
}

.dropzone .dz-preview .dz-progress .dz-upload {
  background: #333;
  background: linear-gradient(to bottom, #666, #444);
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  -webkit-transition: width 300ms ease-in-out;
  -moz-transition: width 300ms ease-in-out;
  -ms-transition: width 300ms ease-in-out;
  -o-transition: width 300ms ease-in-out;
  transition: width 300ms ease-in-out;
}

.dropzone .dz-preview.dz-error .dz-error-message {
  display: block;
}

.dropzone .dz-preview.dz-error:hover .dz-error-message {
  opacity: 1;
  pointer-events: auto;
}

.dropzone .dz-preview .dz-error-message {
  pointer-events: none;
  z-index: 1000;
  position: absolute;
  display: block;
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  -moz-transition: opacity 0.3s ease;
  -ms-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  border-radius: 8px;
  font-size: 13px;
  top: 130px;
  left: -10px;
  width: 140px;
  background: #be2626;
  background: linear-gradient(to bottom, #be2626, #a92222);
  padding: 0.5em 1.2em;
  color: white;
}

.dropzone .dz-preview .dz-error-message:after {
  content: "";
  position: absolute;
  top: -6px;
  right: 30px;
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #be2626;
}

/* Custom Dropzone Styles */
.dropzone {
  min-height: auto;
  padding: 1.5rem 1.75rem;
  text-align: center;
  cursor: pointer;
  border: 1px dashed var(--primary, var(--color-primary, #6993FF));
  background-color: var(--color-primary, rgba(105, 147, 255, 0.1));
  border-radius: 0.65rem !important;
}

.dropzone .dz-message {
  margin: 0;
  display: flex;
  text-align: left;
}

.dropzone .dz-preview {
  border-radius: 0.65rem !important;
  margin: 0.75rem;
}

.dropzone .dz-preview .dz-image {
  border-radius: 0.65rem !important;
  z-index: 1;
}

.dropzone .dz-preview.dz-file-preview .dz-image {
  background: var(--color-gray-200, var(--accent, #ECF0F3));
}

.dropzone .dz-success-mark,
.dropzone .dz-error-mark {
  margin-left: -20px !important;
  margin-top: -20px !important;
}

.dropzone .dz-success-mark svg,
.dropzone .dz-error-mark svg {
  height: 40px !important;
  width: 40px !important;
}

.dropzone .dz-remove {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.65rem;
  width: 1.65rem;
  font-size: 1rem;
  text-indent: -9999px;
  white-space: nowrap;
  position: absolute;
  z-index: 2;
  background-color: var(--background, var(--color-background, #ffffff)) !important;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  border-radius: 100%;
  top: -0.825rem;
  right: -0.825rem;
}

.dropzone .dz-remove:after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  content: "";
  mask-size: 40%;
  -webkit-mask-size: 40%;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--color-gray-600, var(--color-zinc-600, #80808F));
  -webkit-mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--bs-gray-600%29'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--bs-gray-600%29'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e");
}

.dropzone .dz-remove:hover:after {
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  background-color: var(--primary, var(--color-primary, #6993FF));
  -webkit-mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--bs-primary%29'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e");
  mask-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--bs-primary%29'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e");
}

.dropzone .dz-error-message {
  color: var(--color-white, #ffffff);
  background: var(--destructive, var(--color-red-500, var(--color-red-600, #F64E60)));
}

/* Dropzone Queue Styles */
.dropzone.dropzone-queue {
  border: 0;
  padding: 0;
  background-color: transparent;
  text-align: left;
}

.dropzone.dropzone-queue .dz-message {
  display: none;
}

.dropzone.dropzone-queue .dropzone-panel .dropzone-upload,
.dropzone.dropzone-queue .dropzone-panel .dropzone-remove-all {
  display: none;
}

.dropzone.dropzone-queue .dropzone-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.75rem;
  border-radius: 0.65rem;
  padding: 0.5rem 1rem;
  background-color: var(--color-gray-50, var(--accent, #F3F6F9));
}

.dropzone.dropzone-queue .dropzone-item .dropzone-file {
  flex-grow: 1;
  max-width: 60%;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-file .dropzone-filename {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--color-gray-600, var(--color-zinc-600, var(--muted-foreground, #80808F)));
  text-overflow: ellipsis;
  margin-right: 0.5rem;
  word-break: break-all;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-file .dropzone-filename:hover {
  color: var(--primary, var(--color-primary, #6993FF));
}

.dropzone.dropzone-queue .dropzone-item .dropzone-file .dropzone-error {
  margin-top: 0.25rem;
  font-size: 0.9rem;
  font-weight: 400;
  color: var(--destructive, var(--color-red-500, var(--color-red-600, #F64E60)));
  text-overflow: ellipsis;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-progress {
  width: 20%;
  position: relative;
  top: -3px;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-progress span.progress-text {
  position: absolute;
  left: 0;
  right: 0;
  top: 8px;
  color: #006dd3;
  font-size: 10px;
  font-weight: 600;
  margin: auto;
  text-align: center;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-progress .progress {
  height: 10px;
  transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone.dropzone-queue .dropzone-item .dropzone-progress .progress {
    transition: none;
  }
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar {
  margin-left: 1rem;
  display: flex;
  flex-wrap: nowrap;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-start,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-cancel,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-delete {
  height: 25px;
  width: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color 0.2s ease;
  color: #000;
  font-weight: 600;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-start > i,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-cancel > i,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-delete > i {
  transition: color 0.2s ease;
  font-size: 0.8rem;
  color: var(--color-gray-600, var(--color-zinc-600, var(--muted-foreground, #80808F)));
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-start:hover,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-cancel:hover,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-delete:hover {
  transition: color 0.2s ease;
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-start:hover > i,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-cancel:hover > i,
.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-delete:hover > i {
  color: var(--primary, var(--color-primary, #6993FF));
}

.dropzone.dropzone-queue .dropzone-item .dropzone-toolbar .dropzone-start {
  transition: color 0.2s ease;
}

/* Dropzone Meeting Item Styles */
.dropzone.dropzone-queue .dropzone-meeting-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 0.75rem;
  border-radius: 0.65rem;
  padding: 0.5rem 1rem;
  background-color: var(--color-gray-50, var(--accent, #F3F6F9));
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-file {
  flex-grow: 1;
  max-width: 60%;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-file .dropzone-filename {
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--color-gray-600, var(--color-zinc-600, var(--muted-foreground, #80808F)));
  text-overflow: ellipsis;
  margin-right: 0.5rem;
  word-break: break-all;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-file .dropzone-filename:hover {
  color: var(--primary, var(--color-primary, #6993FF));
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-file .dropzone-error {
  margin-top: 0.25rem;
  font-size: 0.9rem;
  font-weight: 400;
  color: var(--destructive, var(--color-red-500, var(--color-red-600, #F64E60)));
  text-overflow: ellipsis;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-progress {
  width: 20%;
  position: relative;
  top: -3px;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-progress span.progress-text {
  position: absolute;
  left: 0;
  right: 0;
  top: 8px;
  color: #006dd3;
  font-size: 10px;
  font-weight: 600;
  margin: auto;
  text-align: center;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-progress .progress {
  height: 10px;
  transition: all 0.2s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .dropzone.dropzone-queue .dropzone-meeting-item .dropzone-progress .progress {
    transition: none;
  }
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar {
  margin-left: 1rem;
  display: flex;
  flex-wrap: nowrap;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-start,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-cancel,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-delete {
  height: 25px;
  width: 25px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: color 0.2s ease;
  color: #000;
  font-weight: 600;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-start > i,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-cancel > i,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-delete > i {
  transition: color 0.2s ease;
  font-size: 0.8rem;
  color: var(--color-gray-600, var(--color-zinc-600, var(--muted-foreground, #80808F)));
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-start:hover,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-cancel:hover,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-delete:hover {
  transition: color 0.2s ease;
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-start:hover > i,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-cancel:hover > i,
.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-delete:hover > i {
  color: var(--primary, var(--color-primary, #6993FF));
}

.dropzone.dropzone-queue .dropzone-meeting-item .dropzone-toolbar .dropzone-start {
  transition: color 0.2s ease;
}

.progress,
.progress-stacked {
    --bs-progress-height: 1rem;
    --bs-progress-font-size: 0.75rem;
    --bs-progress-bg: var(--bs-gray-100);
    --bs-progress-border-radius: 6px;
    --bs-progress-box-shadow: none;
    --bs-progress-bar-color: #ffffff;
    --bs-progress-bar-bg: #1B84FF;
    --bs-progress-bar-transition: width 0.6s ease;
    display: flex;
    height: var(--bs-progress-height);
    overflow: hidden;
    font-size: var(--bs-progress-font-size);
    background-color: var(--bs-progress-bg);
    border-radius: var(--bs-progress-border-radius);
    box-shadow: var(--bs-progress-box-shadow);
}

.progress-bar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    color: var(--bs-progress-bar-color);
    text-align: center;
    white-space: nowrap;
    background-color: var(--bs-progress-bar-bg);
    transition: var(--bs-progress-bar-transition);
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar {
        transition: none;
    }
}

.progress-bar-striped {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
    overflow: visible;
}

    .progress-stacked > .progress > .progress-bar {
        width: 100%;
    }

.progress-bar-animated {
    animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
    .progress-bar-animated {
        animation: none;
    }
}



@layer components {
  .kt-alert {
    display: flex;
    align-items: stretch;
  }

  .kt-alert-title {
    flex-grow: 1;
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }

  .kt-toast .kt-alert-title {
    margin-bottom: inherit;
    text-align: inherit;
    font-size: inherit;
    line-height: inherit;
    --tw-font-weight: inherit;
    font-weight: inherit;
    color: inherit;
    --tw-leading: inherit;
    line-height: inherit;
  }

  .kt-alert-toolbar {
    display: flex;
    align-items: baseline;
    gap: calc(var(--spacing) * 2.5);
  }

  .kt-alert-actions {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    margin: 0;
  }

  .kt-alert-description {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));

  }

  .kt-alert-description p {
    margin-bottom: calc(var(--spacing) * 2);
  }

  .kt-alert-description p {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }

  .kt-alert-content {
    width: 100%;
    flex-grow: 1;
  }

  .kt-alert-content> :not(:last-child) {
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
  }

  .kt-alert-content .kt-alert-title {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }

  .kt-alert-icon {
    flex-shrink: 0;
  }

  .kt-alert-close {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .kt-alert-close i {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--muted-foreground);
  }

  .kt-alert-close>svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-alert-close:hover i,
  .kt-alert-close:focus i,
  .kt-alert-close:hover>svg,
  .kt-alert-close:focus>svg {
    color: var(--foreground);
  }

  .kt-alert {
    gap: calc(var(--spacing) * 2.5);
    border-radius: var(--radius);
    padding: calc(var(--spacing) * 3.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }

  .kt-alert .kt-alert-icon svg {
    width: calc(var(--spacing) * 5);
    height: calc(var(--spacing) * 5);
  }

  .kt-alert .kt-alert-toolbar {
    padding-top: calc(var(--spacing) * 0.25);
  }

  .kt-alert-sm {
    gap: calc(var(--spacing) * 1.5);
    border-radius: calc(var(--radius) - 2px);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));

  }

  .kt-alert-sm .kt-alert-close {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);

  }

  .kt-alert-sm .kt-alert-close>svg {
    width: calc(var(--spacing) * 3.5);
    height: calc(var(--spacing) * 3.5);
  }

  .kt-alert-sm .kt-alert-icon svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
  }

  .kt-alert-lg {
    gap: calc(var(--spacing) * 2.5);
    border-radius: calc(var(--radius) - 2px);
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }

  .kt-alert-lg .kt-alert-icon svg {
    width: calc(var(--spacing) * 6);
    height: calc(var(--spacing) * 6);
  }

  .kt-alert-lg .kt-alert-toolbar {
    padding-top: calc(var(--spacing) * 0.75);
  }

  .kt-alert {
    background-color: var(--muted);
    color: var(--foreground);
  }

  .kt-alert-primary {
    background-color: var(--primary);
    color: var(--primary-foreground);

  }

  .kt-alert-primary .kt-alert-close>svg {
    color: var(--primary-foreground);
  }

  .kt-alert-destructive {
    background-color: var(--destructive);
    color: var(--destructive-foreground);

  }

  .kt-alert-destructive .kt-alert-close>svg {
    color: var(--destructive-foreground);
  }

  .kt-alert-success {
    background-color: var(--color-green-500);
    color: var(--color-white);

  }

  .kt-alert-success .kt-alert-close>svg {
    color: var(--color-white);
  }

  .kt-alert-info {
    background-color: var(--color-violet-600);
    color: var(--color-white);

  }

  .kt-alert-info .kt-alert-close>svg {
    color: var(--color-white);
  }

  .kt-alert-warning {
    background-color: var(--color-yellow-500);
    color: var(--color-white);

  }

  .kt-alert-info .kt-alert-close>svg {
    color: var(--color-white);
  }

  .kt-alert-mono {
    background-color: var(--mono);
    color: var(--mono-foreground);
  }

  .kt-alert-info .kt-alert-close>svg {
    color: var(--mono-foreground);
  }

  .kt-alert-mono.kt-alert-primary .kt-alert-icon {
    color: var(--primary);
  }

  .kt-alert-mono.kt-alert-success .kt-alert-icon {
    color: var(--color-green-500);
  }

  .kt-alert-mono.kt-alert-destructive .kt-alert-icon {
    color: var(--destructive);
  }

  .kt-alert-mono.kt-alert-warning .kt-alert-icon {
    color: var(--color-yellow-500);
  }

  .kt-alert-mono.kt-alert-info .kt-alert-icon {
    color: var(--color-violet-600);
  }

  .kt-alert-outline {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--background);
    color: var(--foreground);
  }

  .kt-alert-outline .kt-alert-close {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .kt-alert-outline .kt-alert-close>svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-alert-outline .kt-alert-close:hover>svg,
  .kt-alert-outline .kt-alert-close:focus>svg {
    color: var(--foreground);
  }

  .kt-alert-outline.kt-alert-primary {
    color: var(--primary);
  }

  .kt-alert-outline.kt-alert-destructive {
    color: var(--destructive);
  }

  .kt-alert-outline.kt-alert-success {
    color: var(--color-green-500);
  }

  .kt-alert-outline.kt-alert-info {
    color: var(--color-violet-600);
  }

  .kt-alert-outline.kt-alert-warning {
    color: var(--color-yellow-500);
  }

  .kt-alert-outline.kt-alert-mono {
    color: var(--mono);
  }

  .kt-alert-light {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--border);
    background-color: var(--muted);
    color: var(--foreground);
  }

  .kt-alert-light .kt-alert-icon>svg {
    color: var(--muted-foreground);
  }

  .kt-alert-light .kt-alert-close {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    flex-shrink: 0;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .kt-alert-light .kt-alert-close>svg {
    width: calc(var(--spacing) * 4);
    height: calc(var(--spacing) * 4);
    color: var(--muted-foreground);
  }

  .kt-alert-light .kt-alert-close:hover>svg,
  .kt-alert-light .kt-alert-close:focus>svg {
    color: var(--foreground);
  }

  .kt-alert-light.kt-alert-primary {
    border-color: var(--primary);
    background-color: var(--primary);
    color: var(--foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-light.kt-alert-primary {
      border-color: color-mix(in oklab, var(--primary) 10%, transparent);
      background-color: color-mix(in oklab, var(--primary) 5%, transparent);
    }
  }

  .kt-alert-light.kt-alert-primary .kt-alert-icon>svg {
    color: var(--primary);
  }

  .kt-alert-light.kt-alert-destructive {
    border-color: var(--destructive);
    background-color: var(--destructive);
    color: var(--foreground);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .kt-alert-light.kt-alert-destructive {
      border-color: color-mix(in oklab, var(--destructive) 10%, transparent);
      background-color: color-mix(in oklab, var(--destructive) 5%, transparent);
    }
  }

  .kt-alert-light.kt-alert-destructive .kt-alert-icon>svg {
    color: var(--destructive);
  }

  .kt-alert-light.kt-alert-success {
    border-color: var(--color-green-200);
    background-color: var(--color-green-50);
    color: var(--foreground);
  }

  .kt-alert-light.kt-alert-success .kt-alert-icon>svg {
    color: var(--color-green-500);
  }

  .dark .kt-alert-light.kt-alert-success {
    border-color: color-mix(in srgb, oklch(26.6% 0.065 152.934) 50%, transparent);
    background-color: color-mix(in srgb, oklch(26.6% 0.065 152.934) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark .kt-alert-light.kt-alert-success {
      border-color: color-mix(in oklab, var(--color-green-950) 50%, transparent);
      background-color: color-mix(in oklab, var(--color-green-950) 30%, transparent);
    }
  }

  .kt-alert-light.kt-alert-info {
    border-color: var(--color-violet-200);
    background-color: var(--color-violet-50);
    color: var(--foreground);
  }

  .kt-alert-light.kt-alert-info .kt-alert-icon>svg {
    color: var(--color-violet-500);
  }

  .dark .kt-alert-light.kt-alert-info {
    border-color: color-mix(in srgb, oklch(28.3% 0.141 291.089) 50%, transparent);
    background-color: color-mix(in srgb, oklch(28.3% 0.141 291.089) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark .kt-alert-light.kt-alert-info {
      border-color: color-mix(in oklab, var(--color-violet-950) 50%, transparent);
      background-color: color-mix(in oklab, var(--color-violet-950) 30%, transparent);
    }
  }

  .kt-alert-light.kt-alert-warning {
    border-color: var(--color-yellow-200);
    background-color: var(--color-yellow-50);
    color: var(--foreground);
  }

  .kt-alert-light.kt-alert-warning .kt-alert-icon>svg {
    color: var(--color-yellow-500);
  }

  .dark .kt-alert-light.kt-alert-warning {
    border-color: color-mix(in srgb, oklch(28.6% 0.066 53.813) 50%, transparent);
    background-color: color-mix(in srgb, oklch(28.6% 0.066 53.813) 30%, transparent);
  }

  @supports (color: color-mix(in lab, red, red)) {
    .dark .kt-alert-light.kt-alert-warning {
      border-color: color-mix(in oklab, var(--color-yellow-950) 50%, transparent);
      background-color: color-mix(in oklab, var(--color-yellow-950) 30%, transparent);
    }
  }

}
/* ================================
   KT Modal Loader Styles
   Animated loading spinner for modals
================================ */

.kt-modal-loader {
    width: 48px;
    height: 48px;
    border: 4px solid var(--muted, #E5E7EB);
    border-top-color: var(--primary, #6993FF);
    border-radius: 50%;
    animation: kt-spin 0.8s linear infinite;
    margin-bottom: 1rem;
    flex-shrink: 0;
}

@keyframes kt-spin {
    to { 
        transform: rotate(360deg); 
    }
}

.kt-modal-loader-text {
    font-size: 0.875rem;
    color: var(--muted-foreground, #80808F);
    font-weight: 500;
    animation: kt-pulse 1.5s ease-in-out infinite;
    margin: 0;
}

@keyframes kt-pulse {
    0%, 100% { 
        opacity: 1; 
    }
    50% { 
        opacity: 0.5; 
    }
}

/* Small variant */
.kt-modal-loader-sm {
    width: 32px;
    height: 32px;
    border-width: 3px;
}

/* Large variant */
.kt-modal-loader-lg {
    width: 64px;
    height: 64px;
    border-width: 5px;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .kt-modal-loader {
        border-color: var(--muted, #374151);
        border-top-color: var(--primary, #6993FF);
    }
    
    .kt-modal-loader-text {
        color: var(--muted-foreground, #9CA3AF);
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .kt-modal-loader {
        animation: none;
        border-top-color: var(--primary, #6993FF);
    }
    
    .kt-modal-loader-text {
        animation: none;
    }
}


/* Full-screen document loading overlay spinner + text (used by DocumentViewer.js) */

/* 3-dot loader (requested) */
.document-dots-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 20px;
}

.document-dot {
  width: 10px;
  height: 10px;
  border-radius: 9999px;
  background: rgba(17, 24, 39, 0.85);
  display: inline-block;
  animation: documentDotBounce 0.9s ease-in-out infinite;
}

.document-dots-loader .document-dot:nth-child(2) { animation-delay: 0.12s; }
.document-dots-loader .document-dot:nth-child(3) { animation-delay: 0.24s; }

.document-loader-text {
  font-size: 14px;
  font-weight: 600;
  color: rgba(17, 24, 39, 0.9);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35);
}

@keyframes documentDotBounce {
  0%, 80%, 100% { transform: translateY(0); opacity: 0.55; }
  40% { transform: translateY(-8px); opacity: 1; }
}

/* Excel toolbar mode - Excel-specific: 35px bottom needed to fix overlap (PDF/Video/Audio use 12px) */
#divToolbar.excel-toolbar-mode {
    align-items: flex-start !important; /* Prevent stretch - keep buttons from extending to border */
    padding-bottom: 35px !important; /* Excel-only: prevents tools overlapping border */
    margin-bottom: 6px !important; /* Gap between toolbar and content below */
    gap: 10px !important; /* Space between tool groups - prevent tight packing */
}

    #divToolbar.excel-toolbar-mode .excel-tools-wrapper {
        margin-bottom: 8px; /* Extra buffer between tools and toolbar border */
    }

#excelSelectionModeBtn[data-no-access="true"] {
    display: none !important;
    visibility: hidden !important;
}

.excel-cell {
    min-width: 50px;
    padding: 4px 6px !important;
    font-size: 13px;
    white-space: nowrap;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.25;
    box-sizing: border-box;
    border: 1px solid #dee2e6;
    /* Ensure crisp rendering - prevent blur */
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

    .excel-cell.excel-col-wrap {
        white-space: normal !important;
        text-wrap: wrap !important;
        overflow-wrap: anywhere;
        word-break: break-word;
        text-overflow: clip;
    }

    .excel-cell.highlighted {
    }

    .excel-cell.selecting {
    }

.highlight-item {
    background-color: #fff;
    transition: all 0.2s ease;
    border: 1px solid #dee2e6 !important;
}

    .highlight-item:hover {
        background-color: #f8f9fa;
        border-color: #adb5bd !important;
    }

    .highlight-item.active-highlight {
        border: 2px solid #ffc107 !important;
        box-shadow: 0 2px 8px rgba(255, 193, 7, 0.3);
    }

.comment-text {
    font-style: italic;
    color: #555;
    font-size: 12px;
    margin-top: 4px;
    line-height: 1.35;
    white-space: pre-wrap;
    word-break: break-word;
}

#excelTable thead th {
    background-color: #f8f9fa;
    font-weight: bold;
}

.excel-cell.active-range {
    position: relative;
    z-index: 5;
}

/* Layout styles for ViewExcel.cshtml */
.excel-viewer-container {
    max-width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 15px;
}

.excel-viewer-header {
    padding: 10px 0;
    border-bottom: 1px solid #dee2e6;
}

.excel-viewer-title {
    margin: 0;
    font-weight: 600;
}

.excel-viewer-selection-btn {
    border-radius: 4px;
    cursor: pointer;
    min-width: 150px;
}

.excel-viewer-delete-btn {
    display: none;
    border-radius: 4px;
}

.excel-viewer-row {
    overflow: hidden;
    margin: 0;
}

.excel-viewer-sidebar {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-right: 10px;
}

.excel-viewer-sidebar-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin: 0;
}

.excel-viewer-card-header {
    background-color: #f8f9fa;
}

    .excel-viewer-card-header h5 {
        margin: 0;
    }

.excel-viewer-card-body {
    overflow-y: auto;
    padding: 10px;
}

.excel-viewer-table-container {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding-left: 10px;
}

.excel-viewer-table-body {
    overflow: auto;
    padding: 10px;
}

#excelTable {
    width: auto;
    min-width: 0;
    margin: 0;
    table-layout: fixed;
    /* Ensure crisp table rendering */
    border-collapse: collapse;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

    #excelTable thead th {
        background-color: #f8f9fa;
        /* Sticky disabled in meeting layout - causes headers to override left document panel */
        position: relative;
        top: auto;
        z-index: 1;
        font-weight: bold;
        padding: 4px 6px;
        font-size: 13px;
        border: 1px solid #dee2e6;
        text-align: center;
    }

/* Column resize handle - drag to resize */
.excel-col-header {
    position: relative;
    white-space: nowrap;
}

.excel-col-resize-handle {
    position: absolute;
    right: -4px;
    top: 0;
    bottom: 0;
    width: 10px;
    cursor: col-resize;
    background: transparent;
    z-index: 2;
}

    .excel-col-resize-handle:hover {
        background: rgba(13, 110, 253, 0.2);
    }

.excel-col-label {
    display: inline-block;
    padding-right: 8px;
}

.excel-cell.can-annotate {
    cursor: pointer;
}

.excel-cell.view-only {
    cursor: default;
}

/* Excel Viewer Container Styles — fill stage; dvh tracks visible viewport (DevTools/zoom); vh fallback */
#stage:has(#excel-viewer-container) {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: calc(100vh - 110px);
    max-height: calc(100vh - 110px);
    overflow: auto;
}

@supports (height: 100dvh) {
    #stage:has(#excel-viewer-container) {
        height: min(calc(100dvh - 110px), calc(100vh - 110px));
        max-height: min(calc(100dvh - 110px), calc(100vh - 110px));
    }
}

#excel-viewer-container.excel-viewer-wrapper {
    width: 100%;
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    background: white;
    overflow: hidden;
    isolation: isolate;
    contain: layout;
}

.excel-viewer-content {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}

.excel-viewer-main {
    flex: 1;
    display: flex;
    overflow: hidden;
    min-height: 0;
}

/* Sidebar Styles - Now on the right side */
.excel-sidebar {
    width: 300px;
    min-width: 300px;
    max-width: 300px;
    flex: 0 0 300px;
    border-left: 1px solid #dee2e6; /* Changed from border-right to border-left */
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    background-color: #fff;
    transition: width 300ms ease, min-width 300ms ease, max-width 300ms ease, opacity 300ms ease;
    opacity: 1;
    order: 2; /* Ensure sidebar appears after table */
}

#excel-viewer-container.excel-sidebar-collapsed .excel-sidebar {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    flex-basis: 0 !important;
    opacity: 0;
    border-left: none !important; /* Changed from border-right */
    padding: 0 !important;
}

    #excel-viewer-container.excel-sidebar-collapsed .excel-sidebar * {
        pointer-events: none;
        overflow: hidden;
    }

.excel-sidebar-header {
    background-color: #f8f9fa;
    position: relative;
    padding: 10px;
    border-bottom: 1px solid #dee2e6;
    text-align: end;
}

    .excel-sidebar-header h5 {
        margin: 0;
        font-size: 16px;
        font-weight: 600;
        color: #333;
    }

    .excel-sidebar-header small {
        color: #6c757d;
        font-size: 12px;
    }

.excel-sidebar-body {
    flex: 1;
    overflow-y: auto;
    padding: 10px;
}

.excel-sidebar-inner {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin: 0;
    height: 100%;
}

.excel-table-inner {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    margin: 0;
    height: 100%;
}

/* Table Container - Now on the left side */
.excel-table-container {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    order: 1; /* Ensure table appears before sidebar */
    padding-right: 12px; /* Prevent content from overlapping the sidebar divider */
    min-width: 0; /* Allow flex shrink so it doesn't overflow */
}

.excel-table-scroll-container {
    flex: 1 1 0%;
    min-height: 0; /* allow flex shrink so sheet tabs stay in view; scroll happens here */
    overflow: auto;
    padding: 0 10px;
    position: relative;
}

/* Sheet tabs (Excel-style, below the table) */
.excel-sheet-tabs {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 16px 6px 10px; /* Extra right padding to avoid overlapping sidebar divider */
    background: #e8e8e8;
    border-top: 1px solid #c0c0c0;
    min-height: 28px;
    flex-shrink: 0;
}

.excel-sheet-nav-group {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
}

.excel-sheet-tabs-viewport {
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
}

.excel-sheet-tabs-track {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    min-width: max-content;
    white-space: nowrap;
}

.excel-sheet-nav-btn {
    border: 1px solid #b8bcc6;
    border-radius: 4px;
    background: #f4f5f7;
    color: #374151;
    width: 22px;
    height: 22px;
    line-height: 20px;
    font-size: 11px;
    padding: 0;
    cursor: pointer;
    flex: 0 0 auto;
}

    .excel-sheet-nav-btn:hover:not(:disabled) {
        background: #e5e7eb;
    }

    .excel-sheet-nav-btn:disabled {
        opacity: 0.45;
        cursor: default;
    }

.excel-sheet-tab {
    padding: 4px 12px;
    font-size: 12px;
    background: #f0f0f0;
    border: 1px solid #c0c0c0;
    border-bottom: none;
    border-radius: 4px 4px 0 0;
    cursor: pointer;
    color: #333;
    white-space: nowrap;
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
}

    .excel-sheet-tab.has-color {
        background: var(--sheet-tab-color);
        border-color: var(--sheet-tab-color);
        color: var(--sheet-tab-text, #333);
    }

        .excel-sheet-tab.has-color.active {
            background: color-mix(in srgb, var(--sheet-tab-color) 25%, #fff 75%);
            border-color: var(--sheet-tab-color);
            color: #333;
        }

        .excel-sheet-tab.has-color:hover:not(.active) {
            background: color-mix(in srgb, var(--sheet-tab-color) 85%, #000 15%);
        }

    .excel-sheet-tab:hover {
        background: #e0e0e0;
    }

    .excel-sheet-tab.active {
        background: #fff;
        font-weight: 600;
        margin-bottom: -1px;
        padding-bottom: 5px;
    }

.excel-sheet-tabs {
    margin-top: auto;
}

.excel-chart-overlay-layer {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 4;
}

.excel-chart-overlay-item {
    position: absolute;
    border: 1px solid rgba(17, 24, 39, 0.12);
    border-radius: 3px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    pointer-events: auto;
    transition: box-shadow 0.15s ease, border-color 0.15s ease;
}

    .excel-chart-overlay-item.chart-annotated {
        border-color: rgba(245, 158, 11, 0.9);
        box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.35), 0 1px 3px rgba(0, 0, 0, 0.08);
    }

    .excel-chart-overlay-item.chart-hover {
        border-color: rgba(245, 158, 11, 0.95);
        box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.45), 0 2px 8px rgba(245, 158, 11, 0.18);
    }

    .excel-chart-overlay-item.chart-active {
        border-color: #f59e0b;
        box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.5), 0 3px 10px rgba(245, 158, 11, 0.22);
    }

    .excel-chart-overlay-item canvas {
        display: block;
        width: 100%;
        height: 100%;
    }

.excel-chart-selection-box {
    position: absolute;
    border: 2px dashed #f59e0b;
    background: rgba(245, 158, 11, 0.14);
    pointer-events: none;
    z-index: 2;
}

.excel-chart-range-marker {
    position: absolute;
    border: 2px solid rgba(245, 158, 11, 0.85);
    background: rgba(245, 158, 11, 0.16);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
    z-index: 2;
    pointer-events: auto;
}

    .excel-chart-range-marker.hover {
        border-color: rgba(245, 158, 11, 0.95);
        background: rgba(245, 158, 11, 0.22);
    }

    .excel-chart-range-marker.active {
        border-color: #f59e0b;
        box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.4);
        background: rgba(245, 158, 11, 0.24);
    }

.excel-chart-marker-delete {
    position: absolute;
    top: -10px;
    right: -10px;
    width: 20px;
    height: 20px;
    border: 1px solid #fca5a5;
    border-radius: 999px;
    background: #ffffff;
    color: #dc2626;
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.16);
    z-index: 3;
}

    .excel-chart-marker-delete:hover {
        background: #dc2626;
        color: #ffffff;
    }

.excel-sheet-loading-overlay {
    position: absolute;
    inset: 0;
    background: #f9fafb;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    z-index: 100;
    padding: 24px 20px;
    box-sizing: border-box;
}

.excel-sheet-loading-skeleton {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 12px;
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    flex: 1;
}

    .excel-sheet-loading-skeleton .excel-skeleton-line {
        height: 12px;
        border-radius: 6px;
        min-width: 40%;
        flex-shrink: 0;
    }

        .excel-sheet-loading-skeleton .excel-skeleton-line.shimmer {
            background: linear-gradient(90deg, #e5e7eb 25%, #f3f4f6 50%, #e5e7eb 75%);
            background-size: 2000px 100%;
            animation: excel-sheet-shimmer 2s infinite;
        }

@keyframes excel-sheet-shimmer {
    0% {
        background-position: -2000px 0;
    }

    100% {
        background-position: 2000px 0;
    }
}

/* Button Styles */
.excel-selection-mode-btn {
    border: 1px solid #0d6efd;
    background-color: transparent;
    color: #0d6efd;
    border-radius: 4px;
    cursor: pointer;
    min-width: 50px;
    font-size: 14px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: all 0.2s;
}

    .excel-selection-mode-btn:hover {
        background-color: #0d6efd;
        color: white;
    }

    .excel-selection-mode-btn.active {
        background-color: #198754;
        border-color: #198754;
        color: #198754;
    }

        .excel-selection-mode-btn.active:hover {
            background-color: #198754;
            color: white;
        }

/* Pen cursor when annotation/pen mode is active ? color set by JS (default yellow, follows palette) */
.excel-cell.selection-mode-active {
    cursor: pointer;
}

.excel-delete-active-btn {
    display: none;
    border: 1px solid #fca5a5;
    background-color: #ffffff;
    color: #dc2626;
    border-radius: 999px;
    cursor: pointer;
    width: 26px;
    height: 26px;
    font-size: 15px;
    line-height: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18);
    transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease, color 0.15s ease;
    font-weight: 700;
    position: absolute;
    z-index: 90;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
}

    .excel-delete-active-btn:hover {
        background-color: #dc2626;
        color: #ffffff;
        box-shadow: 0 3px 10px rgba(220, 38, 38, 0.35);
        transform: scale(1.06);
    }

#toggleSidebarBtn {
    position: absolute;
    right: 300px; /* Fully inside sidebar edge - no overlap with divider */
    top: 0px;
    z-index: 89;
    width: 30px;
    height: 30px;
    padding: 0;
    border: 1px solid #dee2e6;
    background-color: #fff;
    color: #6c757d;
    border-radius: 0 4px 4px 0; /* Rounded on left side now */
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: right 300ms ease, border-radius 300ms ease, all 0.2s;
}

    #toggleSidebarBtn:hover {
        background-color: #f8f9fa;
        color: #333;
    }

#excel-viewer-container.excel-sidebar-collapsed #toggleSidebarBtn {
    right: 0px !important;
    border-radius: 4px 0 0 4px !important; /* Rounded on right side when collapsed */
}

.excel-toolbar {
    position: absolute;
    top: -20px;
    right: 10px;
    z-index: 1000;
    display: flex;
    gap: 5px;
}

/* Highlight Item Styles */
.highlight-item {
    cursor: pointer;
    background-color: #fff;
    transition: all 0.2s;
    padding: 10px;
    margin-bottom: 8px;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.highlight-item-header {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.highlight-item-icon {
    color: #ffc107;
    font-size: 16px;
    margin-right: 8px;
}

.highlight-item-content {
    flex: 1;
}

.highlight-item-title {
    font-weight: 500;
    color: #333;
    font-size: 14px;
}

.highlight-item-date {
    color: #6c757d;
    font-size: 12px;
}

/* Comment preview shown when card is collapsed (after "Highlighted on ...") */
.highlight-item-comment-preview {
    margin-top: 4px;
    color: #495057;
    font-size: 12px;
    line-height: 1.35;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.delete-highlight-btn {
    padding: 2px 6px;
    border: none;
    background: transparent;
    color: #dc3545;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    transition: all 0.2s;
    visibility: hidden;
}

.highlight-item.active-highlight .delete-highlight-btn {
    visibility: visible;
}

.delete-highlight-btn:hover {
    color: #b02a37;
    background-color: #f8f9fa;
}

.comment-section {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #dee2e6;
}

.comment-input {
    font-size: 12px;
    resize: vertical;
    width: 100%;
}

    .comment-input:focus {
        outline: none;
    }

/* Active and Hover Range Styles */
.excel-cell.active-range {
    position: relative;
    z-index: 5;
}

.excel-cell.hover-range {
    position: relative;
}

.excel-cell.highlighted.active-range,
.excel-cell.highlighted.hover-range {
}

/* Removed hover effects - hover only applies to highlighted/active ranges via hover-range class */

#excelTable {
    border-collapse: collapse;
}

.cl-video-viewer {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
    min-height: 0;
    max-width: none;
    margin: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    overflow: visible;
}

.cl-video-viewer__toolbar-panel {
    width: 100%;
    max-width: none;
    background: #ffffff;
    border: none;
    border-bottom: 1px solid #e5e7eb;
    border-radius: 0;
    margin-bottom: 0;
    box-shadow: none;
}

.cl-video-viewer__media {
    width: 100%;
    max-width: 980px;
    background: transparent;
    border: 0;
    border-radius: 0;
    overflow: visible;
    margin: 0 auto;
}

.cl-video-annotations-panel {
    width: min(100%, 980px);
    max-width: none;
    margin: 16px auto 0;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.08);
}

.cl-video-annotations-panel__title {
    font-size: 12px;
    font-weight: 700;
    color: #334155;
    padding: 8px 10px;
    border-bottom: 1px solid #eef2f7;
    background: #f8fafc;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.cl-video-viewer__toolbar {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    min-height: 38px;
    padding: 8px;
    background: #ffffff;
    position: relative;
    z-index: 5;
    width: 100%;
}

.cl-video-viewer__toolbar-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

.cl-video-toolbar__time {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.cl-video-toolbar__comment-input {
    min-width: 240px;
    resize: vertical;
    max-height: 120px;
    line-height: 1.4;
}

#divVideoToolbar .ae-tool-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 30px;
}

#divVideoToolbar .ae-tool-btn svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

#divVideoToolbar .ae-tool-btn.ae-active {
    background-color: #3b82f6 !important;
    color: white !important;
    border-color: #3b82f6 !important;
}

#divVideoToolbar .ae-tool-btn.ae-active i,
#divVideoToolbar .ae-tool-btn.ae-active span,
#divVideoToolbar .ae-tool-btn.ae-active svg {
    color: white !important;
}

.cl-video-toolbar__color {
    width: 34px;
    height: 30px;
    padding: 0;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    background: #ffffff;
}

.cl-video-toolbar__range {
    width: 110px;
    accent-color: #3b82f6;
}

.cl-video-toolbar__menu {
    width: 240px;
    z-index: 1200;
}

.cl-video-toolbar__menu--comment {
    width: 320px;
}

@media (max-width: 1100px) {
    .cl-video-viewer__toolbar {
        justify-content: flex-start;
    }
    .cl-video-viewer__toolbar-left {
        width: 100%;
    }
    .cl-video-toolbar__comment-input {
        flex: 1;
        min-width: 0;
    }
    .cl-video-toolbar__menu--comment {
        width: 260px;
    }
}

.cl-video-viewer__player {
    width: 100%;
    height: 100%;
    background: #000;
    object-fit: contain;
}

.cl-video-viewer__stage {
    position: relative;
    width: 100%;
    height: clamp(240px, 42vh, 420px);
    min-height: 240px;
    max-height: 420px;
    margin: 0;
    background: #000;
    flex: 1 1 auto;
    min-width: 0;
    z-index: 1;
    overflow: hidden;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

.cl-video-viewer__stage:fullscreen,
.cl-video-viewer__stage:-webkit-full-screen {
    width: 100vw;
    height: 100vh;
    max-height: none;
    border-radius: 0;
}

.cl-video-viewer__stage .video-js,
.cl-video-viewer__stage .vjs-fluid {
    width: 100%;
    height: 100%;
}

/* Force Video.js controls/progress bar visible in meeting video viewer */
#video-viewer-container .video-js .vjs-control-bar {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    height: 3.2em !important;
}

#video-viewer-container .video-js .vjs-progress-control,
#video-viewer-container .video-js .vjs-play-progress,
#video-viewer-container .video-js .vjs-load-progress {
    display: block !important;
    visibility: visible !important;
}

#video-viewer-container .video-js .vjs-progress-holder,
#video-viewer-container .video-js .vjs-progress-control {
    position: relative !important;
    overflow: visible !important;
}

.cl-video-timeline-markers {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 3;
}

.cl-video-timeline-marker {
    position: absolute;
    top: 32%;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    transform: translate(-50%, -50%);
    border: 1px solid #ffffff;
    padding: 0;
    pointer-events: auto;
    cursor: pointer;
    background: #f59e0b;
    box-shadow: 0 0 0 1px rgba(2, 6, 23, 0.35);
}

.cl-video-timeline-marker.is-comment {
    background: #3b82f6;
}

.cl-video-timeline-marker.is-selected,
.cl-video-timeline-marker.is-current {
    width: 12px;
    height: 12px;
    box-shadow: 0 0 0 2px rgba(250, 204, 21, 0.8);
}

#video-viewer-container .video-js.vjs-user-inactive .vjs-control-bar {
    opacity: 1 !important;
}

#video-viewer-container .video-js .vjs-control {
    display: flex !important;
    visibility: visible !important;
}

/* Keep 2 timers only: elapsed + decreasing remaining */
#video-viewer-container .video-js .vjs-duration,
#video-viewer-container .video-js .vjs-time-divider {
    display: none !important;
}

#video-viewer-container .video-js .vjs-current-time,
#video-viewer-container .video-js .vjs-remaining-time {
    display: flex !important;
    visibility: visible !important;
}

#video-viewer-container .video-js .vjs-big-play-button {
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
}

#video-viewer-container .video-js .vjs-live-control,
#video-viewer-container .video-js .vjs-live-display,
#video-viewer-container .video-js .vjs-seek-to-live-control,
#video-viewer-container .video-js .vjs-seek-to-live-text,
#video-viewer-container .video-js .vjs-liveui .vjs-control-bar .vjs-live-control,
#video-viewer-container .video-js .vjs-liveui .vjs-control-bar .vjs-seek-to-live-control {
    display: none !important;
}

/* Hide only selected right-side utility controls */
#video-viewer-container .video-js .vjs-subs-caps-button,
#video-viewer-container .video-js .vjs-captions-button,
#video-viewer-container .video-js .vjs-chapters-button,
#video-viewer-container .video-js .vjs-descriptions-button,
#video-viewer-container .video-js .vjs-audio-button {
    display: none !important;
}

.cl-video-viewer__canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    touch-action: none;
}

.cl-video-viewer__canvas.is-drawing {
    pointer-events: auto;
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23111827' d='M12.336,1.293a1,1,0,0,0-1.414,0L7.959,4.256a1,1,0,0,0,0,1.414L9.778,7.489,2.423,9.94a1,1,0,0,0-.681.882L1,21.934a1.151,1.151,0,0,0,.291.773A1.006,1.006,0,0,0,2.065,23l11.112-.741a1,1,0,0,0,.883-.681l2.451-7.354,1.819,1.819a1,1,0,0,0,1.414,0l2.963-2.964a1,1,0,0,0,0-1.414Zm.038,19.013-7.786.519,3.464-3.464a3.057,3.057,0,0,0,3.543-.58,3.1,3.1,0,0,0,0-4.377,3.17,3.17,0,0,0-4.378,0,3.09,3.09,0,0,0-.58,3.543L3.174,19.411l.519-7.786L11.359,9.07l3.571,3.571ZM8.633,15.367a1.1,1.1,0,1,1,1.548,0A1.095,1.095,0,0,1,8.633,15.367Zm10.4-1.447-2.255-2.255v0L12.336,7.219l0,0L10.08,4.963l1.549-1.549,8.957,8.956Z'/%3E%3C/svg%3E") 2 22, auto;
}

.cl-video-annotation-stamp {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 8;
    pointer-events: none;
    font-size: 12px;
    font-weight: 600;
    color: #f8fafc;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.35);
    border-radius: 999px;
    padding: 4px 10px;
    opacity: 0;
    transition: opacity 0.15s ease;
}

.cl-video-annotation-stamp.is-visible {
    opacity: 1;
}

.cl-video-comment-overlay {
    position: absolute;
    left: 12px;
    bottom: 56px;
    z-index: 9;
    max-width: min(70%, 520px);
    pointer-events: none;
    white-space: pre-line;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    color: #f8fafc;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(148, 163, 184, 0.4);
    border-radius: 8px;
    padding: 6px 10px;
    opacity: 0;
    transform: translateY(2px);
    transition: opacity 0.15s ease, transform 0.15s ease;
}

.cl-video-comment-overlay.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.cl-video-viewer__timeline {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px 10px;
    background: rgba(15, 23, 42, 0.9);
    border-top: 1px solid rgba(148, 163, 184, 0.25);
}

.cl-video-viewer__annotations {
    max-height: none;
    min-height: 0;
    overflow: visible;
    margin-top: 0;
    border: 0;
    border-radius: 0;
    background: #ffffff;
    padding: 12px;
}

.cl-video-stamp-host {
    margin: 8px 0 12px;
    display: flex;
    justify-content: center;
}

.cl-video-stamp-item {
    padding: 2px;
    border: 0;
    border-radius: 0;
    background: transparent;
    max-width: 240px;
    width: 100%;
}

.cl-video-stamp-item__image-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cl-video-stamp-badge {
    min-width: 170px;
    min-height: 78px;
    padding: 6px 8px;
    border: 2px solid #1f2937;
    border-radius: 2px;
    background: #7ec8e3;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.cl-video-stamp-badge__prefix {
    font-size: 10px;
    font-weight: 600;
    color: #111827;
    text-transform: uppercase;
    line-height: 1;
}

.cl-video-stamp-badge__number {
    font-size: 18px;
    font-weight: 700;
    color: #111827;
    line-height: 1.1;
}

.cl-video-stamp-badge__line {
    width: 58px;
    height: 2px;
    background: #111827;
    border-radius: 1px;
}

.cl-video-stamp-item__image {
    max-width: 210px;
    max-height: 88px;
    width: auto;
    height: auto;
    border: 0;
    border-radius: 0;
    display: block;
}

.cl-video-stamp-item__label {
    margin-top: 6px;
    font-size: 11px;
    color: #6b7280;
    text-align: center;
}

.cl-video-annotation-table-wrap {
    max-height: 260px;
    overflow: auto;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
}

.cl-video-annotation-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
    table-layout: auto;
}

.cl-video-annotation-table thead th {
    position: sticky;
    top: 0;
    background: #f8fafc;
    color: #334155;
    text-align: left;
    font-weight: 600;
    padding: 8px 10px;
    border-bottom: 1px solid #e5e7eb;
    white-space: nowrap;
}

.cl-video-annotation-table thead th:nth-child(1),
.cl-video-annotation-table tbody td:nth-child(1) {
    width: 74px;
}

.cl-video-annotation-table thead th:nth-child(2),
.cl-video-annotation-table tbody td:nth-child(2) {
    width: 120px;
}

.cl-video-annotation-table thead th:nth-child(3),
.cl-video-annotation-table tbody td:nth-child(3) {
    width: 130px;
}

.cl-video-annotation-table thead th:nth-child(4),
.cl-video-annotation-table tbody td:nth-child(4) {
    min-width: 200px;
}

.cl-video-annotation-table thead th:nth-child(5),
.cl-video-annotation-table tbody td:nth-child(5) {
    width: 96px;
    text-align: center;
}

.cl-video-annotation-table tbody td {
    padding: 8px 10px;
    border-bottom: 1px solid #f1f5f9;
    color: #1f2937;
    vertical-align: middle;
    overflow-wrap: anywhere;
}

.cl-video-annotation-table tbody td:nth-child(4) {
    overflow: visible;
    min-width: 200px;
}

.cl-video-annotation-table tbody tr:last-child td {
    border-bottom: 0;
}

.cl-video-annotation-row {
    cursor: pointer;
}

.cl-video-annotation-row:hover td {
    background: #f8fafc;
}

.cl-video-annotation-row.is-selected td {
    background: #eff6ff;
}

.cl-video-annotation-type {
    display: inline-block;
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 999px;
    border: 1px solid #dbeafe;
    background: #eff6ff;
    color: #1d4ed8;
}

.cl-video-annotation-type.is-drawing {
    border-color: #fde68a;
    background: #fffbeb;
    color: #92400e;
}

.cl-video-visible-seconds-input {
    width: 88px;
    min-width: 88px;
    height: 28px;
}

.cl-video-time-input {
    width: 56px;
    min-width: 56px;
    height: 28px;
}

.cl-video-content-input {
    flex: 1;
    min-width: 140px;
    width: 100%;
    height: 28px;
    box-sizing: border-box;
}

.cl-video-content-cell {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    width: 100%;
}

.cl-video-annotation-empty {
    padding: 14px;
    font-size: 12px;
    text-align: center;
    color: #94a3b8;
}

@media (max-width: 1100px) {
    .cl-video-viewer {
        max-width: 100%;
    }
    .cl-video-annotations-panel {
        max-width: 100%;
        margin-top: 14px;
    }
    .cl-video-viewer__stage {
        height: clamp(220px, 36vh, 320px);
        max-height: 320px;
    }
    .cl-video-stamp-item {
        max-width: 210px;
    }
}

/* Audio-only mode: larger play area for better control bar and menu visibility */
#video-viewer-container .cl-video-viewer__stage--audio-only,
.cl-video-viewer__stage--audio-only {
    height: clamp(160px, 20vh, 220px) !important;
    min-height: 160px !important;
    max-height: 220px !important;
    background: #1a1a2e;
}
.cl-video-viewer__stage--audio-only .cl-video-viewer__canvas {
    display: none !important;
}
.cl-video-viewer__stage--audio-only .cl-video-comment-overlay {
    position: absolute;
    top: 4px;
    left: 50%;
    transform: translateX(-50%);
    bottom: auto;
    max-width: 80%;
    font-size: 12px;
    padding: 4px 12px;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border-radius: 6px;
    text-align: center;
    z-index: 10;
    pointer-events: none;
    opacity: 0;
}
.cl-video-viewer__stage--audio-only .cl-video-comment-overlay.is-visible {
    opacity: 1;
    transform: translateX(-50%);
}

/* =========================================================
   CaseLoom Meeting Chat Module
   ========================================================= */

/* KT modal z-index fix — KT CSS leaves .kt-modal / .kt-modal-backdrop with
   no z-index (defaults to auto/0), so they render behind the chat overlay
   (z-index: 100) and chat drawer (z-index: 101).
   Force them above both so modals opened while chat is open are clickable. */
.kt-modal-backdrop { z-index: 200 !important; }
.kt-modal          { z-index: 201 !important; }

:root {
    --chat-bg:              #ffffff;
    --chat-bg2:             #f7f7f5;
    --chat-bg3:             #f0efe9;
    --chat-text:            #1a1a1a;
    --chat-text2:           #6b6b6b;
    --chat-text3:           #9b9b9b;
    --chat-border:          rgba(0,0,0,0.10);
    --chat-border-hov:      rgba(0,0,0,0.22);
    --chat-accent:          #378ADD;
    --chat-accent-lt:       #E6F1FB;
    --chat-red:             #E24B4A;
    --chat-orange:          #EF9F27;
    --chat-r-md:            8px;
    --chat-r-lg:            12px;
    --chat-sent-bg:         #E6F1FB;   /* matches --chat-accent-lt (theme blue) */
    --chat-recv-bg:         #f7f7f5;
    --chat-w:               340px;
    /* Reaction pill colours */
    --chat-reaction-bg:     #f0f8ff;   /* alice blue */
    --chat-reaction-border: #90C4EF;   /* soft blue border */
    --chat-reaction-text:   #1E6FAD;   /* dark blue for count */
}

/* ── Overlay & Drawer ─────────────────────────────────── */

.chat-overlay {
    position: fixed;
    inset: 0;
    z-index: 100;
    pointer-events: none;
}
.chat-overlay.open { pointer-events: auto; }

.chat-drawer {
    position: fixed;
    top: 0; right: 0; bottom: 0;
    width: var(--chat-w);
    background: var(--chat-bg);
    border-left: 1px solid var(--chat-border);
    box-shadow: -6px 0 24px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 101;
}
.chat-drawer.open { transform: translateX(0); }

/* Fullpage popup mode */
body.fullpage-chat .chat-drawer {
    width: 100vw;
    box-shadow: none;
    border-left: none;
}
body.fullpage-chat .chat-overlay { background: var(--chat-bg); }

/* ── Header ──────────────────────────────────────────── */

.chat-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    /* Match the meeting room header height exactly.
       --header-height is set on :root by _MeetingHeader.cshtml (56px normal, 72px with doc banner).
       The chat header should only ever be 56px (the primary bar height). */
    height: 66px;
    padding: 0 14px;
    border-bottom: 7px solid var(--chat-border);
    flex-shrink: 0;
    gap: 8px;
    box-sizing: border-box;
}
.chat-title-row { flex: 1; min-width: 0; }
.ct-text {
    font-size: 14px;
    font-weight: 600;
    color: var(--chat-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.chat-search-row {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}
.chat-search-input {
    flex: 1;
    border: 1px solid var(--chat-border);
    border-radius: 6px;
    padding: 4px 8px;
    font-size: 13px;
    outline: none;
    background: var(--chat-bg2);
    color: var(--chat-text);
    min-width: 0;
}
.chat-search-input:focus { border-color: var(--chat-accent); }
.chat-search-close {
    background: none; border: none; cursor: pointer;
    color: var(--chat-text2); padding: 2px; display: flex; align-items: center;
}
.chat-header-actions { display: flex; align-items: center; gap: 4px; flex-shrink: 0; }
.cha-btn {
    background: none; border: none; cursor: pointer;
    width: 28px; height: 28px; border-radius: 6px;
    display: flex; align-items: center; justify-content: center;
    color: var(--chat-text2);
    transition: background 0.12s, color 0.12s;
}
.cha-btn:hover { background: var(--chat-bg3); color: var(--chat-text); }

/* Host chat-lock toggle button — active (locked) state */
.btn-chat-lock { color: var(--chat-text2); }
.btn-chat-lock:hover { background: var(--chat-bg3); color: var(--chat-text); }
.btn-chat-lock.lock-active {
    background: rgba(220, 60, 60, 0.12);
    color: #d13b3b;
}
.btn-chat-lock.lock-active:hover {
    background: rgba(220, 60, 60, 0.2);
    color: #b83232;
}

/* ── Message List ────────────────────────────────────── */

.chat-messages {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 12px 8px; /* symmetric — avatar (28px) + gap (8px) already provides natural left offset for received messages */
    display: flex;
    flex-direction: column;
    gap: 16px;
    scroll-behavior: smooth;
}
.chat-load-more {
    text-align: center;
    padding: 6px 0 10px;
}
.chat-load-more button {
    background: none; border: 1px solid var(--chat-border);
    border-radius: 20px; padding: 4px 14px;
    font-size: 12px; color: var(--chat-accent); cursor: pointer;
}
.chat-load-more button:hover { background: var(--chat-accent-lt); }

/* Lazy-load top spinner */
.chat-top-spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    padding: 10px 0 4px;
}
.cts-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background: var(--chat-text3);
    animation: ctsBounce 1.2s infinite ease-in-out;
}
.cts-dot:nth-child(2) { animation-delay: 0.2s; }
.cts-dot:nth-child(3) { animation-delay: 0.4s; }
@keyframes ctsBounce {
    0%, 60%, 100% { transform: translateY(0); opacity: 0.5; }
    30%           { transform: translateY(-5px); opacity: 1; }
}

/* Date divider — pill style matching mockup */
.chat-date-divider {
    text-align: center;
    padding: 4px 0;
}
.chat-date-divider span,
.chat-date-divider:not(:has(span)) {
    display: inline-block;
    font-size: 10px;
    color: var(--chat-text3);
    background: var(--chat-bg2);
    padding: 3px 12px;
    border-radius: 10px;
}

/* ── Individual Message ───────────────────────────────── */

.message {
    position: relative;
}
/* Invisible bridge: extends the hover zone 20px below the message so the cursor
   can reach the action bar (bottom: -14px) without the hover state breaking. */
.message::after {
    content: '';
    position: absolute;
    bottom: -20px; left: 0; right: 0;
    height: 20px;
    pointer-events: auto; /* keep hover alive while cursor crosses the gap */
}

/* Scroll-to-message flash — fires when scrollToMessage() adds .highlight */
@keyframes msgHighlightFlash {
    0%   { box-shadow: 0 0 0 3px rgba(55,138,221,0.5); }
    60%  { box-shadow: 0 0 0 5px rgba(55,138,221,0.2); }
    100% { box-shadow: 0 0 0 0   rgba(55,138,221,0);   }
}
.message.highlight .msg-bubble {
    animation: msgHighlightFlash 1.6s ease-out forwards;
    border-radius: var(--chat-r-lg); /* ensure radius is set for box-shadow to look right */
}

/* Grouped message — same sender, same minute, no other sender in between */
.message.msg-grouped {
    /*margin-top: calc(-16px + 2px);*/   /* container gap is 16px → net 2px between grouped bubbles */
}
.message.msg-grouped .msg-sender {
    display: none;       /* hide timestamp / name row */
}
.msg-left.msg-grouped .msg-avatar {
    visibility: hidden;  /* keep space so bubble aligns, but hide avatar */
}

/* Sent (right) */
.msg-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: fit-content;
    margin-left: auto;
    max-width: 85%;
    min-width: 0;
}
.msg-right .msg-bubble {
    background: var(--chat-sent-bg);
    border-radius: var(--chat-r-lg) 0 var(--chat-r-lg) var(--chat-r-lg);
}

/* Received (left) */
.msg-left {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    max-width: 92%;
}
.msg-left .msg-content {
    flex: 0 1 auto;
    min-width: 0;
    position: relative;
    /* Reserve space for the absolutely-positioned sender row so it doesn't
       overlap the bubble. Grouped messages have no sender, so reset to 0. */
    padding-top: 20px;
}
.msg-left.msg-grouped .msg-content {
    padding-top: 0;
}
/* Remove sender from layout flow so msg-content width = bubble width only.
   Without this, a long "Name  HH:MM PM" row makes the content div wider
   than a short bubble, creating empty space to the right of the text. */
.msg-left .msg-sender {
    position: absolute;
    top: 0;
    left: 0;
    white-space: nowrap;
}
.msg-left .msg-bubble {
    background: var(--chat-recv-bg);
    border-radius: 0 var(--chat-r-lg) var(--chat-r-lg) var(--chat-r-lg);
    max-width: 100%;
}

/* Avatar */
.msg-avatar { flex-shrink: 0; margin-top: 4px; }
.avatar {
    width: 28px; height: 28px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; font-weight: 700;
    position: relative; user-select: none;
}
.avatar.purple { background: #EEEDFE; color: #534AB7; }
.avatar.teal   { background: #E1F5EE; color: #0F6E56; }
.avatar.amber  { background: #FAEEDA; color: #854F0B; }
.avatar.coral  { background: #FAECE7; color: #993C1D; }

.online-indicator {
    position: absolute; bottom: -1px; right: -1px;
    width: 10px; height: 10px; border-radius: 50%;
    border: 2px solid var(--chat-bg);
    background: transparent;   /* invisible when offline */
}
.online-indicator.online { background: #1D9E75; }   /* green dot when online */

/* Bubble */
.msg-bubble {
    padding: 8px 12px 16px;    /* extra bottom so text clears the overlapping reaction pills */
    font-size: 13px;
    line-height: 1.55;
    color: var(--chat-text);
    word-break: break-word;
    overflow: hidden;
    position: relative;
    min-width: 0;
    max-width: 100%;
}
.msg-sender {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin-bottom: 2px;
    padding: 0 2px;
}
.msg-sender .name  { font-size: 12px; font-weight: 600; color: var(--chat-text); }
.msg-sender .time  { font-size: 11px; color: var(--chat-text3); }

.msg-edited {
    font-size: 11px;
    color: var(--chat-text3);
    font-style: italic;
}

/* ── Inline Edit ────────────────────────────────────── */

/* Bubble dimmed while edit box is open */
.msg-bubble.editing-dimmed { opacity: 0.45; pointer-events: none; }

/* Expand message column to full width while editing */
.msg-right.editing-expanded {
    max-width: 100%;
    width: 100%;
    align-items: stretch;   /* children (edit-box) stretch to full column width */
}
.msg-right.editing-expanded .edit-box {
    width: 100%;
    box-sizing: border-box;
}

/* Edit box — sits below the bubble, full width of the message column */
.edit-box {
    margin-top: 4px;
    background: var(--chat-bg);
    border: 1.5px solid var(--chat-accent);
    border-radius: var(--chat-r-md);
    padding: 8px 10px 6px;
    box-shadow: 0 2px 8px rgba(55,138,221,0.12);
}

.edit-input {
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
    color: var(--chat-text);
    font-size: 13px; font-family: inherit; line-height: 1.55;
    padding: 0;
    box-sizing: border-box;
    resize: none; overflow: hidden; min-height: 20px;
    display: block;
}

/* Action bar inside the edit box */
.edit-action-bar {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px solid var(--chat-border);
}
.edit-save {
    background: var(--chat-accent); color: #fff;
    border: none; border-radius: 6px;
    padding: 4px 14px; font-size: 12px; font-weight: 500; cursor: pointer;
    transition: background 0.1s;
}
.edit-save:hover { background: #2d6fc7; }
.edit-cancel {
    background: none; border: 1px solid var(--chat-border);
    border-radius: 6px; padding: 4px 10px;
    font-size: 12px; cursor: pointer; color: var(--chat-text2);
    transition: background 0.1s;
}
.edit-cancel:hover { background: var(--chat-bg3); }

/* Deleted state */
.message.deleted .msg-bubble {
    background: transparent !important;
    border: 1px dashed var(--chat-border);
    color: var(--chat-text3);
    font-style: italic;
    padding: 8px 12px;
}
.message.deleted .msg-hover-actions { display: none !important; }
.message.deleted .msg-reactions     { display: none !important; }

/* ── Hover Actions — Teams style ─────────────────────── */

.msg-hover-actions {
    position: absolute;
    top: 1px; right: 0;
    display: flex; align-items: center; gap: 1px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 22px;
    padding: 4px 6px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.12), 0 0 0 0.5px rgba(0,0,0,0.04);
    opacity: 0; pointer-events: none;
    transition: opacity 0.12s ease, transform 0.12s ease;
    transform: translateY(6px) scale(0.96);
    z-index: 20;
    white-space: nowrap;
}
.message:hover .msg-hover-actions {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}
.msg-right .msg-hover-actions { right: 0; left: auto; }
.msg-left  .msg-hover-actions { left: 36px; right: auto; }

/* Quick emoji reactions */
.ha-btn {
    background: transparent;
    border: none;
    cursor: pointer;
    width: 25px; height: 25px;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    font-size: 16px;
    color: #64748b;
    transition: background 0.1s, transform 0.12s;
    line-height: 1;
}
.ha-btn.ha-react { font-size: 17px; }
.ha-btn.ha-react:hover { background: #f1f5f9; transform: scale(1.25); }
.ha-btn.ha-action { font-size: 13px; color: #64748b; }
.ha-btn.ha-action:hover { background: #f1f5f9; color: #006DD3; transform: scale(1.1); }
.ha-btn.ha-delete { font-size: 13px; color: var(--chat-red); }
.ha-btn.ha-delete:hover { background: #fee2e2; transform: scale(1.1); }

/* Divider between like and action buttons */
.ha-divider {
    width: 1px; height: 18px;
    background: #e2e8f0;
    margin: 0 3px;
    flex-shrink: 0;
}


/* ── Reply Quote ─────────────────────────────────────── */

.reply-quote {
    padding: 5px 10px;
    margin-bottom: 6px;
    background: rgba(0,0,0,0.06);
    border-left: 3px solid var(--chat-accent);
    border-radius: 0 6px 6px 0;
    cursor: pointer;
    font-size: 12px;
    color: var(--chat-text2);
    max-width: 100%;           /* never wider than the bubble */
    box-sizing: border-box;
    overflow: hidden;
    transition: background 0.12s;
}
.reply-quote:hover { background: rgba(0,0,0,0.11); }
.reply-quote .rq-name {
    font-weight: 600; color: var(--chat-accent);
    margin-bottom: 2px; font-size: 10px;
}
.reply-quote .rq-text {
    font-size: 11px; line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* Sent-bubble reply quote: slightly darker on the blue background */
.msg-right .reply-quote {
    background: rgba(0,0,0,0.07);
    border-left-color: rgba(55,138,221,0.8);
}

.msg-thread-count {
    display: inline-flex; align-items: center; gap: 4px;
    margin-top: 4px; padding: 2px 8px;
    font-size: 11px; font-weight: 500;
    color: var(--chat-accent); cursor: pointer;
    border-radius: 4px;
    transition: background 0.12s;
}
.msg-thread-count:hover { background: var(--chat-accent-lt); }

/* ── Reactions ───────────────────────────────────────── */

/* Reactions overlap the bubble's bottom edge — Teams style */
.msg-reactions {
    display: flex; flex-wrap: wrap; gap: 3px;
    margin-top: -14px;           /* pull up to overlap bubble bottom */
    position: relative; z-index: 2;
    justify-content: flex-end;   /* sent: right side */
    padding-right: 6px;
}
.msg-left .msg-reactions {
    justify-content: flex-start; /* received: left side */
    padding-right: 0;
    padding-left: 6px;
}

.reaction-pill {
    display: inline-flex; align-items: center; gap: 2px;
    padding: 1px 6px;
    border-radius: 20px;
    border: 1px solid rgba(0,0,0,0.10);
    background: var(--chat-bg);
    box-shadow: 0 1px 3px rgba(0,0,0,0.10);
    font-size: 12px; cursor: pointer;
    transition: border-color 0.12s, box-shadow 0.12s;
    user-select: none;
}
.reaction-pill:hover {
    border-color: var(--chat-accent);
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}
.reaction-pill.my-reaction {
    background: white;
    border-color: var(--chat-accent);
    /*box-shadow: 0 0 0 1.5px var(--chat-accent);*/
}
.reaction-pill .rp-count { font-size: 11px; color: var(--chat-text2); font-weight: 600; }

/* ── Skeleton Loading ─────────────────────────────── */

@keyframes skshimmer {
    0%   { background-position: -600px 0; }
    100% { background-position:  600px 0; }
}

.sk-base {
    background: linear-gradient(90deg,
        #c8d3e8 25%,
        #d8e1f0 50%,
        #c8d3e8 75%);
    background-size: 1200px 100%;
    animation: skshimmer 1.5s infinite linear;
    border-radius: 6px;
}

.skeleton-msg {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    width: 100%;          /* must fill the row so left/right positioning works */
    padding: 0 0 2px;
}
/* Right-side messages: push content to the right */
.skeleton-msg.sk-right {
    justify-content: flex-end;
}

/* Avatar circle placeholder (left messages only) */
.sk-avatar {
    width: 28px; height: 28px;
    border-radius: 50%;
    flex-shrink: 0;
}

.sk-body {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

/* Sender name bar (left messages only) */
.sk-name {
    height: 9px;
    width: 72px;
    border-radius: 4px;
}

/* Bubble placeholder — width is set inline per item */
.sk-bubble {
    height: 34px;
    border-radius: 14px;
}
.sk-right .sk-bubble {
    border-radius: 14px 0 14px 14px;
}
.sk-left .sk-bubble {
    border-radius: 0 14px 14px 14px;
}
/* Narrow second line to simulate a shorter last row of text */
.sk-bubble.sk-narrow {
    height: 34px;
    width: 120px !important;
}


/* Reaction picker popup */
.reaction-picker-popup {
    position: fixed;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-md);
    padding: 6px 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    display: flex; gap: 4px;
    z-index: 200;
}
.rp-btn {
    background: none; border: none; cursor: pointer;
    font-size: 16px; padding: 1px;
    border-radius: 6px;
    transition: background 0.1s, transform 0.1s;
}
.rp-btn:hover { background: var(--chat-bg3); transform: scale(1.2); }

/* ── Typing Indicator ────────────────────────────────── */

.typing-indicator {
    display: none; align-items: center; gap: 8px;
    padding: 4px 18px 6px;
    flex-shrink: 0;
}
.typing-indicator.show { display: flex; }
.typing-dots { display: flex; gap: 3px; align-items: center; }
.typing-dots span {
    width: 5px; height: 5px;
    background: var(--chat-text3);
    border-radius: 50%;
    animation: typingBounce 0.75s infinite;
    display: block;
}
.typing-dots span:nth-child(2) { animation-delay: 0.12s; }
.typing-dots span:nth-child(3) { animation-delay: 0.24s; }
@keyframes typingBounce {
    0%, 60%, 100% { transform: translateY(0); }
    30%           { transform: translateY(-4px); }
}
.typing-text { font-size: 12px; color: var(--chat-text3); }

/* ── Reply Bar ───────────────────────────────────────── */

.reply-bar {
    display: none; align-items: center; gap: 10px;
    padding: 8px 14px;
    border-top: 1px solid var(--chat-border);
    background: var(--chat-bg2);
    flex-shrink: 0;
}
.reply-bar.show { display: flex; }
.rb-line { width: 3px; min-height: 32px; border-radius: 2px; background: var(--chat-accent); flex-shrink: 0; }
.rb-content { flex: 1; min-width: 0; }
.rb-name { font-size: 12px; font-weight: 600; color: var(--chat-accent); }
.rb-text {
    font-size: 12px; color: var(--chat-text2);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.rb-close {
    background: none; border: none; cursor: pointer;
    color: var(--chat-text3); padding: 4px;
    border-radius: 4px; display: flex; align-items: center;
    transition: background 0.1s;
}
.rb-close:hover { background: var(--chat-bg3); color: var(--chat-text); }

/* ── Input Bar ───────────────────────────────────────── */

.chat-input-bar {
    border-top: 1px solid var(--chat-border);
    padding: 8px 10px;
    flex-shrink: 0;
    position: relative;
    background: var(--chat-bg);
}
.chat-input-row {
    display: flex; align-items: center; gap: 6px;
}
.chat-input-wrap {
    flex: 1; position: relative;
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-lg);
    background: var(--chat-bg2);
    display: flex; align-items: center;
    transition: border-color 0.15s;
}
.chat-input-wrap:focus-within { border-color: var(--chat-accent); }

#chatInput {
    flex: 1; border: none; background: none;
    padding: 8px 36px 8px 12px;
    font-size: 13px; color: var(--chat-text);
    outline: none; line-height: 1.4;
    font-family: inherit;
}
#chatInput::placeholder { color: var(--chat-text3); }

.emoji-toggle {
    position: absolute; right: 6px; top: 50%; transform: translateY(-50%);
    background: none; border: none; cursor: pointer;
    font-size: 16px; padding: 2px; line-height: 1;
    opacity: 0.7; transition: opacity 0.1s;
}
.emoji-toggle:hover { opacity: 1; }

.attach-btn, .send-btn {
    width: 34px; height: 34px; border-radius: 50%;
    border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: background 0.1s, transform 0.1s;
    flex-shrink: 0;
}
.attach-btn {
    background: var(--chat-bg2);
    color: var(--chat-text2);
    border: 1px solid var(--chat-border);
}
.attach-btn:hover { background: var(--chat-bg3); color: var(--chat-text); }
.attach-btn.active { transform: rotate(45deg); }

.send-btn {
    background: var(--chat-accent);
    color: #fff;
}
.send-btn:hover:not(:disabled) { background: #2d6fc7; }
.send-btn:disabled { background: var(--chat-bg3); color: var(--chat-text3); cursor: not-allowed; }

/* Chat disabled banner — shown to non-hosts when host locks chat */
.chat-disabled-banner {
    display: flex; align-items: center; justify-content: center; gap: 7px;
    padding: 10px 14px;
    color: var(--chat-text3);
    font-size: 12.5px;
    font-weight: 500;
    text-align: center;
    flex-shrink: 0;
}
.chat-disabled-banner svg { flex-shrink: 0; opacity: 0.6; }

/* Hide entire input row when locked (non-host view) */
.chat-input-bar.chat-input-locked .chat-input-row { display: none !important; }
.chat-input-bar.chat-input-locked .attach-menu { display: none !important; }
.chat-input-bar.chat-input-locked .mention-dropdown { display: none !important; }
.chat-input-bar.chat-input-locked .emoji-picker-popup { display: none !important; }
.chat-input-bar.chat-input-locked .attach-preview-panel { display: none !important; }

/* ── Attach Menu ────────────────────────────────────── */

.attach-menu {
    position: absolute;
    bottom: calc(100% + 6px); left: 0;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-lg);
    padding: 6px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    min-width: 160px;
    z-index: 50;
    animation: attachMenuIn 0.15s ease-out;
}
@keyframes attachMenuIn {
    from { opacity: 0; transform: translateY(6px) scale(0.97); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}
.attach-menu-item {
    display: flex; align-items: center; gap: 10px;
    width: 100%; background: none; border: none;
    padding: 8px 10px; border-radius: 8px;
    font-size: 13px; color: var(--chat-text);
    cursor: pointer; text-align: left;
    transition: background 0.1s;
}
.attach-menu-item:hover { background: var(--chat-bg2); }
.ami-icon {
    width: 28px; height: 28px; border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
}
.doc-icon   { background: linear-gradient(135deg, #3B82F6, #1D4ED8); color: #fff; }
.photo-icon { background: linear-gradient(135deg, #A855F7, #7C3AED); color: #fff; }
.video-icon { background: linear-gradient(135deg, #EF4444, #DC2626); color: #fff; }
.audio-icon { background: linear-gradient(135deg, #10B981, #059669); color: #fff; }

/* ── Attach Preview Panel ────────────────────────────── */

.attach-preview-panel {
    border-bottom: 1px solid var(--chat-border);
    margin-bottom: 8px;
    padding-bottom: 8px;
}
.ap-header {
    display: flex; justify-content: space-between; align-items: center;
    font-size: 12px; color: var(--chat-text2); margin-bottom: 6px;
}
.ap-clear {
    background: none; border: none; cursor: pointer;
    color: var(--chat-red); font-size: 12px;
}
.ap-list { display: flex; flex-wrap: wrap; gap: 6px; }

.attach-preview-item {
    display: flex; align-items: center; gap: 6px;
    background: var(--chat-bg2); border: 1px solid var(--chat-border);
    border-radius: 8px; padding: 5px 8px;
    font-size: 12px; max-width: 140px;
    position: relative;
}
.ap-thumb {
    width: 36px; height: 36px; object-fit: cover;
    border-radius: 6px; flex-shrink: 0;
}
.ap-file-info { flex: 1; min-width: 0; }
.ap-file-name { font-size: 11px; font-weight: 500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ap-file-size { font-size: 10px; color: var(--chat-text3); }
.ap-remove {
    background: none; border: none; cursor: pointer;
    color: var(--chat-text3); font-size: 14px; padding: 0 2px;
    flex-shrink: 0;
}
.ap-remove:hover { color: var(--chat-red); }

/* ── Drop Zone Overlay ───────────────────────────────── */

.drop-zone-overlay {
    position: absolute; inset: 0;
    background: rgba(55, 138, 221, 0.08);
    border: 2px dashed var(--chat-accent);
    border-radius: var(--chat-r-md);
    display: flex; align-items: center; justify-content: center;
    z-index: 10; pointer-events: none;
}
.dz-inner {
    display: flex; flex-direction: column; align-items: center; gap: 8px;
    color: var(--chat-accent); font-size: 13px; font-weight: 500;
}

/* ── Inline mention chip (rendered inside messages) ─── */

span.mention {
    display: inline;
    color: #534AB7;
    border-radius: 4px;
    padding: 1px 5px;
    font-size: 0.92em;
    font-weight: 500;
    line-height: inherit;
    white-space: nowrap;
}
/* On the sent (blue) bubble: white chip so it pops on the blue bg */
.msg-right .msg-bubble span.mention {
    background: rgba(255,255,255,0.55);
    color: #3C3489;
}

/* ── Mention Dropdown ───────────────────────────────── */

.mention-dropdown {
    position: absolute;
    bottom: calc(100% + 4px); left: 0; right: 60px;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-lg);
    padding: 6px 0;
    max-height: 200px; overflow-y: auto;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    z-index: 50;
}
.mention-item {
    display: flex; align-items: center; gap: 8px;
    padding: 7px 12px; cursor: pointer;
    border-left: 2px solid transparent;
    transition: background 0.1s, border-color 0.1s;
}
.mention-item:hover, .mention-item.active {
    background: #EEEDFE;
    border-left-color: #534AB7;
    padding-left: 10px; /* compensate for the 2px border */
}
.mention-item.active .mention-role { color: #534AB7; }

.mention-avatar {
    width: 26px; height: 26px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 10px; font-weight: 700; flex-shrink: 0;
    border: 1.5px solid transparent;
}
/* Avatar color rings — match the .avatar.{color} classes */
.mention-avatar.purple { background: #EEEDFE; color: #534AB7; border-color: #AFA9EC; }
.mention-avatar.teal   { background: #E1F5EE; color: #0F6E56; border-color: #5DCAA5; }
.mention-avatar.amber  { background: #FAEEDA; color: #854F0B; border-color: #FAC775; }
.mention-avatar.coral  { background: #FAECE7; color: #993C1D; border-color: #F5C4B3; }

.mention-name  { font-size: 13px; font-weight: 500; color: var(--chat-text); }
.mention-role  { font-size: 11px; color: var(--chat-text3); margin-left: auto; transition: color 0.1s; }

/* ── Emoji Picker ───────────────────────────────────── */

.emoji-picker-popup {
    position: absolute;
    bottom: calc(100% + 4px); right: 44px;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-lg);
    padding: 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
    width: 220px;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    z-index: 50;
}
.ep-btn {
    background: none; border: none; cursor: pointer;
    font-size: 18px; padding: 4px;
    border-radius: 6px; line-height: 1;
    transition: background 0.1s, transform 0.1s;
}
.ep-btn:hover { background: var(--chat-bg3); transform: scale(1.15); }

/* ── File Cards in Messages ─────────────────────────── */

/* ── Upload progress indicator ── */
.upload-progress {
    display: flex; align-items: center; gap: 8px;
    margin-top: 8px;
    font-size: 12px; color: var(--chat-text3);
}
.up-spinner {
    width: 14px; height: 14px; border-radius: 50%;
    border: 2px solid var(--chat-border);
    border-top-color: var(--chat-accent);
    animation: upSpin 0.7s linear infinite;
    flex-shrink: 0;
}
@keyframes upSpin { to { transform: rotate(360deg); } }

/* ── Receiver-side attachment pending placeholder ── */
.attach-pending {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 14px;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-md);
    min-width: 140px;
}
.attach-pending .ap-file-icon {
    width: 32px; height: 32px; border-radius: 6px;
    background: var(--chat-border);
    animation: apPulse 1.2s ease-in-out infinite;
    flex-shrink: 0;
}
.attach-pending .ap-lines {
    flex: 1; display: flex; flex-direction: column; gap: 6px;
}
.attach-pending .ap-line {
    height: 9px; border-radius: 4px;
    background: var(--chat-border);
    animation: apPulse 1.2s ease-in-out infinite;
}
.attach-pending .ap-line.short { width: 55%; }
@keyframes apPulse {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

/* ── File card ── */
.file-card {
    display: flex; align-items: center; gap: 0;
    background: var(--chat-bg);
    border: 1px solid var(--chat-border);
    border-radius: var(--chat-r-md);
    margin-top: 6px;
    min-width: 0; max-width: 260px;
    overflow: hidden;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.file-card:hover {
    border-color: var(--chat-border-hov);
    box-shadow: 0 2px 8px rgba(0,0,0,0.07);
}
/* coloured left stripe keyed to file type */
.fa-icon {
    width: 44px; min-width: 44px; align-self: stretch;
    display: flex; align-items: center; justify-content: center;
    font-size: 9px; font-weight: 700; color: #fff;
    letter-spacing: 0.3px;
}
.fa-icon.pdf  { background: #E53935; }
.fa-icon.doc  { background: #1565C0; }
.fa-icon.xls  { background: #2E7D32; }
.fa-icon.ppt  { background: #E64A19; }
.fa-icon.img  { background: #7B1FA2; }
.fa-icon.vid  { background: #E65100; }
.fa-icon.aud  { background: #00695C; }
.fa-icon.zip  { background: #F9A825; }
.fa-icon.file { background: #546E7A; }

.fc-info { flex: 1; min-width: 0; overflow: hidden; padding: 9px 8px; }
.fc-name {
    font-size: 12px; font-weight: 500; color: var(--chat-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.fc-meta {
    font-size: 11px; color: var(--chat-text3); margin-top: 2px;
    white-space: nowrap;
}
/* Download button — right side of card */
.fc-download {
    background: none; border: none; border-left: 1px solid var(--chat-border);
    cursor: pointer; padding: 0 11px; align-self: stretch;
    color: var(--chat-text3); text-decoration: none;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0;
    transition: background 0.12s, color 0.12s;
}
.fc-download:hover { background: var(--chat-bg3); color: var(--chat-accent); }
/* on sent (blue) bubble, invert download button */
.msg-right .msg-bubble .fc-download {
    border-left-color: rgba(55,138,221,0.25);
}
.msg-right .msg-bubble .fc-download:hover {
    background: rgba(0,0,0,0.07);
    color: var(--chat-text);
}

/* ── Image thumbnail ── */
.img-thumb-wrap {
    position: relative; display: block;
    margin-top: 6px; border-radius: var(--chat-r-md); overflow: hidden;
    max-width: 240px; cursor: pointer;
    border: 1px solid var(--chat-border);
}
.img-thumb {
    display: block; width: 100%; max-width: 240px;
    border-radius: var(--chat-r-md);
    transition: transform 0.22s ease;
}
.img-thumb-wrap:hover .img-thumb { transform: scale(1.03); }

.img-thumb-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to bottom, transparent 45%, rgba(0,0,0,0.60) 100%);
    opacity: 0; transition: opacity 0.18s ease;
    display: flex; flex-direction: column;
    justify-content: flex-end; align-items: flex-start;
    padding: 8px 10px; gap: 3px;
}
.img-thumb-wrap:hover .img-thumb-overlay { opacity: 1; }

.img-thumb-overlay span {
    font-size: 11px; color: rgba(255,255,255,0.82);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    max-width: 100%;
}
/* Download link sitting inside the image overlay */
.img-thumb-overlay .fc-download {
    align-self: flex-end;
    border: 1px solid rgba(255,255,255,0.35);
    border-left: 1px solid rgba(255,255,255,0.35); /* override card rule */
    background: rgba(255,255,255,0.15);
    color: #fff; border-radius: 6px;
    padding: 4px 9px; font-size: 11px; font-weight: 500;
    display: flex; align-items: center; gap: 5px;
    text-decoration: none; flex-shrink: 0;
    transition: background 0.12s;
}
.img-thumb-overlay .fc-download:hover { background: rgba(255,255,255,0.28); }


/* ── Date separator ─────────────────────────────────────── */
.chat-date-separator {
    display: flex;
    align-items: center;
    margin: 8px 16px 6px;
    pointer-events: none;
    user-select: none;
}
.chat-date-separator::before,
.chat-date-separator::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, transparent, #dde3ef 60%);
}
.chat-date-separator::after {
    background: linear-gradient(to left, transparent, #dde3ef 60%);
}
.chat-date-separator span {
    font-size: 11px;
    font-weight: 600;
    color: #006DD3;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
    background: #e8f1fb;
    padding: 4px 14px;
    border-radius: 20px;
    margin: 0 10px;
    flex-shrink: 0;
}

/* =============================================================================
   Pre-Meeting Notes — PreMeetingNotesEngine.js styles
   Completely isolated: all selectors prefixed with .pn-
   Does not override any existing styles.
   ============================================================================= */

/* ── Skeleton loading animation ─────────────────────────────────────────── */
@keyframes pnShimmer {
    0%   { background-position: -260px 0; }
    100% { background-position:  260px 0; }
}
.pn-skeleton-card {
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 8px;
}
.pn-skel {
    border-radius: 4px;
    background: linear-gradient(90deg, #f0f2f5 25%, #e4e7ed 50%, #f0f2f5 75%);
    background-size: 520px 100%;
    animation: pnShimmer 1.3s infinite linear;
}
.pn-skel-label  { height: 9px;  width: 48px; margin-bottom: 8px; }
.pn-skel-line   { height: 11px; width: 100%; margin-bottom: 5px; }
.pn-skel-line-s { height: 11px; width: 65%;  margin-bottom: 0; }
.pn-skel-time   { height: 8px;  width: 55px; margin-top: 10px; }

/* ── Note marker (blue pin on the PDF page) ─────────────────────────────── */
.pn-marker {
    position: absolute;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1a6fd4;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 8px rgba(26, 111, 212, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 200;
    transition: transform 0.15s, box-shadow 0.15s;
    user-select: none;
    pointer-events: all;
}
.pn-marker:hover {
    transform: scale(1.15);
    box-shadow: 0 4px 14px rgba(26, 111, 212, 0.45);
}
.pn-marker span {
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}
.pn-marker.pn-active {
    background: #0d4fa0;
    box-shadow: 0 0 0 4px rgba(26, 111, 212, 0.25);
}

/* Pulse animation when scrolled-to */
@keyframes pnPulse {
    0%   { transform: scale(1);    box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.55); }
    40%  { transform: scale(1.4);  box-shadow: 0 0 0 12px rgba(26, 111, 212, 0); }
    70%  { transform: scale(1.15); }
    100% { transform: scale(1);    box-shadow: 0 2px 8px rgba(26, 111, 212, 0.35); }
}
.pn-marker.pn-pulse {
    animation: pnPulse 0.85s ease;
}

/* ── Note popup (view existing note) ────────────────────────────────────── */
.pn-popup {
    position: absolute;
    width: 285px;
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.14);
    z-index: 300;
    overflow: hidden;
    animation: pnFadeUp 0.15s ease;
}
@keyframes pnFadeUp {
    from { opacity: 0; transform: translateY(-5px); }
    to   { opacity: 1; transform: translateY(0); }
}
.pn-popup-head {
    padding: 10px 14px;
    background: #f8f9fb;
    border-bottom: 1px solid #e4e7ed;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.pn-popup-head-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.pn-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1a6fd4;
    flex-shrink: 0;
}
.pn-popup-title {
    font-size: 11px;
    font-weight: 600;
    color: #2d3748;
}
.pn-popup-close {
    cursor: pointer;
    color: #9aa3b0;
    font-size: 18px;
    line-height: 1;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pn-popup-close:hover { color: #2d3748; }
.pn-popup-body {
    padding: 12px 14px;
    font-size: 13px;
    line-height: 1.65;
    color: #2d3748;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 180px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #d1d5db transparent;
}
.pn-popup-body::-webkit-scrollbar       { width: 4px; }
.pn-popup-body::-webkit-scrollbar-track { background: transparent; }
.pn-popup-body::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 4px; }
.pn-popup-body::-webkit-scrollbar-thumb:hover { background: #9ca3af; }
.pn-popup-foot {
    padding: 8px 14px;
    border-top: 1px solid #f1f3f6;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.pn-private-tag {
    font-size: 10px;
    color: #2e7d4f;
    background: #e8f5ee;
    border-radius: 20px;
    padding: 2px 9px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 4px;
}
.pn-popup-acts { display: flex; gap: 6px; }

/* ── Shared button style ─────────────────────────────────────────────────── */
.pn-btn {
    font-size: 11px;
    padding: 4px 10px;
    border: 1px solid #e4e7ed;
    border-radius: 6px;
    background: #fff;
    color: #4a5568;
    cursor: pointer;
    font-family: inherit;
    transition: background 0.1s;
}
.pn-btn:hover { background: #f8f9fb; }
.pn-btn-del   { color: #c0392b; border-color: #f5c6c3; }
.pn-btn-del:hover { background: #fdf0ee; }

/* ── Note input box (add mode) ──────────────────────────────────────────── */
.pn-input-box {
    position: absolute;
    width: 292px;
    background: #fff;
    border: 2px solid #1a6fd4;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.14);
    z-index: 310;
    overflow: hidden;
    animation: pnFadeUp 0.15s ease;
}
.pn-input-head {
    padding: 9px 14px;
    background: #e8f1fd;
    border-bottom: 1px solid #b8d4f8;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 11px;
    font-weight: 600;
    color: #0d4fa0;
}
.pn-input-close {
    cursor: pointer;
    font-size: 17px;
    line-height: 1;
    color: #1a6fd4;
}
.pn-input-close:hover { color: #0d4fa0; }
.pn-input-body { padding: 12px; }
.pn-textarea {
    width: 100%;
    height: 82px;
    padding: 8px 10px;
    border: 1px solid #e4e7ed;
    border-radius: 6px;
    font-size: 13px;
    font-family: inherit;
    color: #2d3748;
    resize: none;
    outline: none;
    background: #f8f9fb;
    line-height: 1.6;
    box-sizing: border-box;
}
.pn-textarea:focus {
    border-color: #b8d4f8;
    background: #fff;
}
.pn-input-hint {
    font-size: 10px;
    color: #2e7d4f;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 4px;
}
.pn-input-foot {
    padding: 8px 12px 12px;
    display: flex;
    justify-content: flex-end;
    gap: 7px;
}
.pn-btn-cancel { font-size: 12px; padding: 6px 14px; border-radius: 6px; }
.pn-btn-save   {
    font-size: 12px;
    padding: 6px 14px;
    border-radius: 6px;
    border: none;
    background: #1a6fd4;
    color: #fff;
    cursor: pointer;
    font-family: inherit;
    font-weight: 500;
}
.pn-btn-save:hover { background: #0d4fa0; }

/* ── Add mode: crosshair on viewer container ────────────────────────────── */
.pn-add-mode,
.pn-add-mode .page {
    cursor: crosshair !important;
}

/* ── Drop hint bar (fixed, bottom of viewer) ────────────────────────────── */
.pn-drop-hint {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #1a6fd4;
    color: #fff;
    font-size: 12.5px;
    font-weight: 500;
    text-align: center;
    padding: 9px;
    z-index: 400;
    display: none;
    cursor: crosshair;
    pointer-events: none;
}
.pn-drop-hint.pn-hint-visible {
    display: block;
}

/* ── Excel mode: fixed-position input box ───────────────────────────────── */
.pn-input-box-fixed {
    position: fixed;       /* viewport-relative so it doesn't scroll with the table */
    z-index: 9000;
}

/* ── Excel mode: fixed-position note popup ──────────────────────────────── */
.pn-popup-fixed {
    position: fixed;       /* viewport-relative so it doesn't scroll with the table */
    z-index: 9000;
}

/* ── Excel mode: numbered note marker on cells ──────────────────────────── */
/* Cells need a positioning context for the absolute marker */
td.excel-cell {
    position: relative;
}
/* Smaller pin variant — sits in the top-right corner of the cell */
.pn-excel-marker {
    width: 18px;
    height: 18px;
    position: absolute;
    top: -1px;
    right: -1px;
    z-index: 50;
}
.pn-excel-marker span {
    font-size: 9px;
    font-weight: 700;
}

/* ── Excel mode: cell pulse highlight ──────────────────────────────────── */
@keyframes pnCellPulse {
    0%   { box-shadow: inset 0 0 0 2px #1a6fd4, 0 0 0 0 rgba(26, 111, 212, 0.45); }
    50%  { box-shadow: inset 0 0 0 2px #1a6fd4, 0 0 0 6px rgba(26, 111, 212, 0); }
    100% { box-shadow: none; }
}
.pn-excel-cell-pulse {
    animation: pnCellPulse 1.2s ease-out forwards;
    background: rgba(26, 111, 212, 0.12) !important;
}

/* ── Excel add-mode cursor on cells ─────────────────────────────────────── */
#excel-viewer-container.pn-add-mode .excel-cell:not(.highlighted) {
    cursor: crosshair;
}

/* ── Action buttons inside the panel head (right side) ──────────────────── */
.pn-panel-actions {
    display: flex;
    gap: 6px;
    margin-left: auto;   /* push + Note button to the right */
    flex-shrink: 0;
}
.pn-action-btn {
    flex: none;
    padding: 6px 10px;
    font-size: 12px;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid #e4e7ed;
    background: #fff;
    color: #4a5568;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    transition: background 0.15s, border-color 0.15s;
    font-family: inherit;
    white-space: nowrap;
}
.pn-action-btn:hover { background: #f3f4f6; }

/* Add note — blue primary */
.pn-action-add {
    background: #1a6fd4;
    color: #fff;
    border-color: #1a6fd4;
}
.pn-action-add:hover { background: #0d4fa0; border-color: #0d4fa0; }
.pn-action-add.pn-btn-active {
    background: #dc3545;
    border-color: #dc3545;
}
.pn-action-add.pn-btn-active:hover { background: #b02a37; }

/* Show/Hide notes toggle — match primary download button */
.pn-action-vis {
    background: var(--bs-primary, #3b82f6);
    color: #fff;
    border-color: var(--bs-primary, #3b82f6);
}
.pn-action-vis:hover {
    opacity: 0.9;
    background: var(--bs-primary, #3b82f6);
    border-color: var(--bs-primary, #3b82f6);
}
.pn-action-vis.pn-vis-hidden {
    background: var(--bs-primary, #3b82f6);
    border-color: var(--bs-primary, #3b82f6);
    color: #fff;
}

/* ── Two-column viewer layout ────────────────────────────────────────────── */
.pn-viewer-layout {
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
    overflow: visible;   /* don't clip children — sheet tabs live deep in the Excel viewer */
    height: 100%;
    min-height: 0;
}
.pn-viewer-content {
    flex: 1 1 auto;
    overflow: visible;   /* must NOT be hidden — overflow:hidden clips pointer events   */
    min-height: 0;       /* for inner content that's taller than its computed grid row */
    height: 100%;        /* lets h-full! children (pdfViwerSection etc.) resolve correctly */
    position: relative;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

/* ── Left notes panel (in-flow, not fixed) ──────────────────────────────── */
.pn-panel {
    width: 260px;
    min-width: 260px;
    min-height: 0;     /* allow panel to shrink inside the flex layout */
    flex-shrink: 0;
    background: #fff;
    border-right: 1px solid #e4e7ed;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 2px 0 6px rgba(0, 0, 0, 0.05);
    transition: width 0.22s ease, min-width 0.22s ease, opacity 0.22s ease, box-shadow 0.22s ease;
}

/* Collapsed state — panel slides out of view */
.pn-panel.pn-panel-collapsed {
    width: 0 !important;
    min-width: 0 !important;
    opacity: 0;
    border-right: none;
    box-shadow: none;
}
.pn-panel-head {
    padding: 10px 12px;
    border-bottom: 1px solid #e4e7ed;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}
.pn-panel-title {
    font-size: 13px;
    font-weight: 600;
    color: #1a202c;
    white-space: nowrap;
    flex-shrink: 0;
}
.pn-count-badge {
    font-size: 11px;
    background: #e8f1fd;
    color: #1a6fd4;
    border-radius: 20px;
    padding: 2px 10px;
    font-weight: 600;
}
.pn-panel-sub {
    font-size: 11px;
    color: #9aa3b0;
    display: flex;
    align-items: center;
    gap: 5px;
}
.pn-info-banner {
    margin: 10px 12px 4px;
    padding: 10px 13px;
    background: #e8f1fd;
    border: 1px solid #b8d4f8;
    border-radius: 8px;
    font-size: 11px;
    color: #0d4fa0;
    line-height: 1.6;
    display: flex;
    gap: 8px;
    align-items: flex-start;
    flex-shrink: 0;
}
.pn-notes-scroll {
    flex: 1 1 0;       /* 0 base keeps it from inheriting content size */
    min-height: 0;     /* override flex min-height:auto so it can shrink */
    overflow-y: auto;
    overflow-x: hidden;
    padding: 10px 12px 0;
    /* thin custom scrollbar */
    scrollbar-width: thin;
    scrollbar-color: #d1d5db transparent;
}
.pn-notes-scroll::-webkit-scrollbar {
    width: 4px;
}
.pn-notes-scroll::-webkit-scrollbar-track {
    background: transparent;
}
.pn-notes-scroll::-webkit-scrollbar-thumb {
    background: #d1d5db;
    border-radius: 4px;
}
.pn-notes-scroll::-webkit-scrollbar-thumb:hover {
    background: #9ca3af;
}
.pn-add-hint {
    padding: 10px 12px 14px;
    font-size: 12px;
    color: #9aa3b0;
    text-align: center;
    border-top: 1px solid #f1f3f6;
    cursor: pointer;
    transition: color 0.15s;
    flex-shrink: 0;
}
.pn-add-hint:hover { color: #1a6fd4; }

/* ── Note cards in the panel ────────────────────────────────────────────── */
.pn-note-card {
    background: #fff;
    border: 1px solid #e4e7ed;
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 8px;
    position: relative;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.pn-note-card:hover {
    border-color: #b8d4f8;
    box-shadow: 0 2px 6px rgba(26, 111, 212, 0.09);
}
.pn-note-card.pn-card-active {
    border-color: #1a6fd4;
    background: #f0f6ff;
}

/* Page label row */
.pn-card-loc {
    font-size: 10px;
    font-weight: 700;
    color: #1a6fd4;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Note body text — clamped to 3 lines in the list; full text visible in the popup */
.pn-card-text {
    font-size: 12.5px;
    color: #2d3748;
    line-height: 1.5;
    word-break: break-word;
    padding-right: 18px;   /* room for delete × */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Bottom row: timestamp only (no private tag) */
.pn-card-foot {
    margin-top: 7px;
    display: flex;
    align-items: center;
}
.pn-card-time {
    font-size: 10px;
    color: #b0b7c3;
}

/* Delete button — top-right, subtle until hover */
.pn-card-del {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #c5cdd8;
    font-size: 14px;
    line-height: 1;
    transition: background 0.12s, color 0.12s;
}
.pn-card-del:hover {
    background: #fdecea;
    color: #c0392b;
}

.pn-empty {
    font-size: 12px;
    color: #b0b7c3;
    text-align: center;
    padding: 28px 12px;
    line-height: 1.7;
}

/* ── Floating toolbar fallback (if viewer-top-bar not found) ────────────── */
.pn-floating-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: #fff;
    border-bottom: 1px solid #e4e7ed;
    flex-shrink: 0;
}

/* ── Toast ──────────────────────────────────────────────────────────────── */
.pn-toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%) translateY(60px);
    background: #1a202c;
    color: #fff;
    padding: 9px 20px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    z-index: 9999;
    transition: transform 0.22s ease;
    white-space: nowrap;
    pointer-events: none;
}
.pn-toast.pn-toast-show {
    transform: translateX(-50%) translateY(0);
}

/* ── Video / Audio mode: timeline markers ──────────────────────────────── */
/* Ensure Video.js progress bar has a positioning context for our pins */
.vjs-progress-holder { position: relative; overflow: visible !important; }

/* The pin dot on the seek bar */
.pn-video-marker {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background: #1a6fd4;
    border: 2px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    z-index: 20;
    box-shadow: 0 1px 4px rgba(26, 111, 212, 0.45);
    transition: transform 0.15s, box-shadow 0.15s;
}
.pn-video-marker:hover {
    transform: translateY(-50%) scale(1.45);
    box-shadow: 0 2px 10px rgba(26, 111, 212, 0.55);
}
.pn-video-marker.pn-active {
    background: #0d4fa0;
    box-shadow: 0 0 0 4px rgba(26, 111, 212, 0.25);
}

/* Number badge inside the dot */
.pn-video-marker span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 7px;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    user-select: none;
}

/* Timestamp label that floats above the marker on hover */
.pn-video-marker-label {
    position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    background: #1a202c;
    color: #fff;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.15s;
}
.pn-video-marker:hover .pn-video-marker-label { opacity: 1; }

/* Pulse animation when seeking to a note */
@keyframes pnVideoPulse {
    0%   { box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.7); }
    60%  { box-shadow: 0 0 0 8px rgba(26, 111, 212, 0); }
    100% { box-shadow: 0 1px 4px rgba(26, 111, 212, 0.45); }
}
.pn-video-marker.pn-pulse {
    animation: pnVideoPulse 0.85s ease;
}

/* Add-mode cursor on the Video.js progress bar */
.vjs-progress-control.pn-add-mode,
.vjs-progress-control.pn-add-mode .vjs-progress-holder {
    cursor: crosshair !important;
}

/* Video note input box (position:fixed like the Excel one) */
.pn-video-input-box {
    position: fixed;
    background: #fff;
    border: 1px solid #d1d9e6;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.14);
    width: 305px;
    z-index: 9100;
    overflow: hidden;
    font-family: inherit;
}
.pn-video-input-box .pn-input-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px 8px;
    background: #f7f9fc;
    border-bottom: 1px solid #e4e7ed;
    font-size: 12px;
    font-weight: 600;
    color: #2d3748;
}
.pn-video-input-box .pn-input-close {
    cursor: pointer;
    font-size: 16px;
    color: #9aa3b0;
    line-height: 1;
}
.pn-video-input-box .pn-input-close:hover { color: #374151; }
.pn-video-input-box .pn-timestamp-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #e8f1fd;
    color: #1a6fd4;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 20px;
    margin-left: 8px;
}

/* Video note popup (position:fixed) */
.pn-video-popup {
    position: fixed;
    background: #fff;
    border: 1px solid #d1d9e6;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.14);
    width: 280px;
    z-index: 9100;
    overflow: hidden;
    font-family: inherit;
}

/* ── Video frame note markers (clickable pins on the video image) ───────── */

/* The video stage needs relative positioning so absolute pins are anchored to it */
.cl-video-viewer__stage {
    position: relative;
}

/* Pin dot at the clicked x,y position on the video frame */
.pn-video-frame-marker {
    position: absolute;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1a6fd4;
    border: 2.5px solid #fff;
    box-shadow: 0 2px 10px rgba(26, 111, 212, 0.45);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 50;
    transform: translate(-50%, -50%);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    user-select: none;
    pointer-events: all;
}
.pn-video-frame-marker:hover {
    transform: translate(-50%, -50%) scale(1.35);
    box-shadow: 0 4px 14px rgba(26, 111, 212, 0.55);
}
.pn-video-frame-marker.pn-active {
    background: #0d4fa0;
    box-shadow: 0 0 0 3px rgba(26, 111, 212, 0.35), 0 2px 10px rgba(0, 0, 0, 0.25);
}
.pn-video-frame-marker span {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    user-select: none;
    pointer-events: none;
}
/* Timestamp label that floats above the frame marker on hover */
.pn-video-frame-marker-label {
    position: absolute;
    bottom: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0, 0, 0, 0.78);
    color: #fff;
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
}
.pn-video-frame-marker:hover .pn-video-frame-marker-label { opacity: 1; }

/* Pulse animation for frame markers */
@keyframes pnFramePulse {
    0%   { box-shadow: 0 0 0 0 rgba(26, 111, 212, 0.65); }
    70%  { box-shadow: 0 0 0 12px rgba(26, 111, 212, 0); }
    100% { box-shadow: 0 0 0 0 rgba(26, 111, 212, 0); }
}
.pn-video-frame-marker.pn-pulse {
    animation: pnFramePulse 0.9s ease-out;
}

/* Crosshair cursor on video stage when add mode is active */
.cl-video-viewer__stage.pn-add-mode {
    cursor: crosshair !important;
}

/* Seek-bar pin for frame notes uses a slightly different outline to distinguish */
.pn-video-marker.pn-frame-note {
    background: #7c3aed;
    border-color: #fff;
}
.pn-video-marker.pn-frame-note.pn-active {
    background: #5b21b6;
}


