/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */
@layer properties {
    @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
        ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
        *,
        :before,
        :after,
        ::backdrop {
            --tw-translate-x: 0;
            --tw-translate-y: 0;
            --tw-translate-z: 0;
            --tw-scale-x: 1;
            --tw-scale-y: 1;
            --tw-scale-z: 1;
            --tw-rotate-x: initial;
            --tw-rotate-y: initial;
            --tw-rotate-z: initial;
            --tw-skew-x: initial;
            --tw-skew-y: initial;
            --tw-pan-x: initial;
            --tw-pan-y: initial;
            --tw-pinch-zoom: initial;
            --tw-space-y-reverse: 0;
            --tw-space-x-reverse: 0;
            --tw-divide-x-reverse: 0;
            --tw-border-style: solid;
            --tw-divide-y-reverse: 0;
            --tw-gradient-position: initial;
            --tw-gradient-from: #0000;
            --tw-gradient-via: #0000;
            --tw-gradient-to: #0000;
            --tw-gradient-stops: initial;
            --tw-gradient-via-stops: initial;
            --tw-gradient-from-position: 0%;
            --tw-gradient-via-position: 50%;
            --tw-gradient-to-position: 100%;
            --tw-leading: initial;
            --tw-font-weight: initial;
            --tw-tracking: initial;
            --tw-ordinal: initial;
            --tw-slashed-zero: initial;
            --tw-numeric-figure: initial;
            --tw-numeric-spacing: initial;
            --tw-numeric-fraction: initial;
            --tw-shadow: 0 0 #0000;
            --tw-shadow-color: initial;
            --tw-shadow-alpha: 100%;
            --tw-inset-shadow: 0 0 #0000;
            --tw-inset-shadow-color: initial;
            --tw-inset-shadow-alpha: 100%;
            --tw-ring-color: initial;
            --tw-ring-shadow: 0 0 #0000;
            --tw-inset-ring-color: initial;
            --tw-inset-ring-shadow: 0 0 #0000;
            --tw-ring-inset: initial;
            --tw-ring-offset-width: 0px;
            --tw-ring-offset-color: #fff;
            --tw-ring-offset-shadow: 0 0 #0000;
            --tw-outline-style: solid;
            --tw-blur: initial;
            --tw-brightness: initial;
            --tw-contrast: initial;
            --tw-grayscale: initial;
            --tw-hue-rotate: initial;
            --tw-invert: initial;
            --tw-opacity: initial;
            --tw-saturate: initial;
            --tw-sepia: initial;
            --tw-drop-shadow: initial;
            --tw-drop-shadow-color: initial;
            --tw-drop-shadow-alpha: 100%;
            --tw-drop-shadow-size: initial;
            --tw-backdrop-blur: initial;
            --tw-backdrop-brightness: initial;
            --tw-backdrop-contrast: initial;
            --tw-backdrop-grayscale: initial;
            --tw-backdrop-hue-rotate: initial;
            --tw-backdrop-invert: initial;
            --tw-backdrop-opacity: initial;
            --tw-backdrop-saturate: initial;
            --tw-backdrop-sepia: initial;
            --tw-duration: initial;
            --tw-ease: initial;
            --tw-content: "";
        }
    }
}
@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-500: oklch(63.7% 0.237 25.331);
        --color-green-100: oklch(96.2% 0.044 156.743);
        --color-green-400: oklch(79.2% 0.209 151.711);
        --color-green-500: oklch(72.3% 0.219 149.579);
        --color-green-600: oklch(62.7% 0.194 149.214);
        --color-blue-100: oklch(93.2% 0.032 255.585);
        --color-blue-200: oklch(88.2% 0.059 254.128);
        --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-indigo-500: oklch(58.5% 0.233 277.117);
        --color-purple-100: oklch(94.6% 0.033 307.174);
        --color-purple-200: oklch(90.2% 0.063 306.703);
        --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-pink-500: oklch(65.6% 0.241 354.308);
        --color-gray-50: oklch(98.5% 0.002 247.839);
        --color-gray-300: oklch(87.2% 0.01 258.338);
        --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-gray-800: oklch(27.8% 0.033 256.848);
        --color-gray-900: oklch(21% 0.034 264.665);
        --color-black: #000;
        --color-white: #fff;
        --spacing: 0.25rem;
        --container-xs: 20rem;
        --container-sm: 24rem;
        --container-md: 28rem;
        --container-lg: 32rem;
        --container-3xl: 48rem;
        --container-4xl: 56rem;
        --container-5xl: 64rem;
        --container-6xl: 72rem;
        --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: 1.5;
        --text-lg: 1.125rem;
        --text-lg--line-height: calc(1.75 / 1.125);
        --text-xl: 1.25rem;
        --text-xl--line-height: calc(1.75 / 1.25);
        --text-2xl: 1.5rem;
        --text-2xl--line-height: calc(2 / 1.5);
        --text-4xl: 2.25rem;
        --text-4xl--line-height: calc(2.5 / 2.25);
        --text-6xl: 3.75rem;
        --text-6xl--line-height: 1;
        --text-7xl: 4.5rem;
        --text-7xl--line-height: 1;
        --font-weight-normal: 400;
        --font-weight-medium: 500;
        --font-weight-semibold: 600;
        --font-weight-bold: 700;
        --tracking-tight: -0.025em;
        --tracking-widest: 0.1em;
        --leading-relaxed: 1.625;
        --radius-xs: 0.125rem;
        --radius-2xl: 1rem;
        --ease-out: cubic-bezier(0, 0, 0.2, 1);
        --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
        --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
        --blur-sm: 8px;
        --blur-md: 12px;
        --blur-3xl: 64px;
        --aspect-video: 16/9;
        --default-transition-duration: 0.15s;
        --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-border: var(--border);
    }
}
@layer base {
    *,
    :after,
    :before,
    ::backdrop {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0;
    }
    ::file-selector-button {
        box-sizing: border-box;
        border: 0 solid;
        margin: 0;
        padding: 0;
    }
    html,
    :host {
        -webkit-text-size-adjust: 100%;
        -moz-tab-size: 4;
        tab-size: 4;
        line-height: 1.5;
        font-family: var(
            --default-font-family,
            ui-sans-serif,
            system-ui,
            sans-serif,
            "Apple Color Emoji",
            "Segoe UI Emoji",
            "Segoe UI Symbol",
            "Noto Color Emoji"
        );
        font-feature-settings: var(--default-font-feature-settings, normal);
        font-variation-settings: var(--default-font-variation-settings, normal);
        -webkit-tap-highlight-color: transparent;
    }
    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px;
    }
    abbr:where([title]) {
        -webkit-text-decoration: underline dotted;
        text-decoration: underline dotted;
    }
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit;
    }
    a {
        color: inherit;
        -webkit-text-decoration: inherit;
        text-decoration: inherit;
    }
    b,
    strong {
        font-weight: bolder;
    }
    code,
    kbd,
    samp,
    pre {
        font-family: var(
            --default-mono-font-family,
            ui-monospace,
            SFMono-Regular,
            Menlo,
            Monaco,
            Consolas,
            "Liberation Mono",
            "Courier New",
            monospace
        );
        font-feature-settings: var(
            --default-mono-font-feature-settings,
            normal
        );
        font-variation-settings: var(
            --default-mono-font-variation-settings,
            normal
        );
        font-size: 1em;
    }
    small {
        font-size: 80%;
    }
    sub,
    sup {
        vertical-align: baseline;
        font-size: 75%;
        line-height: 0;
        position: relative;
    }
    sub {
        bottom: -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 {
        vertical-align: middle;
        display: block;
    }
    img,
    video {
        max-width: 100%;
        height: auto;
    }
    button,
    input,
    select,
    optgroup,
    textarea {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0;
    }
    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        opacity: 1;
        background-color: #0000;
        border-radius: 0;
    }
    :where(select:is([multiple], [size])) optgroup {
        font-weight: bolder;
    }
    :where(select:is([multiple], [size])) optgroup option {
        padding-inline-start: 20px;
    }
    ::file-selector-button {
        margin-inline-end: 4px;
    }
    ::placeholder {
        opacity: 1;
    }
    @supports (not ((-webkit-appearance: -apple-pay-button))) or
        (contain-intrinsic-size: 1px) {
        ::placeholder {
            color: currentColor;
        }
        @supports (color: color-mix(in lab, red, red)) {
            ::placeholder {
                color: color-mix(in oklab, currentcolor 50%, transparent);
            }
        }
    }
    textarea {
        resize: vertical;
    }
    ::-webkit-search-decoration {
        -webkit-appearance: none;
    }
    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit;
    }
    ::-webkit-datetime-edit {
        display: inline-flex;
    }
    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0;
    }
    ::-webkit-datetime-edit {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-year-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-month-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-day-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-hour-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-minute-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-second-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-millisecond-field {
        padding-block: 0;
    }
    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0;
    }
    :-moz-ui-invalid {
        box-shadow: none;
    }
    button,
    input:where([type="button"], [type="reset"], [type="submit"]) {
        -webkit-appearance: button;
        -moz-appearance: button;
        appearance: button;
    }
    ::file-selector-button {
        -webkit-appearance: button;
        -moz-appearance: button;
        appearance: button;
    }
    ::-webkit-inner-spin-button {
        height: auto;
    }
    ::-webkit-outer-spin-button {
        height: auto;
    }
    [hidden]:where(:not([hidden="until-found"])) {
        display: none !important;
    }
    * {
        border-color: var(--border);
        outline-color: var(--ring);
    }
    @supports (color: color-mix(in lab, red, red)) {
        * {
            outline-color: color-mix(in oklab, var(--ring) 50%, transparent);
        }
    }
    body {
        background-color: var(--background);
        color: var(--foreground);
    }
}
@layer components;
@layer utilities {
    .\@container\/card-header {
        container: card-header/inline-size;
    }
    .pointer-events-none {
        pointer-events: none;
    }
    .collapse {
        visibility: collapse;
    }
    .invisible {
        visibility: hidden;
    }
    .visible {
        visibility: visible;
    }
    .sr-only {
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
        border-width: 0;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        position: absolute;
        overflow: hidden;
    }
    .not-sr-only {
        clip: auto;
        white-space: normal;
        width: auto;
        height: auto;
        margin: 0;
        padding: 0;
        position: static;
        overflow: visible;
    }
    .absolute {
        position: absolute;
    }
    .fixed {
        position: fixed;
    }
    .relative {
        position: relative;
    }
    .static {
        position: static;
    }
    .sticky {
        position: sticky;
    }
    .inset-0 {
        inset: calc(var(--spacing) * 0);
    }
    .inset-x-0 {
        inset-inline: calc(var(--spacing) * 0);
    }
    .inset-y-0 {
        inset-block: calc(var(--spacing) * 0);
    }
    .-top-12 {
        top: calc(var(--spacing) * -12);
    }
    .top-0 {
        top: calc(var(--spacing) * 0);
    }
    .top-1\.5 {
        top: calc(var(--spacing) * 1.5);
    }
    .top-1\/2 {
        top: 50%;
    }
    .top-1\/3 {
        top: 33.3333%;
    }
    .top-3\.5 {
        top: calc(var(--spacing) * 3.5);
    }
    .top-4 {
        top: calc(var(--spacing) * 4);
    }
    .top-\[1px\] {
        top: 1px;
    }
    .top-\[50\%\] {
        top: 50%;
    }
    .top-\[60\%\] {
        top: 60%;
    }
    .top-full {
        top: 100%;
    }
    .-right-12 {
        right: calc(var(--spacing) * -12);
    }
    .right-0 {
        right: calc(var(--spacing) * 0);
    }
    .right-1 {
        right: calc(var(--spacing) * 1);
    }
    .right-1\/4 {
        right: 25%;
    }
    .right-2 {
        right: calc(var(--spacing) * 2);
    }
    .right-3 {
        right: calc(var(--spacing) * 3);
    }
    .right-4 {
        right: calc(var(--spacing) * 4);
    }
    .-bottom-12 {
        bottom: calc(var(--spacing) * -12);
    }
    .bottom-0 {
        bottom: calc(var(--spacing) * 0);
    }
    .bottom-1\/3 {
        bottom: 33.3333%;
    }
    .-left-12 {
        left: calc(var(--spacing) * -12);
    }
    .left-0 {
        left: calc(var(--spacing) * 0);
    }
    .left-1 {
        left: calc(var(--spacing) * 1);
    }
    .left-1\/2 {
        left: 50%;
    }
    .left-1\/4 {
        left: 25%;
    }
    .left-2 {
        left: calc(var(--spacing) * 2);
    }
    .left-\[50\%\] {
        left: 50%;
    }
    .isolate {
        isolation: isolate;
    }
    .isolation-auto {
        isolation: auto;
    }
    .z-10 {
        z-index: 10;
    }
    .z-20 {
        z-index: 20;
    }
    .z-50 {
        z-index: 50;
    }
    .z-\[1\] {
        z-index: 1;
    }
    .col-start-2 {
        grid-column-start: 2;
    }
    .row-span-2 {
        grid-row: span 2 / span 2;
    }
    .row-start-1 {
        grid-row-start: 1;
    }
    .container {
        width: 100%;
    }
    @media (min-width: 40rem) {
        .container {
            max-width: 40rem;
        }
    }
    @media (min-width: 48rem) {
        .container {
            max-width: 48rem;
        }
    }
    @media (min-width: 64rem) {
        .container {
            max-width: 64rem;
        }
    }
    @media (min-width: 80rem) {
        .container {
            max-width: 80rem;
        }
    }
    @media (min-width: 96rem) {
        .container {
            max-width: 96rem;
        }
    }
    .-mx-1 {
        margin-inline: calc(var(--spacing) * -1);
    }
    .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-auto {
        margin-inline: auto;
    }
    .my-0\.5 {
        margin-block: calc(var(--spacing) * 0.5);
    }
    .my-1 {
        margin-block: calc(var(--spacing) * 1);
    }
    .-mt-4 {
        margin-top: calc(var(--spacing) * -4);
    }
    .mt-1\.5 {
        margin-top: calc(var(--spacing) * 1.5);
    }
    .mt-2 {
        margin-top: calc(var(--spacing) * 2);
    }
    .mt-4 {
        margin-top: calc(var(--spacing) * 4);
    }
    .mt-12 {
        margin-top: calc(var(--spacing) * 12);
    }
    .mt-auto {
        margin-top: auto;
    }
    .mb-1 {
        margin-bottom: calc(var(--spacing) * 1);
    }
    .mb-2 {
        margin-bottom: calc(var(--spacing) * 2);
    }
    .mb-4 {
        margin-bottom: calc(var(--spacing) * 4);
    }
    .mb-6 {
        margin-bottom: calc(var(--spacing) * 6);
    }
    .mb-8 {
        margin-bottom: calc(var(--spacing) * 8);
    }
    .mb-12 {
        margin-bottom: calc(var(--spacing) * 12);
    }
    .mb-16 {
        margin-bottom: calc(var(--spacing) * 16);
    }
    .mb-20 {
        margin-bottom: calc(var(--spacing) * 20);
    }
    .-ml-4 {
        margin-left: calc(var(--spacing) * -4);
    }
    .ml-1 {
        margin-left: calc(var(--spacing) * 1);
    }
    .ml-auto {
        margin-left: auto;
    }
    .line-clamp-1 {
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
    }
    .block {
        display: block;
    }
    .contents {
        display: contents;
    }
    .flex {
        display: flex;
    }
    .flow-root {
        display: flow-root;
    }
    .grid {
        display: grid;
    }
    .hidden {
        display: none;
    }
    .inline {
        display: inline;
    }
    .inline-block {
        display: inline-block;
    }
    .inline-flex {
        display: inline-flex;
    }
    .inline-grid {
        display: inline-grid;
    }
    .inline-table {
        display: inline-table;
    }
    .list-item {
        display: list-item;
    }
    .table {
        display: table;
    }
    .table-caption {
        display: table-caption;
    }
    .table-cell {
        display: table-cell;
    }
    .table-column {
        display: table-column;
    }
    .table-column-group {
        display: table-column-group;
    }
    .table-footer-group {
        display: table-footer-group;
    }
    .table-header-group {
        display: table-header-group;
    }
    .table-row {
        display: table-row;
    }
    .table-row-group {
        display: table-row-group;
    }
    .field-sizing-content {
        field-sizing: content;
    }
    .aspect-square {
        aspect-ratio: 1;
    }
    .aspect-video {
        aspect-ratio: var(--aspect-video);
    }
    .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-7 {
        width: calc(var(--spacing) * 7);
        height: calc(var(--spacing) * 7);
    }
    .size-8 {
        width: calc(var(--spacing) * 8);
        height: calc(var(--spacing) * 8);
    }
    .size-9 {
        width: calc(var(--spacing) * 9);
        height: calc(var(--spacing) * 9);
    }
    .size-full {
        width: 100%;
        height: 100%;
    }
    .h-1 {
        height: calc(var(--spacing) * 1);
    }
    .h-1\.5 {
        height: calc(var(--spacing) * 1.5);
    }
    .h-2 {
        height: calc(var(--spacing) * 2);
    }
    .h-2\.5 {
        height: calc(var(--spacing) * 2.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 {
        height: calc(var(--spacing) * 8);
    }
    .h-9 {
        height: calc(var(--spacing) * 9);
    }
    .h-10 {
        height: calc(var(--spacing) * 10);
    }
    .h-12 {
        height: calc(var(--spacing) * 12);
    }
    .h-14 {
        height: calc(var(--spacing) * 14);
    }
    .h-20 {
        height: calc(var(--spacing) * 20);
    }
    .h-24 {
        height: calc(var(--spacing) * 24);
    }
    .h-64 {
        height: calc(var(--spacing) * 64);
    }
    .h-96 {
        height: calc(var(--spacing) * 96);
    }
    .h-\[1\.15rem\] {
        height: 1.15rem;
    }
    .h-\[calc\(100\%-1px\)\] {
        height: calc(100% - 1px);
    }
    .h-\[var\(--radix-navigation-menu-viewport-height\)\] {
        height: var(--radix-navigation-menu-viewport-height);
    }
    .h-\[var\(--radix-select-trigger-height\)\] {
        height: var(--radix-select-trigger-height);
    }
    .h-auto {
        height: auto;
    }
    .h-full {
        height: 100%;
    }
    .h-px {
        height: 1px;
    }
    .h-svh {
        height: 100svh;
    }
    .max-h-\(--radix-context-menu-content-available-height\) {
        max-height: var(--radix-context-menu-content-available-height);
    }
    .max-h-\(--radix-dropdown-menu-content-available-height\) {
        max-height: var(--radix-dropdown-menu-content-available-height);
    }
    .max-h-\(--radix-select-content-available-height\) {
        max-height: var(--radix-select-content-available-height);
    }
    .max-h-\[300px\] {
        max-height: 300px;
    }
    .min-h-0 {
        min-height: calc(var(--spacing) * 0);
    }
    .min-h-4 {
        min-height: calc(var(--spacing) * 4);
    }
    .min-h-16 {
        min-height: calc(var(--spacing) * 16);
    }
    .min-h-screen {
        min-height: 100vh;
    }
    .min-h-svh {
        min-height: 100svh;
    }
    .w-\(--sidebar-width\) {
        width: var(--sidebar-width);
    }
    .w-0 {
        width: calc(var(--spacing) * 0);
    }
    .w-1 {
        width: calc(var(--spacing) * 1);
    }
    .w-1\/12 {
        width: 8.33333%;
    }
    .w-2 {
        width: calc(var(--spacing) * 2);
    }
    .w-2\.5 {
        width: calc(var(--spacing) * 2.5);
    }
    .w-3 {
        width: calc(var(--spacing) * 3);
    }
    .w-3\/4 {
        width: 75%;
    }
    .w-4 {
        width: calc(var(--spacing) * 4);
    }
    .w-5 {
        width: calc(var(--spacing) * 5);
    }
    .w-5\/12 {
        width: 41.6667%;
    }
    .w-6 {
        width: calc(var(--spacing) * 6);
    }
    .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-12 {
        width: calc(var(--spacing) * 12);
    }
    .w-14 {
        width: calc(var(--spacing) * 14);
    }
    .w-20 {
        width: calc(var(--spacing) * 20);
    }
    .w-24 {
        width: calc(var(--spacing) * 24);
    }
    .w-64 {
        width: calc(var(--spacing) * 64);
    }
    .w-72 {
        width: calc(var(--spacing) * 72);
    }
    .w-96 {
        width: calc(var(--spacing) * 96);
    }
    .w-\[100px\] {
        width: 100px;
    }
    .w-auto {
        width: auto;
    }
    .w-fit {
        width: fit-content;
    }
    .w-full {
        width: 100%;
    }
    .w-max {
        width: max-content;
    }
    .w-px {
        width: 1px;
    }
    .max-w-\(--skeleton-width\) {
        max-width: var(--skeleton-width);
    }
    .max-w-3xl {
        max-width: var(--container-3xl);
    }
    .max-w-4xl {
        max-width: var(--container-4xl);
    }
    .max-w-5xl {
        max-width: var(--container-5xl);
    }
    .max-w-6xl {
        max-width: var(--container-6xl);
    }
    .max-w-\[calc\(100\%-2rem\)\] {
        max-width: calc(100% - 2rem);
    }
    .max-w-max {
        max-width: max-content;
    }
    .max-w-md {
        max-width: var(--container-md);
    }
    .max-w-xs {
        max-width: var(--container-xs);
    }
    .min-w-0 {
        min-width: calc(var(--spacing) * 0);
    }
    .min-w-5 {
        min-width: calc(var(--spacing) * 5);
    }
    .min-w-8 {
        min-width: calc(var(--spacing) * 8);
    }
    .min-w-9 {
        min-width: calc(var(--spacing) * 9);
    }
    .min-w-10 {
        min-width: calc(var(--spacing) * 10);
    }
    .min-w-\[8rem\] {
        min-width: 8rem;
    }
    .min-w-\[12rem\] {
        min-width: 12rem;
    }
    .min-w-\[var\(--radix-select-trigger-width\)\] {
        min-width: var(--radix-select-trigger-width);
    }
    .flex-1 {
        flex: 1;
    }
    .flex-shrink-0 {
        flex-shrink: 0;
    }
    .shrink {
        flex-shrink: 1;
    }
    .shrink-0 {
        flex-shrink: 0;
    }
    .grow {
        flex-grow: 1;
    }
    .grow-0 {
        flex-grow: 0;
    }
    .basis-full {
        flex-basis: 100%;
    }
    .caption-bottom {
        caption-side: bottom;
    }
    .border-collapse {
        border-collapse: collapse;
    }
    .origin-\(--radix-context-menu-content-transform-origin\) {
        transform-origin: var(--radix-context-menu-content-transform-origin);
    }
    .origin-\(--radix-dropdown-menu-content-transform-origin\) {
        transform-origin: var(--radix-dropdown-menu-content-transform-origin);
    }
    .origin-\(--radix-hover-card-content-transform-origin\) {
        transform-origin: var(--radix-hover-card-content-transform-origin);
    }
    .origin-\(--radix-menubar-content-transform-origin\) {
        transform-origin: var(--radix-menubar-content-transform-origin);
    }
    .origin-\(--radix-popover-content-transform-origin\) {
        transform-origin: var(--radix-popover-content-transform-origin);
    }
    .origin-\(--radix-select-content-transform-origin\) {
        transform-origin: var(--radix-select-content-transform-origin);
    }
    .origin-\(--radix-tooltip-content-transform-origin\) {
        transform-origin: var(--radix-tooltip-content-transform-origin);
    }
    .-translate-x-1\/2 {
        --tw-translate-x: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .-translate-x-px {
        --tw-translate-x: -1px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-x-\[-50\%\] {
        --tw-translate-x: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-x-px {
        --tw-translate-x: 1px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .-translate-y-1\/2 {
        --tw-translate-y: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-y-0\.5 {
        --tw-translate-y: calc(var(--spacing) * 0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-y-\[-50\%\] {
        --tw-translate-y: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-y-\[calc\(-50\%_-_2px\)\] {
        --tw-translate-y: calc(-50% - 2px);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .translate-none {
        translate: none;
    }
    .scale-3d {
        scale: var(--tw-scale-x) var(--tw-scale-y) var(--tw-scale-z);
    }
    .rotate-45 {
        rotate: 45deg;
    }
    .rotate-90 {
        rotate: 90deg;
    }
    .transform {
        transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,)
            var(--tw-skew-x,) var(--tw-skew-y,);
    }
    .animate-caret-blink {
        animation: 1.25s ease-out infinite caret-blink;
    }
    .animate-in {
        animation: enter var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .animate-pulse {
        animation: var(--animate-pulse);
    }
    .cursor-default {
        cursor: default;
    }
    .cursor-pointer {
        cursor: pointer;
    }
    .touch-pinch-zoom {
        --tw-pinch-zoom: pinch-zoom;
        touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
    }
    .touch-none {
        touch-action: none;
    }
    .resize {
        resize: both;
    }
    .scroll-my-1 {
        scroll-margin-block: calc(var(--spacing) * 1);
    }
    .scroll-py-1 {
        scroll-padding-block: calc(var(--spacing) * 1);
    }
    .list-none {
        list-style-type: none;
    }
    .auto-rows-min {
        grid-auto-rows: min-content;
    }
    .grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .grid-cols-\[0_1fr\] {
        grid-template-columns: 0 1fr;
    }
    .grid-rows-\[auto_auto\] {
        grid-template-rows: auto auto;
    }
    .flex-col {
        flex-direction: column;
    }
    .flex-col-reverse {
        flex-direction: column-reverse;
    }
    .flex-row {
        flex-direction: row;
    }
    .flex-wrap {
        flex-wrap: wrap;
    }
    .items-center {
        align-items: center;
    }
    .items-end {
        align-items: flex-end;
    }
    .items-start {
        align-items: flex-start;
    }
    .items-stretch {
        align-items: stretch;
    }
    .justify-between {
        justify-content: space-between;
    }
    .justify-center {
        justify-content: center;
    }
    .justify-items-start {
        justify-items: start;
    }
    .gap-1 {
        gap: calc(var(--spacing) * 1);
    }
    .gap-1\.5 {
        gap: calc(var(--spacing) * 1.5);
    }
    .gap-2 {
        gap: calc(var(--spacing) * 2);
    }
    .gap-3 {
        gap: calc(var(--spacing) * 3);
    }
    .gap-4 {
        gap: calc(var(--spacing) * 4);
    }
    .gap-6 {
        gap: calc(var(--spacing) * 6);
    }
    .gap-8 {
        gap: calc(var(--spacing) * 8);
    }
    :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-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-16 > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(
            calc(var(--spacing) * 16) * var(--tw-space-y-reverse)
        );
        margin-block-end: calc(
            calc(var(--spacing) * 16) * calc(1 - var(--tw-space-y-reverse))
        );
    }
    :where(.space-y-reverse > :not(:last-child)) {
        --tw-space-y-reverse: 1;
    }
    :where(.space-x-1 > :not(:last-child)) {
        --tw-space-x-reverse: 0;
        margin-inline-start: calc(
            calc(var(--spacing) * 1) * var(--tw-space-x-reverse)
        );
        margin-inline-end: calc(
            calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse))
        );
    }
    :where(.space-x-reverse > :not(:last-child)) {
        --tw-space-x-reverse: 1;
    }
    .gap-y-0\.5 {
        row-gap: calc(var(--spacing) * 0.5);
    }
    :where(.divide-x > :not(:last-child)) {
        --tw-divide-x-reverse: 0;
        border-inline-style: var(--tw-border-style);
        border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
        border-inline-end-width: calc(
            1px * calc(1 - var(--tw-divide-x-reverse))
        );
    }
    :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-y-reverse > :not(:last-child)) {
        --tw-divide-y-reverse: 1;
    }
    .self-start {
        align-self: flex-start;
    }
    .justify-self-end {
        justify-self: flex-end;
    }
    .truncate {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }
    .overflow-auto {
        overflow: auto;
    }
    .overflow-hidden {
        overflow: hidden;
    }
    .overflow-x-auto {
        overflow-x: auto;
    }
    .overflow-x-hidden {
        overflow-x: hidden;
    }
    .overflow-y-auto {
        overflow-y: auto;
    }
    .rounded-2xl {
        border-radius: var(--radius-2xl);
    }
    .rounded-\[2px\] {
        border-radius: 2px;
    }
    .rounded-\[4px\] {
        border-radius: 4px;
    }
    .rounded-\[inherit\] {
        border-radius: inherit;
    }
    .rounded-full {
        border-radius: 3.40282e38px;
    }
    .rounded-lg {
        border-radius: var(--radius);
    }
    .rounded-md {
        border-radius: calc(var(--radius) - 2px);
    }
    .rounded-none {
        border-radius: 0;
    }
    .rounded-sm {
        border-radius: calc(var(--radius) - 4px);
    }
    .rounded-xl {
        border-radius: calc(var(--radius) + 4px);
    }
    .rounded-xs {
        border-radius: var(--radius-xs);
    }
    .rounded-s {
        border-start-start-radius: 0.25rem;
        border-end-start-radius: 0.25rem;
    }
    .rounded-ss {
        border-start-start-radius: 0.25rem;
    }
    .rounded-e {
        border-start-end-radius: 0.25rem;
        border-end-end-radius: 0.25rem;
    }
    .rounded-se {
        border-start-end-radius: 0.25rem;
    }
    .rounded-ee {
        border-end-end-radius: 0.25rem;
    }
    .rounded-es {
        border-end-start-radius: 0.25rem;
    }
    .rounded-t {
        border-top-left-radius: 0.25rem;
        border-top-right-radius: 0.25rem;
    }
    .rounded-l {
        border-top-left-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
    }
    .rounded-tl {
        border-top-left-radius: 0.25rem;
    }
    .rounded-tl-sm {
        border-top-left-radius: calc(var(--radius) - 4px);
    }
    .rounded-r {
        border-top-right-radius: 0.25rem;
        border-bottom-right-radius: 0.25rem;
    }
    .rounded-tr {
        border-top-right-radius: 0.25rem;
    }
    .rounded-b {
        border-bottom-right-radius: 0.25rem;
        border-bottom-left-radius: 0.25rem;
    }
    .rounded-br {
        border-bottom-right-radius: 0.25rem;
    }
    .rounded-bl {
        border-bottom-left-radius: 0.25rem;
    }
    .border {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }
    .border-\[1\.5px\] {
        border-style: var(--tw-border-style);
        border-width: 1.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-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-l {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .border-dashed {
        --tw-border-style: dashed;
        border-style: dashed;
    }
    .border-\(--color-border\) {
        border-color: var(--color-border);
    }
    .border-black\/10 {
        border-color: #0000001a;
    }
    @supports (color: color-mix(in lab, red, red)) {
        .border-black\/10 {
            border-color: color-mix(
                in oklab,
                var(--color-black) 10%,
                transparent
            );
        }
    }
    .border-border\/50 {
        border-color: var(--border);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .border-border\/50 {
            border-color: color-mix(in oklab, var(--border) 50%, transparent);
        }
    }
    .border-gray-300 {
        border-color: var(--color-gray-300);
    }
    .border-input {
        border-color: var(--input);
    }
    .border-primary {
        border-color: var(--primary);
    }
    .border-sidebar-border {
        border-color: var(--sidebar-border);
    }
    .border-transparent {
        border-color: #0000;
    }
    .border-t-transparent {
        border-top-color: #0000;
    }
    .border-l-transparent {
        border-left-color: #0000;
    }
    .bg-\(--color-bg\) {
        background-color: var(--color-bg);
    }
    .bg-accent {
        background-color: var(--accent);
    }
    .bg-background {
        background-color: var(--background);
    }
    .bg-black {
        background-color: var(--color-black);
    }
    .bg-black\/50 {
        background-color: #00000080;
    }
    @supports (color: color-mix(in lab, red, red)) {
        .bg-black\/50 {
            background-color: color-mix(
                in oklab,
                var(--color-black) 50%,
                transparent
            );
        }
    }
    .bg-blue-100 {
        background-color: var(--color-blue-100);
    }
    .bg-blue-200 {
        background-color: var(--color-blue-200);
    }
    .bg-blue-500 {
        background-color: var(--color-blue-500);
    }
    .bg-border {
        background-color: var(--border);
    }
    .bg-card {
        background-color: var(--card);
    }
    .bg-destructive {
        background-color: var(--destructive);
    }
    .bg-foreground {
        background-color: var(--foreground);
    }
    .bg-green-100 {
        background-color: var(--color-green-100);
    }
    .bg-green-500 {
        background-color: var(--color-green-500);
    }
    .bg-muted,
    .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-popover {
        background-color: var(--popover);
    }
    .bg-primary,
    .bg-primary\/20 {
        background-color: var(--primary);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .bg-primary\/20 {
            background-color: color-mix(
                in oklab,
                var(--primary) 20%,
                transparent
            );
        }
    }
    .bg-purple-100 {
        background-color: var(--color-purple-100);
    }
    .bg-purple-200 {
        background-color: var(--color-purple-200);
    }
    .bg-secondary {
        background-color: var(--secondary);
    }
    .bg-sidebar {
        background-color: var(--sidebar);
    }
    .bg-sidebar-border {
        background-color: var(--sidebar-border);
    }
    .bg-transparent {
        background-color: #0000;
    }
    .bg-white {
        background-color: var(--color-white);
    }
    .bg-white\/50 {
        background-color: #ffffff80;
    }
    @supports (color: color-mix(in lab, red, red)) {
        .bg-white\/50 {
            background-color: color-mix(
                in oklab,
                var(--color-white) 50%,
                transparent
            );
        }
    }
    .bg-white\/80 {
        background-color: #fffc;
    }
    @supports (color: color-mix(in lab, red, red)) {
        .bg-white\/80 {
            background-color: color-mix(
                in oklab,
                var(--color-white) 80%,
                transparent
            );
        }
    }
    .bg-gradient-to-b {
        --tw-gradient-position: to bottom in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
    }
    .bg-gradient-to-br {
        --tw-gradient-position: to bottom right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
    }
    .bg-gradient-to-r {
        --tw-gradient-position: to right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
    }
    .from-blue-400 {
        --tw-gradient-from: var(--color-blue-400);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-blue-500 {
        --tw-gradient-from: var(--color-blue-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-gray-50 {
        --tw-gradient-from: var(--color-gray-50);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-gray-900 {
        --tw-gradient-from: var(--color-gray-900);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-green-400 {
        --tw-gradient-from: var(--color-green-400);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-green-500 {
        --tw-gradient-from: var(--color-green-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-indigo-500 {
        --tw-gradient-from: var(--color-indigo-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-pink-500 {
        --tw-gradient-from: var(--color-pink-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-purple-400 {
        --tw-gradient-from: var(--color-purple-400);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-purple-500 {
        --tw-gradient-from: var(--color-purple-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .from-transparent {
        --tw-gradient-from: 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)
        );
    }
    .via-gray-50 {
        --tw-gradient-via: var(--color-gray-50);
        --tw-gradient-via-stops:
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-via) var(--tw-gradient-via-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position);
        --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
    .via-gray-800 {
        --tw-gradient-via: var(--color-gray-800);
        --tw-gradient-via-stops:
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-via) var(--tw-gradient-via-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position);
        --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
    .via-purple-500 {
        --tw-gradient-via: var(--color-purple-500);
        --tw-gradient-via-stops:
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-via) var(--tw-gradient-via-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position);
        --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
    .via-white {
        --tw-gradient-via: var(--color-white);
        --tw-gradient-via-stops:
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-via) var(--tw-gradient-via-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position);
        --tw-gradient-stops: var(--tw-gradient-via-stops);
    }
    .to-blue-600 {
        --tw-gradient-to: var(--color-blue-600);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-gray-50 {
        --tw-gradient-to: var(--color-gray-50);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-gray-900 {
        --tw-gradient-to: var(--color-gray-900);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-green-600 {
        --tw-gradient-to: var(--color-green-600);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-pink-500 {
        --tw-gradient-to: var(--color-pink-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-purple-500 {
        --tw-gradient-to: var(--color-purple-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-purple-600 {
        --tw-gradient-to: var(--color-purple-600);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-red-500 {
        --tw-gradient-to: var(--color-red-500);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .to-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)
        );
    }
    .to-white {
        --tw-gradient-to: var(--color-white);
        --tw-gradient-stops: var(
            --tw-gradient-via-stops,
            var(--tw-gradient-position),
            var(--tw-gradient-from) var(--tw-gradient-from-position),
            var(--tw-gradient-to) var(--tw-gradient-to-position)
        );
    }
    .bg-clip-text {
        -webkit-background-clip: text;
        background-clip: text;
    }
    .bg-repeat {
        background-repeat: repeat;
    }
    .mask-no-clip {
        -webkit-mask-clip: no-clip;
        mask-clip: no-clip;
    }
    .mask-repeat {
        -webkit-mask-repeat: repeat;
        mask-repeat: repeat;
    }
    .fill-current {
        fill: currentColor;
    }
    .fill-primary {
        fill: var(--primary);
    }
    .object-contain {
        object-fit: contain;
    }
    .p-0 {
        padding: calc(var(--spacing) * 0);
    }
    .p-1 {
        padding: calc(var(--spacing) * 1);
    }
    .p-2 {
        padding: calc(var(--spacing) * 2);
    }
    .p-3 {
        padding: calc(var(--spacing) * 3);
    }
    .p-4 {
        padding: calc(var(--spacing) * 4);
    }
    .p-6 {
        padding: calc(var(--spacing) * 6);
    }
    .p-8 {
        padding: calc(var(--spacing) * 8);
    }
    .p-\[3px\] {
        padding: 3px;
    }
    .p-px {
        padding: 1px;
    }
    .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-3 {
        padding-inline: calc(var(--spacing) * 3);
    }
    .px-4 {
        padding-inline: calc(var(--spacing) * 4);
    }
    .px-6 {
        padding-inline: calc(var(--spacing) * 6);
    }
    .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-3 {
        padding-block: calc(var(--spacing) * 3);
    }
    .py-4 {
        padding-block: calc(var(--spacing) * 4);
    }
    .py-6 {
        padding-block: calc(var(--spacing) * 6);
    }
    .py-8 {
        padding-block: calc(var(--spacing) * 8);
    }
    .py-16 {
        padding-block: calc(var(--spacing) * 16);
    }
    .py-24 {
        padding-block: calc(var(--spacing) * 24);
    }
    .pt-0 {
        padding-top: calc(var(--spacing) * 0);
    }
    .pt-1 {
        padding-top: calc(var(--spacing) * 1);
    }
    .pt-3 {
        padding-top: calc(var(--spacing) * 3);
    }
    .pt-4 {
        padding-top: calc(var(--spacing) * 4);
    }
    .pt-8 {
        padding-top: calc(var(--spacing) * 8);
    }
    .pt-32 {
        padding-top: calc(var(--spacing) * 32);
    }
    .pr-2 {
        padding-right: calc(var(--spacing) * 2);
    }
    .pr-2\.5 {
        padding-right: calc(var(--spacing) * 2.5);
    }
    .pr-8 {
        padding-right: calc(var(--spacing) * 8);
    }
    .pb-3 {
        padding-bottom: calc(var(--spacing) * 3);
    }
    .pb-4 {
        padding-bottom: calc(var(--spacing) * 4);
    }
    .pb-20 {
        padding-bottom: calc(var(--spacing) * 20);
    }
    .pl-2 {
        padding-left: calc(var(--spacing) * 2);
    }
    .pl-4 {
        padding-left: calc(var(--spacing) * 4);
    }
    .pl-8 {
        padding-left: calc(var(--spacing) * 8);
    }
    .text-center {
        text-align: center;
    }
    .text-left {
        text-align: left;
    }
    .text-right {
        text-align: right;
    }
    .align-middle {
        vertical-align: middle;
    }
    .font-mono {
        font-family: var(--font-mono);
    }
    .text-2xl {
        font-size: var(--text-2xl);
        line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
    .text-4xl {
        font-size: var(--text-4xl);
        line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
    .text-7xl {
        font-size: var(--text-7xl);
        line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
    .text-base {
        font-size: var(--text-base);
        line-height: var(--tw-leading, var(--text-base--line-height));
    }
    .text-lg {
        font-size: var(--text-lg);
        line-height: var(--tw-leading, var(--text-lg--line-height));
    }
    .text-sm {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .text-xl {
        font-size: var(--text-xl);
        line-height: var(--tw-leading, var(--text-xl--line-height));
    }
    .text-xs {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
    }
    .text-\[0\.8rem\] {
        font-size: 0.8rem;
    }
    .leading-none {
        --tw-leading: 1;
        line-height: 1;
    }
    .leading-relaxed {
        --tw-leading: var(--leading-relaxed);
        line-height: var(--leading-relaxed);
    }
    .font-bold {
        --tw-font-weight: var(--font-weight-bold);
        font-weight: var(--font-weight-bold);
    }
    .font-medium {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    }
    .font-normal {
        --tw-font-weight: var(--font-weight-normal);
        font-weight: var(--font-weight-normal);
    }
    .font-semibold {
        --tw-font-weight: var(--font-weight-semibold);
        font-weight: var(--font-weight-semibold);
    }
    .tracking-tight {
        --tw-tracking: var(--tracking-tight);
        letter-spacing: var(--tracking-tight);
    }
    .tracking-widest {
        --tw-tracking: var(--tracking-widest);
        letter-spacing: var(--tracking-widest);
    }
    .text-balance {
        text-wrap: balance;
    }
    .text-wrap {
        text-wrap: wrap;
    }
    .break-words {
        overflow-wrap: break-word;
    }
    .text-clip {
        text-overflow: clip;
    }
    .text-ellipsis {
        text-overflow: ellipsis;
    }
    .whitespace-nowrap {
        white-space: nowrap;
    }
    .text-accent-foreground {
        color: var(--accent-foreground);
    }
    .text-black {
        color: var(--color-black);
    }
    .text-card-foreground {
        color: var(--card-foreground);
    }
    .text-current {
        color: currentColor;
    }
    .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-gray-800 {
        color: var(--color-gray-800);
    }
    .text-green-500 {
        color: var(--color-green-500);
    }
    .text-green-600 {
        color: var(--color-green-600);
    }
    .text-muted-foreground {
        color: var(--muted-foreground);
    }
    .text-popover-foreground {
        color: var(--popover-foreground);
    }
    .text-primary {
        color: var(--primary);
    }
    .text-primary-foreground {
        color: var(--primary-foreground);
    }
    .text-red-500 {
        color: var(--color-red-500);
    }
    .text-secondary-foreground {
        color: var(--secondary-foreground);
    }
    .text-sidebar-foreground,
    .text-sidebar-foreground\/70 {
        color: var(--sidebar-foreground);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .text-sidebar-foreground\/70 {
            color: color-mix(
                in oklab,
                var(--sidebar-foreground) 70%,
                transparent
            );
        }
    }
    .text-transparent {
        color: #0000;
    }
    .text-white {
        color: var(--color-white);
    }
    .capitalize {
        text-transform: capitalize;
    }
    .lowercase {
        text-transform: lowercase;
    }
    .normal-case {
        text-transform: none;
    }
    .uppercase {
        text-transform: uppercase;
    }
    .italic {
        font-style: italic;
    }
    .not-italic {
        font-style: normal;
    }
    .diagonal-fractions {
        --tw-numeric-fraction: diagonal-fractions;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .lining-nums {
        --tw-numeric-figure: lining-nums;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .oldstyle-nums {
        --tw-numeric-figure: oldstyle-nums;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .ordinal {
        --tw-ordinal: ordinal;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .proportional-nums {
        --tw-numeric-spacing: proportional-nums;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .slashed-zero {
        --tw-slashed-zero: slashed-zero;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .stacked-fractions {
        --tw-numeric-fraction: stacked-fractions;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .tabular-nums {
        --tw-numeric-spacing: tabular-nums;
        font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,)
            var(--tw-numeric-figure,) var(--tw-numeric-spacing,)
            var(--tw-numeric-fraction,);
    }
    .normal-nums {
        font-variant-numeric: normal;
    }
    .line-through {
        text-decoration-line: line-through;
    }
    .no-underline {
        text-decoration-line: none;
    }
    .overline {
        text-decoration-line: overline;
    }
    .underline {
        text-decoration-line: underline;
    }
    .underline-offset-4 {
        text-underline-offset: 4px;
    }
    .antialiased {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
    .subpixel-antialiased {
        -webkit-font-smoothing: auto;
        -moz-osx-font-smoothing: auto;
    }
    .opacity-10 {
        opacity: 0.1;
    }
    .opacity-20 {
        opacity: 0.2;
    }
    .opacity-30 {
        opacity: 0.3;
    }
    .opacity-50 {
        opacity: 0.5;
    }
    .opacity-70 {
        opacity: 0.7;
    }
    .shadow {
        --tw-shadow:
            0 1px 3px 0 var(--tw-shadow-color, #0000001a),
            0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\] {
        --tw-shadow: 0 0 0 1px
            var(--tw-shadow-color, hsl(var(--sidebar-border)));
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-lg {
        --tw-shadow:
            0 10px 15px -3px var(--tw-shadow-color, #0000001a),
            0 4px 6px -4px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-md {
        --tw-shadow:
            0 4px 6px -1px var(--tw-shadow-color, #0000001a),
            0 2px 4px -2px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-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-sm {
        --tw-shadow:
            0 1px 3px 0 var(--tw-shadow-color, #0000001a),
            0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-xl {
        --tw-shadow:
            0 20px 25px -5px var(--tw-shadow-color, #0000001a),
            0 8px 10px -6px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .shadow-xs {
        --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .ring {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(1px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .ring-0 {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(0px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .inset-ring {
        --tw-inset-ring-shadow: inset 0 0 0 1px
            var(--tw-inset-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .ring-ring\/50 {
        --tw-ring-color: var(--ring);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .ring-ring\/50 {
            --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
        }
    }
    .ring-sidebar-ring {
        --tw-ring-color: var(--sidebar-ring);
    }
    .ring-offset-background {
        --tw-ring-offset-color: var(--background);
    }
    .outline-hidden {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .outline-hidden {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
    }
    .blur {
        --tw-blur: blur(8px);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
            var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
            var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }
    .blur-3xl {
        --tw-blur: blur(var(--blur-3xl));
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
            var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
            var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }
    .drop-shadow {
        --tw-drop-shadow-size: drop-shadow(
                0 1px 2px var(--tw-drop-shadow-color, #0000001a)
            )
            drop-shadow(0 1px 1px var(--tw-drop-shadow-color, #0000000f));
        --tw-drop-shadow: drop-shadow(0 1px 2px #0000001a)
            drop-shadow(0 1px 1px #0000000f);
        filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,)
            var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,)
            var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
    }
    .backdrop-blur {
        --tw-backdrop-blur: blur(8px);
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .backdrop-blur-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,);
    }
    .backdrop-blur-sm {
        --tw-backdrop-blur: blur(var(--blur-sm));
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .backdrop-grayscale {
        --tw-backdrop-grayscale: grayscale(100%);
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .backdrop-invert {
        --tw-backdrop-invert: invert(100%);
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .backdrop-sepia {
        --tw-backdrop-sepia: sepia(100%);
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .backdrop-filter {
        -webkit-backdrop-filter: var(--tw-backdrop-blur,)
            var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,)
            var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,)
            var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,)
            var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
        backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,)
            var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,)
            var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,)
            var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,)
            var(--tw-backdrop-sepia,);
    }
    .transition {
        transition-property:
            color,
            background-color,
            border-color,
            outline-color,
            text-decoration-color,
            fill,
            stroke,
            --tw-gradient-from,
            --tw-gradient-via,
            --tw-gradient-to,
            opacity,
            box-shadow,
            transform,
            translate,
            scale,
            rotate,
            filter,
            -webkit-backdrop-filter,
            backdrop-filter,
            display,
            visibility,
            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-\[color\,box-shadow\] {
        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)
        );
    }
    .transition-\[left\,right\,width\] {
        transition-property: left, right, width;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-\[margin\,opacity\] {
        transition-property: margin, opacity;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-\[width\,height\,padding\] {
        transition-property: width, height, padding;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-\[width\] {
        transition-property: width;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-all {
        transition-property: all;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-colors {
        transition-property:
            color, background-color, border-color, outline-color,
            text-decoration-color, fill, stroke, --tw-gradient-from,
            --tw-gradient-via, --tw-gradient-to;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-opacity {
        transition-property: opacity;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-shadow {
        transition-property: box-shadow;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-transform {
        transition-property: transform, translate, scale, rotate;
        transition-timing-function: var(
            --tw-ease,
            var(--default-transition-timing-function)
        );
        transition-duration: var(
            --tw-duration,
            var(--default-transition-duration)
        );
    }
    .transition-none {
        transition-property: none;
    }
    .delay-200 {
        transition-delay: 0.2s;
    }
    .delay-400 {
        transition-delay: 0.4s;
    }
    .delay-600 {
        transition-delay: 0.6s;
    }
    .duration-150 {
        --tw-duration: 0.15s;
        transition-duration: 0.15s;
    }
    .duration-200 {
        --tw-duration: 0.2s;
        transition-duration: 0.2s;
    }
    .duration-300 {
        --tw-duration: 0.3s;
        transition-duration: 0.3s;
    }
    .duration-1000 {
        --tw-duration: 1s;
        transition-duration: 1s;
    }
    .ease-in-out {
        --tw-ease: var(--ease-in-out);
        transition-timing-function: var(--ease-in-out);
    }
    .ease-linear {
        --tw-ease: linear;
        transition-timing-function: linear;
    }
    .ease-out {
        --tw-ease: var(--ease-out);
        transition-timing-function: var(--ease-out);
    }
    .delay-200 {
        animation-delay: 0.2s;
    }
    .fade-in-0 {
        --tw-enter-opacity: 0;
    }
    .outline-none {
        --tw-outline-style: none;
        outline-style: none;
    }
    .select-none {
        -webkit-user-select: none;
        user-select: none;
    }
    .delay-400 {
        animation-delay: 0.4s;
    }
    .delay-600 {
        animation-delay: 0.6s;
    }
    :where(.divide-x-reverse > :not(:last-child)) {
        --tw-divide-x-reverse: 1;
    }
    .fade-in {
        --tw-enter-opacity: 0;
    }
    .ring-inset {
        --tw-ring-inset: inset;
    }
    .zoom-in {
        --tw-enter-scale: 0;
    }
    .zoom-in-95 {
        --tw-enter-scale: 0.95;
    }
    .zoom-out {
        --tw-exit-scale: 0;
    }
    .group-focus-within\/menu-item\:opacity-100:is(
        :where(.group\/menu-item):focus-within *
    ) {
        opacity: 1;
    }
    @media (hover: hover) {
        .group-hover\:scale-110:is(:where(.group):hover *) {
            --tw-scale-x: 110%;
            --tw-scale-y: 110%;
            --tw-scale-z: 110%;
            scale: var(--tw-scale-x) var(--tw-scale-y);
        }
        .group-hover\:text-blue-600:is(:where(.group):hover *) {
            color: var(--color-blue-600);
        }
        .group-hover\:text-gray-900:is(:where(.group):hover *) {
            color: var(--color-gray-900);
        }
        .group-hover\:text-green-600:is(:where(.group):hover *) {
            color: var(--color-green-600);
        }
        .group-hover\:text-purple-600:is(:where(.group):hover *) {
            color: var(--color-purple-600);
        }
        .group-hover\/menu-item\:opacity-100:is(
            :where(.group\/menu-item):hover *
        ) {
            opacity: 1;
        }
    }
    .group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(
        :where(.group\/menu-item):has([data-sidebar="menu-action"]) *
    ) {
        padding-right: calc(var(--spacing) * 8);
    }
    .group-data-\[collapsible\=icon\]\:-mt-8:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        margin-top: calc(var(--spacing) * -8);
    }
    .group-data-\[collapsible\=icon\]\:hidden:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        display: none;
    }
    .group-data-\[collapsible\=icon\]\:size-8\!:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        width: calc(var(--spacing) * 8) !important;
        height: calc(var(--spacing) * 8) !important;
    }
    .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        width: var(--sidebar-width-icon);
    }
    .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        width: calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)));
    }
    .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        width: calc(
            var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px
        );
    }
    .group-data-\[collapsible\=icon\]\:overflow-hidden:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        overflow: hidden;
    }
    .group-data-\[collapsible\=icon\]\:p-0\!:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        padding: calc(var(--spacing) * 0) !important;
    }
    .group-data-\[collapsible\=icon\]\:p-2\!:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        padding: calc(var(--spacing) * 2) !important;
    }
    .group-data-\[collapsible\=icon\]\:opacity-0:is(
        :where(.group)[data-collapsible="icon"] *
    ) {
        opacity: 0;
    }
    .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(
        :where(.group)[data-collapsible="offcanvas"] *
    ) {
        right: calc(var(--sidebar-width) * -1);
    }
    .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]:is(
        :where(.group)[data-collapsible="offcanvas"] *
    ) {
        left: calc(var(--sidebar-width) * -1);
    }
    .group-data-\[collapsible\=offcanvas\]\:w-0:is(
        :where(.group)[data-collapsible="offcanvas"] *
    ) {
        width: calc(var(--spacing) * 0);
    }
    .group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(
        :where(.group)[data-collapsible="offcanvas"] *
    ) {
        --tw-translate-x: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-data-\[disabled\=true\]\:pointer-events-none:is(
        :where(.group)[data-disabled="true"] *
    ) {
        pointer-events: none;
    }
    .group-data-\[disabled\=true\]\:opacity-50:is(
        :where(.group)[data-disabled="true"] *
    ) {
        opacity: 0.5;
    }
    .group-data-\[side\=left\]\:-right-4:is(
        :where(.group)[data-side="left"] *
    ) {
        right: calc(var(--spacing) * -4);
    }
    .group-data-\[side\=left\]\:border-r:is(
        :where(.group)[data-side="left"] *
    ) {
        border-right-style: var(--tw-border-style);
        border-right-width: 1px;
    }
    .group-data-\[side\=right\]\:left-0:is(
        :where(.group)[data-side="right"] *
    ) {
        left: calc(var(--spacing) * 0);
    }
    .group-data-\[side\=right\]\:rotate-180:is(
        :where(.group)[data-side="right"] *
    ) {
        rotate: 180deg;
    }
    .group-data-\[side\=right\]\:border-l:is(
        :where(.group)[data-side="right"] *
    ) {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .group-data-\[state\=open\]\:rotate-180:is(
        :where(.group)[data-state="open"] *
    ) {
        rotate: 180deg;
    }
    .group-data-\[variant\=floating\]\:rounded-lg:is(
        :where(.group)[data-variant="floating"] *
    ) {
        border-radius: var(--radius);
    }
    .group-data-\[variant\=floating\]\:border:is(
        :where(.group)[data-variant="floating"] *
    ) {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }
    .group-data-\[variant\=floating\]\:border-sidebar-border:is(
        :where(.group)[data-variant="floating"] *
    ) {
        border-color: var(--sidebar-border);
    }
    .group-data-\[variant\=floating\]\:shadow-sm:is(
        :where(.group)[data-variant="floating"] *
    ) {
        --tw-shadow:
            0 1px 3px 0 var(--tw-shadow-color, #0000001a),
            0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .group-data-\[vaul-drawer-direction\=bottom\]\/drawer-content\:block:is(
        :where(.group\/drawer-content)[data-vaul-drawer-direction="bottom"] *
    ) {
        display: block;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:top-full:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        top: 100%;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:mt-1\.5:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        ) {
        margin-top: calc(var(--spacing) * 1.5);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:overflow-hidden:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        overflow: hidden;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:rounded-md:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        border-radius: calc(var(--radius) - 2px);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:border:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:bg-popover:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        background-color: var(--popover);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:text-popover-foreground:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        color: var(--popover-foreground);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:shadow:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        --tw-shadow:
            0 1px 3px 0 var(--tw-shadow-color, #0000001a),
            0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:duration-200:is(
        :where(.group\/navigation-menu)[data-viewport="false"] *
    ) {
        --tw-duration: 0.2s;
        transition-duration: 0.2s;
    }
    @media (hover: hover) {
        .peer-hover\/menu-button\:text-sidebar-accent-foreground:is(
            :where(.peer\/menu-button):hover ~ *
        ) {
            color: var(--sidebar-accent-foreground);
        }
    }
    .peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled ~ *) {
        cursor: not-allowed;
    }
    .peer-disabled\:opacity-50:is(:where(.peer):disabled ~ *) {
        opacity: 0.5;
    }
    .peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground:is(
        :where(.peer\/menu-button)[data-active="true"] ~ *
    ) {
        color: var(--sidebar-accent-foreground);
    }
    .peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(
            :where(.peer\/menu-button)[data-size="default"] ~ *
        ) {
        top: calc(var(--spacing) * 1.5);
    }
    .peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(
            :where(.peer\/menu-button)[data-size="lg"] ~ *
        ) {
        top: calc(var(--spacing) * 2.5);
    }
    .peer-data-\[size\=sm\]\/menu-button\:top-1:is(
        :where(.peer\/menu-button)[data-size="sm"] ~ *
    ) {
        top: calc(var(--spacing) * 1);
    }
    .selection\:bg-primary ::selection {
        background-color: var(--primary);
    }
    .selection\:bg-primary::selection {
        background-color: var(--primary);
    }
    .selection\:text-primary-foreground ::selection {
        color: var(--primary-foreground);
    }
    .selection\:text-primary-foreground::selection {
        color: var(--primary-foreground);
    }
    .file\:inline-flex::file-selector-button {
        display: inline-flex;
    }
    .file\:h-7::file-selector-button {
        height: calc(var(--spacing) * 7);
    }
    .file\:border-0::file-selector-button {
        border-style: var(--tw-border-style);
        border-width: 0;
    }
    .file\:bg-transparent::file-selector-button {
        background-color: #0000;
    }
    .file\:text-sm::file-selector-button {
        font-size: var(--text-sm);
        line-height: var(--tw-leading, var(--text-sm--line-height));
    }
    .file\:font-medium::file-selector-button {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    }
    .file\:text-foreground::file-selector-button {
        color: var(--foreground);
    }
    .placeholder\:text-muted-foreground::placeholder {
        color: var(--muted-foreground);
    }
    .after\:absolute:after {
        content: var(--tw-content);
        position: absolute;
    }
    .after\:-inset-2:after {
        content: var(--tw-content);
        inset: calc(var(--spacing) * -2);
    }
    .after\:inset-y-0:after {
        content: var(--tw-content);
        inset-block: calc(var(--spacing) * 0);
    }
    .after\:left-1\/2:after {
        content: var(--tw-content);
        left: 50%;
    }
    .after\:w-1:after {
        content: var(--tw-content);
        width: calc(var(--spacing) * 1);
    }
    .after\:w-\[2px\]:after {
        content: var(--tw-content);
        width: 2px;
    }
    .after\:-translate-x-1\/2:after {
        content: var(--tw-content);
        --tw-translate-x: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(
            :where(.group)[data-collapsible="offcanvas"] *
        ):after {
        content: var(--tw-content);
        left: 100%;
    }
    .first\:rounded-l-md:first-child {
        border-top-left-radius: calc(var(--radius) - 2px);
        border-bottom-left-radius: calc(var(--radius) - 2px);
    }
    .first\:border-l:first-child {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .last\:rounded-r-md:last-child {
        border-top-right-radius: calc(var(--radius) - 2px);
        border-bottom-right-radius: calc(var(--radius) - 2px);
    }
    .last\:border-b-0:last-child {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 0;
    }
    .focus-within\:relative:focus-within {
        position: relative;
    }
    .focus-within\:z-20:focus-within {
        z-index: 20;
    }
    @media (hover: hover) {
        .hover\:bg-accent:hover {
            background-color: var(--accent);
        }
        .hover\:bg-destructive\/90:hover {
            background-color: var(--destructive);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .hover\:bg-destructive\/90:hover {
                background-color: color-mix(
                    in oklab,
                    var(--destructive) 90%,
                    transparent
                );
            }
        }
        .hover\:bg-gray-50:hover {
            background-color: var(--color-gray-50);
        }
        .hover\:bg-gray-800:hover {
            background-color: var(--color-gray-800);
        }
        .hover\:bg-muted:hover,
        .hover\:bg-muted\/50:hover {
            background-color: var(--muted);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .hover\:bg-muted\/50:hover {
                background-color: color-mix(
                    in oklab,
                    var(--muted) 50%,
                    transparent
                );
            }
        }
        .hover\:bg-primary:hover,
        .hover\:bg-primary\/90:hover {
            background-color: var(--primary);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .hover\:bg-primary\/90:hover {
                background-color: color-mix(
                    in oklab,
                    var(--primary) 90%,
                    transparent
                );
            }
        }
        .hover\:bg-secondary\/80:hover {
            background-color: var(--secondary);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .hover\:bg-secondary\/80:hover {
                background-color: color-mix(
                    in oklab,
                    var(--secondary) 80%,
                    transparent
                );
            }
        }
        .hover\:bg-sidebar-accent:hover {
            background-color: var(--sidebar-accent);
        }
        .hover\:text-accent-foreground:hover {
            color: var(--accent-foreground);
        }
        .hover\:text-foreground:hover {
            color: var(--foreground);
        }
        .hover\:text-gray-600:hover {
            color: var(--color-gray-600);
        }
        .hover\:text-gray-900:hover {
            color: var(--color-gray-900);
        }
        .hover\:text-muted-foreground:hover {
            color: var(--muted-foreground);
        }
        .hover\:text-primary-foreground:hover {
            color: var(--primary-foreground);
        }
        .hover\:text-sidebar-accent-foreground:hover {
            color: var(--sidebar-accent-foreground);
        }
        .hover\:underline:hover {
            text-decoration-line: underline;
        }
        .hover\:opacity-70:hover {
            opacity: 0.7;
        }
        .hover\:opacity-100:hover {
            opacity: 1;
        }
        .hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover {
            --tw-shadow: 0 0 0 1px
                var(--tw-shadow-color, hsl(var(--sidebar-accent)));
            box-shadow:
                var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
                var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
                var(--tw-shadow);
        }
        .hover\:shadow-xl:hover {
            --tw-shadow:
                0 20px 25px -5px var(--tw-shadow-color, #0000001a),
                0 8px 10px -6px var(--tw-shadow-color, #0000001a);
            box-shadow:
                var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
                var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
                var(--tw-shadow);
        }
        .hover\:ring-4:hover {
            --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
                calc(4px + 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);
        }
        .hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(
                :where(.group)[data-collapsible="offcanvas"] *
            ) {
            background-color: var(--sidebar);
        }
        .hover\:after\:bg-sidebar-border:hover:after {
            content: var(--tw-content);
            background-color: var(--sidebar-border);
        }
    }
    .focus\:z-10:focus {
        z-index: 10;
    }
    .focus\:bg-accent:focus {
        background-color: var(--accent);
    }
    .focus\:bg-primary:focus {
        background-color: var(--primary);
    }
    .focus\:text-accent-foreground:focus {
        color: var(--accent-foreground);
    }
    .focus\:text-primary-foreground:focus {
        color: var(--primary-foreground);
    }
    .focus\:ring-2:focus {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(2px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .focus\:ring-ring:focus {
        --tw-ring-color: var(--ring);
    }
    .focus\:ring-offset-2:focus {
        --tw-ring-offset-width: 2px;
        --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
            var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    .focus\:outline-hidden:focus {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .focus\:outline-hidden:focus {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .focus-visible\:z-10:focus-visible {
        z-index: 10;
    }
    .focus-visible\:border-ring:focus-visible {
        border-color: var(--ring);
    }
    .focus-visible\:ring-1:focus-visible {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(1px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .focus-visible\:ring-2:focus-visible {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(2px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .focus-visible\:ring-4:focus-visible {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(4px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .focus-visible\:ring-\[3px\]:focus-visible {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(3px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .focus-visible\:ring-destructive\/20:focus-visible {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .focus-visible\:ring-destructive\/20:focus-visible {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 20%,
                transparent
            );
        }
    }
    .focus-visible\:ring-ring:focus-visible,
    .focus-visible\:ring-ring\/50:focus-visible {
        --tw-ring-color: var(--ring);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .focus-visible\:ring-ring\/50:focus-visible {
            --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
        }
    }
    .focus-visible\:ring-offset-1: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);
    }
    .focus-visible\:outline-hidden:focus-visible {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .focus-visible\:outline-hidden:focus-visible {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .focus-visible\:outline-1:focus-visible {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
    }
    .focus-visible\:outline-ring:focus-visible {
        outline-color: var(--ring);
    }
    .active\:bg-sidebar-accent:active {
        background-color: var(--sidebar-accent);
    }
    .active\:text-sidebar-accent-foreground:active {
        color: var(--sidebar-accent-foreground);
    }
    .disabled\:pointer-events-none:disabled {
        pointer-events: none;
    }
    .disabled\:cursor-not-allowed:disabled {
        cursor: not-allowed;
    }
    .disabled\:opacity-50:disabled {
        opacity: 0.5;
    }
    :where([data-side="left"]) .in-data-\[side\=left\]\:cursor-w-resize {
        cursor: w-resize;
    }
    :where([data-side="right"]) .in-data-\[side\=right\]\:cursor-e-resize {
        cursor: e-resize;
    }
    .has-disabled\:opacity-50:has(:disabled) {
        opacity: 0.5;
    }
    .has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has(
        [data-slot="card-action"]
    ) {
        grid-template-columns: 1fr auto;
    }
    .has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant="inset"]) {
        background-color: var(--sidebar);
    }
    .has-\[\>svg\]\:grid-cols-\[calc\(var\(--spacing\)\*4\)_1fr\]:has(> svg) {
        grid-template-columns: calc(var(--spacing) * 4) 1fr;
    }
    .has-\[\>svg\]\:gap-x-3:has(> svg) {
        column-gap: calc(var(--spacing) * 3);
    }
    .has-\[\>svg\]\:px-2\.5:has(> svg) {
        padding-inline: calc(var(--spacing) * 2.5);
    }
    .has-\[\>svg\]\:px-3:has(> svg) {
        padding-inline: calc(var(--spacing) * 3);
    }
    .has-\[\>svg\]\:px-4:has(> svg) {
        padding-inline: calc(var(--spacing) * 4);
    }
    .aria-disabled\:pointer-events-none[aria-disabled="true"] {
        pointer-events: none;
    }
    .aria-disabled\:opacity-50[aria-disabled="true"] {
        opacity: 0.5;
    }
    .aria-invalid\:border-destructive[aria-invalid="true"] {
        border-color: var(--destructive);
    }
    .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .aria-invalid\:ring-destructive\/20[aria-invalid="true"] {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 20%,
                transparent
            );
        }
    }
    .aria-selected\:bg-accent[aria-selected="true"] {
        background-color: var(--accent);
    }
    .aria-selected\:bg-primary[aria-selected="true"] {
        background-color: var(--primary);
    }
    .aria-selected\:text-accent-foreground[aria-selected="true"] {
        color: var(--accent-foreground);
    }
    .aria-selected\:text-muted-foreground[aria-selected="true"] {
        color: var(--muted-foreground);
    }
    .aria-selected\:text-primary-foreground[aria-selected="true"] {
        color: var(--primary-foreground);
    }
    .aria-selected\:opacity-100[aria-selected="true"] {
        opacity: 1;
    }
    .data-\[active\=true\]\:z-10[data-active="true"] {
        z-index: 10;
    }
    .data-\[active\=true\]\:border-ring[data-active="true"] {
        border-color: var(--ring);
    }
    .data-\[active\=true\]\:bg-accent\/50[data-active="true"] {
        background-color: var(--accent);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .data-\[active\=true\]\:bg-accent\/50[data-active="true"] {
            background-color: color-mix(
                in oklab,
                var(--accent) 50%,
                transparent
            );
        }
    }
    .data-\[active\=true\]\:bg-sidebar-accent[data-active="true"] {
        background-color: var(--sidebar-accent);
    }
    .data-\[active\=true\]\:font-medium[data-active="true"] {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    }
    .data-\[active\=true\]\:text-accent-foreground[data-active="true"] {
        color: var(--accent-foreground);
    }
    .data-\[active\=true\]\:text-sidebar-accent-foreground[data-active="true"] {
        color: var(--sidebar-accent-foreground);
    }
    .data-\[active\=true\]\:ring-\[3px\][data-active="true"] {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
            calc(3px + var(--tw-ring-offset-width))
            var(--tw-ring-color, currentcolor);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .data-\[active\=true\]\:ring-ring\/50[data-active="true"] {
        --tw-ring-color: var(--ring);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .data-\[active\=true\]\:ring-ring\/50[data-active="true"] {
            --tw-ring-color: color-mix(in oklab, var(--ring) 50%, transparent);
        }
    }
    @media (hover: hover) {
        .data-\[active\=true\]\:hover\:bg-accent[data-active="true"]:hover {
            background-color: var(--accent);
        }
    }
    .data-\[active\=true\]\:focus\:bg-accent[data-active="true"]:focus {
        background-color: var(--accent);
    }
    .data-\[active\=true\]\:aria-invalid\:border-destructive[data-active="true"][aria-invalid="true"] {
        border-color: var(--destructive);
    }
    .data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active="true"][aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .data-\[active\=true\]\:aria-invalid\:ring-destructive\/20[data-active="true"][aria-invalid="true"] {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 20%,
                transparent
            );
        }
    }
    .data-\[disabled\]\:pointer-events-none[data-disabled] {
        pointer-events: none;
    }
    .data-\[disabled\]\:opacity-50[data-disabled] {
        opacity: 0.5;
    }
    .data-\[disabled\=true\]\:pointer-events-none[data-disabled="true"] {
        pointer-events: none;
    }
    .data-\[disabled\=true\]\:opacity-50[data-disabled="true"] {
        opacity: 0.5;
    }
    .data-\[error\=true\]\:text-destructive[data-error="true"] {
        color: var(--destructive);
    }
    .data-\[inset\]\:pl-8[data-inset] {
        padding-left: calc(var(--spacing) * 8);
    }
    .data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion="from-end"] {
        --tw-enter-translate-x: calc(52 * var(--spacing));
    }
    .data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion="from-start"] {
        --tw-enter-translate-x: calc(52 * var(--spacing) * -1);
    }
    .data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion="to-end"] {
        --tw-exit-translate-x: calc(52 * var(--spacing));
    }
    .data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion="to-start"] {
        --tw-exit-translate-x: calc(52 * var(--spacing) * -1);
    }
    .data-\[motion\^\=from-\]\:animate-in[data-motion^="from-"] {
        animation: enter var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[motion\^\=from-\]\:fade-in[data-motion^="from-"] {
        --tw-enter-opacity: 0;
    }
    .data-\[motion\^\=to-\]\:animate-out[data-motion^="to-"] {
        animation: exit var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[motion\^\=to-\]\:fade-out[data-motion^="to-"] {
        --tw-exit-opacity: 0;
    }
    .data-\[orientation\=horizontal\]\:h-1\.5[data-orientation="horizontal"] {
        height: calc(var(--spacing) * 1.5);
    }
    .data-\[orientation\=horizontal\]\:h-full[data-orientation="horizontal"] {
        height: 100%;
    }
    .data-\[orientation\=horizontal\]\:h-px[data-orientation="horizontal"] {
        height: 1px;
    }
    .data-\[orientation\=horizontal\]\:w-full[data-orientation="horizontal"] {
        width: 100%;
    }
    .data-\[orientation\=vertical\]\:h-full[data-orientation="vertical"] {
        height: 100%;
    }
    .data-\[orientation\=vertical\]\:min-h-44[data-orientation="vertical"] {
        min-height: calc(var(--spacing) * 44);
    }
    .data-\[orientation\=vertical\]\:w-1\.5[data-orientation="vertical"] {
        width: calc(var(--spacing) * 1.5);
    }
    .data-\[orientation\=vertical\]\:w-auto[data-orientation="vertical"] {
        width: auto;
    }
    .data-\[orientation\=vertical\]\:w-full[data-orientation="vertical"] {
        width: 100%;
    }
    .data-\[orientation\=vertical\]\:w-px[data-orientation="vertical"] {
        width: 1px;
    }
    .data-\[orientation\=vertical\]\:flex-col[data-orientation="vertical"] {
        flex-direction: column;
    }
    .data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction="vertical"] {
        height: 1px;
    }
    .data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction="vertical"] {
        width: 100%;
    }
    .data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction="vertical"] {
        flex-direction: column;
    }
    .data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction="vertical"]:after {
        content: var(--tw-content);
        left: calc(var(--spacing) * 0);
    }
    .data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction="vertical"]:after {
        content: var(--tw-content);
        height: calc(var(--spacing) * 1);
    }
    .data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction="vertical"]:after {
        content: var(--tw-content);
        width: 100%;
    }
    .data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction="vertical"]:after {
        content: var(--tw-content);
        --tw-translate-x: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction="vertical"]:after {
        content: var(--tw-content);
        --tw-translate-y: -50%;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[placeholder\]\:text-muted-foreground[data-placeholder] {
        color: var(--muted-foreground);
    }
    .data-\[selected\=true\]\:bg-accent[data-selected="true"] {
        background-color: var(--accent);
    }
    .data-\[selected\=true\]\:text-accent-foreground[data-selected="true"] {
        color: var(--accent-foreground);
    }
    .data-\[side\=bottom\]\:translate-y-1[data-side="bottom"] {
        --tw-translate-y: calc(var(--spacing) * 1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[side\=bottom\]\:slide-in-from-top-2[data-side="bottom"] {
        --tw-enter-translate-y: calc(2 * var(--spacing) * -1);
    }
    .data-\[side\=left\]\:-translate-x-1[data-side="left"] {
        --tw-translate-x: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[side\=left\]\:slide-in-from-right-2[data-side="left"] {
        --tw-enter-translate-x: calc(2 * var(--spacing));
    }
    .data-\[side\=right\]\:translate-x-1[data-side="right"] {
        --tw-translate-x: calc(var(--spacing) * 1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[side\=right\]\:slide-in-from-left-2[data-side="right"] {
        --tw-enter-translate-x: calc(2 * var(--spacing) * -1);
    }
    .data-\[side\=top\]\:-translate-y-1[data-side="top"] {
        --tw-translate-y: calc(var(--spacing) * -1);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[side\=top\]\:slide-in-from-bottom-2[data-side="top"] {
        --tw-enter-translate-y: calc(2 * var(--spacing));
    }
    .data-\[size\=default\]\:h-9[data-size="default"] {
        height: calc(var(--spacing) * 9);
    }
    .data-\[size\=sm\]\:h-8[data-size="sm"] {
        height: calc(var(--spacing) * 8);
    }
    :is(
        .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
    )[data-slot="alert-description"] {
        color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        :is(
            .\*\:data-\[slot\=alert-description\]\:text-destructive\/90 > *
        )[data-slot="alert-description"] {
            color: color-mix(in oklab, var(--destructive) 90%, transparent);
        }
    }
    :is(
        .\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *
    )[data-slot="command-input-wrapper"] {
        height: calc(var(--spacing) * 12);
    }
    :is(
            .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:ring-0 *
        )[data-slot="navigation-menu-link"]:focus {
        --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(
            .\*\*\:data-\[slot\=navigation-menu-link\]\:focus\:outline-none *
        )[data-slot="navigation-menu-link"]:focus {
        --tw-outline-style: none;
        outline-style: none;
    }
    :is(
        .\*\:data-\[slot\=select-value\]\:line-clamp-1 > *
    )[data-slot="select-value"] {
        -webkit-line-clamp: 1;
        -webkit-box-orient: vertical;
        display: -webkit-box;
        overflow: hidden;
    }
    :is(.\*\:data-\[slot\=select-value\]\:flex > *)[data-slot="select-value"] {
        display: flex;
    }
    :is(
        .\*\:data-\[slot\=select-value\]\:items-center > *
    )[data-slot="select-value"] {
        align-items: center;
    }
    :is(.\*\:data-\[slot\=select-value\]\:gap-2 > *)[data-slot="select-value"] {
        gap: calc(var(--spacing) * 2);
    }
    .data-\[state\=active\]\:bg-background[data-state="active"] {
        background-color: var(--background);
    }
    .data-\[state\=active\]\:shadow-sm[data-state="active"] {
        --tw-shadow:
            0 1px 3px 0 var(--tw-shadow-color, #0000001a),
            0 1px 2px -1px var(--tw-shadow-color, #0000001a);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .data-\[state\=checked\]\:translate-x-\[calc\(100\%-2px\)\][data-state="checked"] {
        --tw-translate-x: calc(100% - 2px);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[state\=checked\]\:border-primary[data-state="checked"] {
        border-color: var(--primary);
    }
    .data-\[state\=checked\]\:bg-primary[data-state="checked"] {
        background-color: var(--primary);
    }
    .data-\[state\=checked\]\:text-primary-foreground[data-state="checked"] {
        color: var(--primary-foreground);
    }
    .data-\[state\=closed\]\:animate-accordion-up[data-state="closed"] {
        animation: accordion-up var(--tw-duration, 0.2s) ease-out;
    }
    .data-\[state\=closed\]\:animate-out[data-state="closed"] {
        animation: exit var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[state\=closed\]\:duration-300[data-state="closed"] {
        --tw-duration: 0.3s;
        transition-duration: 0.3s;
    }
    .data-\[state\=closed\]\:fade-out-0[data-state="closed"] {
        --tw-exit-opacity: 0;
    }
    .data-\[state\=closed\]\:slide-out-to-bottom[data-state="closed"] {
        --tw-exit-translate-y: 100%;
    }
    .data-\[state\=closed\]\:slide-out-to-left[data-state="closed"] {
        --tw-exit-translate-x: -100%;
    }
    .data-\[state\=closed\]\:slide-out-to-right[data-state="closed"] {
        --tw-exit-translate-x: 100%;
    }
    .data-\[state\=closed\]\:slide-out-to-top[data-state="closed"] {
        --tw-exit-translate-y: -100%;
    }
    .data-\[state\=closed\]\:zoom-out-95[data-state="closed"] {
        --tw-exit-scale: 0.95;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:animate-out:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="closed"] {
        animation: exit var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:fade-out-0:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="closed"] {
        --tw-exit-opacity: 0;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=closed\]\:zoom-out-95:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="closed"] {
        --tw-exit-scale: 0.95;
    }
    .data-\[state\=hidden\]\:animate-out[data-state="hidden"] {
        animation: exit var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[state\=hidden\]\:fade-out[data-state="hidden"] {
        --tw-exit-opacity: 0;
    }
    .data-\[state\=on\]\:bg-accent[data-state="on"] {
        background-color: var(--accent);
    }
    .data-\[state\=on\]\:text-accent-foreground[data-state="on"] {
        color: var(--accent-foreground);
    }
    .data-\[state\=open\]\:animate-accordion-down[data-state="open"] {
        animation: accordion-down var(--tw-duration, 0.2s) ease-out;
    }
    .data-\[state\=open\]\:animate-in[data-state="open"] {
        animation: enter var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[state\=open\]\:bg-accent[data-state="open"],
    .data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
        background-color: var(--accent);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .data-\[state\=open\]\:bg-accent\/50[data-state="open"] {
            background-color: color-mix(
                in oklab,
                var(--accent) 50%,
                transparent
            );
        }
    }
    .data-\[state\=open\]\:bg-secondary[data-state="open"] {
        background-color: var(--secondary);
    }
    .data-\[state\=open\]\:text-accent-foreground[data-state="open"] {
        color: var(--accent-foreground);
    }
    .data-\[state\=open\]\:text-muted-foreground[data-state="open"] {
        color: var(--muted-foreground);
    }
    .data-\[state\=open\]\:opacity-100[data-state="open"] {
        opacity: 1;
    }
    .data-\[state\=open\]\:duration-500[data-state="open"] {
        --tw-duration: 0.5s;
        transition-duration: 0.5s;
    }
    .data-\[state\=open\]\:fade-in-0[data-state="open"] {
        --tw-enter-opacity: 0;
    }
    .data-\[state\=open\]\:slide-in-from-bottom[data-state="open"] {
        --tw-enter-translate-y: 100%;
    }
    .data-\[state\=open\]\:slide-in-from-left[data-state="open"] {
        --tw-enter-translate-x: -100%;
    }
    .data-\[state\=open\]\:slide-in-from-right[data-state="open"] {
        --tw-enter-translate-x: 100%;
    }
    .data-\[state\=open\]\:slide-in-from-top[data-state="open"] {
        --tw-enter-translate-y: -100%;
    }
    .data-\[state\=open\]\:zoom-in-90[data-state="open"] {
        --tw-enter-scale: 0.9;
    }
    .data-\[state\=open\]\:zoom-in-95[data-state="open"] {
        --tw-enter-scale: 0.95;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:animate-in:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="open"] {
        animation: enter var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:fade-in-0:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="open"] {
        --tw-enter-opacity: 0;
    }
    .group-data-\[viewport\=false\]\/navigation-menu\:data-\[state\=open\]\:zoom-in-95:is(
            :where(.group\/navigation-menu)[data-viewport="false"] *
        )[data-state="open"] {
        --tw-enter-scale: 0.95;
    }
    @media (hover: hover) {
        .data-\[state\=open\]\:hover\:bg-accent[data-state="open"]:hover {
            background-color: var(--accent);
        }
        .data-\[state\=open\]\:hover\:bg-sidebar-accent[data-state="open"]:hover {
            background-color: var(--sidebar-accent);
        }
        .data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state="open"]:hover {
            color: var(--sidebar-accent-foreground);
        }
    }
    .data-\[state\=open\]\:focus\:bg-accent[data-state="open"]:focus {
        background-color: var(--accent);
    }
    .data-\[state\=selected\]\:bg-muted[data-state="selected"] {
        background-color: var(--muted);
    }
    .data-\[state\=unchecked\]\:translate-x-0[data-state="unchecked"] {
        --tw-translate-x: calc(var(--spacing) * 0);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .data-\[state\=unchecked\]\:bg-input[data-state="unchecked"] {
        background-color: var(--input);
    }
    .data-\[state\=visible\]\:animate-in[data-state="visible"] {
        animation: enter var(--tw-duration, 0.15s) var(--tw-ease, ease);
    }
    .data-\[state\=visible\]\:fade-in[data-state="visible"] {
        --tw-enter-opacity: 0;
    }
    .data-\[variant\=destructive\]\:text-destructive[data-variant="destructive"] {
        color: var(--destructive);
    }
    .data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant="destructive"]:focus {
        background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant="destructive"]:focus {
            background-color: color-mix(
                in oklab,
                var(--destructive) 10%,
                transparent
            );
        }
    }
    .data-\[variant\=destructive\]\:focus\:text-destructive[data-variant="destructive"]:focus {
        color: var(--destructive);
    }
    .data-\[variant\=outline\]\:border-l-0[data-variant="outline"] {
        border-left-style: var(--tw-border-style);
        border-left-width: 0;
    }
    .data-\[variant\=outline\]\:shadow-xs[data-variant="outline"] {
        --tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, #0000000d);
        box-shadow:
            var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
            var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
            var(--tw-shadow);
    }
    .data-\[variant\=outline\]\:first\:border-l[data-variant="outline"]:first-child {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .data-\[vaul-drawer-direction\=bottom\]\:inset-x-0[data-vaul-drawer-direction="bottom"] {
        inset-inline: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=bottom\]\:bottom-0[data-vaul-drawer-direction="bottom"] {
        bottom: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=bottom\]\:mt-24[data-vaul-drawer-direction="bottom"] {
        margin-top: calc(var(--spacing) * 24);
    }
    .data-\[vaul-drawer-direction\=bottom\]\:max-h-\[80vh\][data-vaul-drawer-direction="bottom"] {
        max-height: 80vh;
    }
    .data-\[vaul-drawer-direction\=bottom\]\:rounded-t-lg[data-vaul-drawer-direction="bottom"] {
        border-top-left-radius: var(--radius);
        border-top-right-radius: var(--radius);
    }
    .data-\[vaul-drawer-direction\=bottom\]\:border-t[data-vaul-drawer-direction="bottom"] {
        border-top-style: var(--tw-border-style);
        border-top-width: 1px;
    }
    .data-\[vaul-drawer-direction\=left\]\:inset-y-0[data-vaul-drawer-direction="left"] {
        inset-block: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=left\]\:left-0[data-vaul-drawer-direction="left"] {
        left: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=left\]\:w-3\/4[data-vaul-drawer-direction="left"] {
        width: 75%;
    }
    .data-\[vaul-drawer-direction\=left\]\:border-r[data-vaul-drawer-direction="left"] {
        border-right-style: var(--tw-border-style);
        border-right-width: 1px;
    }
    .data-\[vaul-drawer-direction\=right\]\:inset-y-0[data-vaul-drawer-direction="right"] {
        inset-block: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=right\]\:right-0[data-vaul-drawer-direction="right"] {
        right: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=right\]\:w-3\/4[data-vaul-drawer-direction="right"] {
        width: 75%;
    }
    .data-\[vaul-drawer-direction\=right\]\:border-l[data-vaul-drawer-direction="right"] {
        border-left-style: var(--tw-border-style);
        border-left-width: 1px;
    }
    .data-\[vaul-drawer-direction\=top\]\:inset-x-0[data-vaul-drawer-direction="top"] {
        inset-inline: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=top\]\:top-0[data-vaul-drawer-direction="top"] {
        top: calc(var(--spacing) * 0);
    }
    .data-\[vaul-drawer-direction\=top\]\:mb-24[data-vaul-drawer-direction="top"] {
        margin-bottom: calc(var(--spacing) * 24);
    }
    .data-\[vaul-drawer-direction\=top\]\:max-h-\[80vh\][data-vaul-drawer-direction="top"] {
        max-height: 80vh;
    }
    .data-\[vaul-drawer-direction\=top\]\:rounded-b-lg[data-vaul-drawer-direction="top"] {
        border-bottom-right-radius: var(--radius);
        border-bottom-left-radius: var(--radius);
    }
    .data-\[vaul-drawer-direction\=top\]\:border-b[data-vaul-drawer-direction="top"] {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
    }
    @media (min-width: 40rem) {
        .sm\:block {
            display: block;
        }
        .sm\:flex {
            display: flex;
        }
        .sm\:max-w-lg {
            max-width: var(--container-lg);
        }
        .sm\:max-w-sm {
            max-width: var(--container-sm);
        }
        .sm\:flex-row {
            flex-direction: row;
        }
        .sm\:justify-end {
            justify-content: flex-end;
        }
        .sm\:gap-2\.5 {
            gap: calc(var(--spacing) * 2.5);
        }
        .sm\:pr-2\.5 {
            padding-right: calc(var(--spacing) * 2.5);
        }
        .sm\:pl-2\.5 {
            padding-left: calc(var(--spacing) * 2.5);
        }
        .sm\:text-left {
            text-align: left;
        }
        .data-\[vaul-drawer-direction\=left\]\:sm\:max-w-sm[data-vaul-drawer-direction="left"],
        .data-\[vaul-drawer-direction\=right\]\:sm\:max-w-sm[data-vaul-drawer-direction="right"] {
            max-width: var(--container-sm);
        }
    }
    @media (min-width: 48rem) {
        .md\:absolute {
            position: absolute;
        }
        .md\:block {
            display: block;
        }
        .md\:flex {
            display: flex;
        }
        .md\:hidden {
            display: none;
        }
        .md\:w-\[var\(--radix-navigation-menu-viewport-width\)\] {
            width: var(--radix-navigation-menu-viewport-width);
        }
        .md\:w-auto {
            width: auto;
        }
        .md\:grid-cols-2 {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        .md\:grid-cols-3 {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
        .md\:items-end {
            align-items: flex-end;
        }
        .md\:text-2xl {
            font-size: var(--text-2xl);
            line-height: var(--tw-leading, var(--text-2xl--line-height));
        }
        .md\:text-6xl {
            font-size: var(--text-6xl);
            line-height: var(--tw-leading, var(--text-6xl--line-height));
        }
        .md\:text-sm {
            font-size: var(--text-sm);
            line-height: var(--tw-leading, var(--text-sm--line-height));
        }
        .md\:opacity-0 {
            opacity: 0;
        }
        .md\:peer-data-\[variant\=inset\]\:m-2:is(
            :where(.peer)[data-variant="inset"] ~ *
        ) {
            margin: calc(var(--spacing) * 2);
        }
        .md\:peer-data-\[variant\=inset\]\:ml-0:is(
            :where(.peer)[data-variant="inset"] ~ *
        ) {
            margin-left: calc(var(--spacing) * 0);
        }
        .md\:peer-data-\[variant\=inset\]\:rounded-xl:is(
            :where(.peer)[data-variant="inset"] ~ *
        ) {
            border-radius: calc(var(--radius) + 4px);
        }
        .md\:peer-data-\[variant\=inset\]\:shadow-sm:is(
            :where(.peer)[data-variant="inset"] ~ *
        ) {
            --tw-shadow:
                0 1px 3px 0 var(--tw-shadow-color, #0000001a),
                0 1px 2px -1px var(--tw-shadow-color, #0000001a);
            box-shadow:
                var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
                var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
                var(--tw-shadow);
        }
        .md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(
                :where(.peer)[data-variant="inset"] ~ *
            ):is(:where(.peer)[data-state="collapsed"] ~ *) {
            margin-left: calc(var(--spacing) * 2);
        }
        .md\:after\:hidden:after {
            content: var(--tw-content);
            display: none;
        }
    }
    @media (min-width: 64rem) {
        .lg\:grid-cols-6 {
            grid-template-columns: repeat(6, minmax(0, 1fr));
        }
    }
    .dark\:border-input:is(.dark *) {
        border-color: var(--input);
    }
    .dark\:bg-destructive\/60:is(.dark *) {
        background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:bg-destructive\/60:is(.dark *) {
            background-color: color-mix(
                in oklab,
                var(--destructive) 60%,
                transparent
            );
        }
    }
    .dark\:bg-input\/30:is(.dark *) {
        background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:bg-input\/30:is(.dark *) {
            background-color: color-mix(
                in oklab,
                var(--input) 30%,
                transparent
            );
        }
    }
    .dark\:text-muted-foreground:is(.dark *) {
        color: var(--muted-foreground);
    }
    @media (hover: hover) {
        .dark\:hover\:bg-accent\/50:is(.dark *):hover {
            background-color: var(--accent);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .dark\:hover\:bg-accent\/50:is(.dark *):hover {
                background-color: color-mix(
                    in oklab,
                    var(--accent) 50%,
                    transparent
                );
            }
        }
        .dark\:hover\:bg-input\/50:is(.dark *):hover {
            background-color: var(--input);
        }
        @supports (color: color-mix(in lab, red, red)) {
            .dark\:hover\:bg-input\/50:is(.dark *):hover {
                background-color: color-mix(
                    in oklab,
                    var(--input) 50%,
                    transparent
                );
            }
        }
    }
    .dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 40%,
                transparent
            );
        }
    }
    .dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:aria-invalid\:ring-destructive\/40:is(
                .dark *
            )[aria-invalid="true"] {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 40%,
                transparent
            );
        }
    }
    .dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(
            .dark *
        )[data-active="true"][aria-invalid="true"] {
        --tw-ring-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:data-\[active\=true\]\:aria-invalid\:ring-destructive\/40:is(
                .dark *
            )[data-active="true"][aria-invalid="true"] {
            --tw-ring-color: color-mix(
                in oklab,
                var(--destructive) 40%,
                transparent
            );
        }
    }
    .dark\:data-\[state\=active\]\:border-input:is(
            .dark *
        )[data-state="active"] {
        border-color: var(--input);
    }
    .dark\:data-\[state\=active\]\:bg-input\/30:is(
            .dark *
        )[data-state="active"] {
        background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:data-\[state\=active\]\:bg-input\/30:is(
                .dark *
            )[data-state="active"] {
            background-color: color-mix(
                in oklab,
                var(--input) 30%,
                transparent
            );
        }
    }
    .dark\:data-\[state\=active\]\:text-foreground:is(
            .dark *
        )[data-state="active"] {
        color: var(--foreground);
    }
    .dark\:data-\[state\=checked\]\:bg-primary:is(
            .dark *
        )[data-state="checked"] {
        background-color: var(--primary);
    }
    .dark\:data-\[state\=checked\]\:bg-primary-foreground:is(
            .dark *
        )[data-state="checked"] {
        background-color: var(--primary-foreground);
    }
    .dark\:data-\[state\=unchecked\]\:bg-foreground:is(
            .dark *
        )[data-state="unchecked"] {
        background-color: var(--foreground);
    }
    .dark\:data-\[state\=unchecked\]\:bg-input\/80:is(
            .dark *
        )[data-state="unchecked"] {
        background-color: var(--input);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:data-\[state\=unchecked\]\:bg-input\/80:is(
                .dark *
            )[data-state="unchecked"] {
            background-color: color-mix(
                in oklab,
                var(--input) 80%,
                transparent
            );
        }
    }
    .dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(
            .dark *
        )[data-variant="destructive"]:focus {
        background-color: var(--destructive);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(
                .dark *
            )[data-variant="destructive"]:focus {
            background-color: color-mix(
                in oklab,
                var(--destructive) 20%,
                transparent
            );
        }
    }
    .\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground
        .recharts-cartesian-axis-tick
        text {
        fill: var(--muted-foreground);
    }
    .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50
        .recharts-cartesian-grid
        line[stroke="#ccc"] {
        stroke: var(--border);
    }
    @supports (color: color-mix(in lab, red, red)) {
        .\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50
            .recharts-cartesian-grid
            line[stroke="#ccc"] {
            stroke: color-mix(in oklab, var(--border) 50%, transparent);
        }
    }
    .\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border
        .recharts-curve.recharts-tooltip-cursor {
        stroke: var(--border);
    }
    .\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent
        .recharts-dot[stroke="#fff"] {
        stroke: #0000;
    }
    .\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border
        .recharts-polar-grid
        [stroke="#ccc"] {
        stroke: var(--border);
    }
    .\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted
        .recharts-radial-bar-background-sector,
    .\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted
        .recharts-rectangle.recharts-tooltip-cursor {
        fill: var(--muted);
    }
    .\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border
        .recharts-reference-line
        [stroke="#ccc"] {
        stroke: var(--border);
    }
    .\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent
        .recharts-sector[stroke="#fff"] {
        stroke: #0000;
    }
    .\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface {
        --tw-outline-style: none;
        outline-style: none;
    }
    @media (forced-colors: active) {
        .\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface {
            outline-offset: 2px;
            outline: 2px solid #0000;
        }
    }
    .\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading] {
        padding-inline: calc(var(--spacing) * 2);
    }
    .\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading] {
        padding-block: calc(var(--spacing) * 1.5);
    }
    .\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading] {
        font-size: var(--text-xs);
        line-height: var(--tw-leading, var(--text-xs--line-height));
    }
    .\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading] {
        --tw-font-weight: var(--font-weight-medium);
        font-weight: var(--font-weight-medium);
    }
    .\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading] {
        color: var(--muted-foreground);
    }
    .\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group] {
        padding-inline: calc(var(--spacing) * 2);
    }
    .\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0
        [cmdk-group]:not([hidden])
        ~ [cmdk-group] {
        padding-top: calc(var(--spacing) * 0);
    }
    .\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg {
        height: calc(var(--spacing) * 5);
    }
    .\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg {
        width: calc(var(--spacing) * 5);
    }
    .\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input] {
        height: calc(var(--spacing) * 12);
    }
    .\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item] {
        padding-inline: calc(var(--spacing) * 2);
    }
    .\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item] {
        padding-block: calc(var(--spacing) * 3);
    }
    .\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg {
        height: calc(var(--spacing) * 5);
    }
    .\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg {
        width: calc(var(--spacing) * 5);
    }
    .\[\&_p\]\:leading-relaxed p {
        --tw-leading: var(--leading-relaxed);
        line-height: var(--leading-relaxed);
    }
    .\[\&_svg\]\:pointer-events-none svg {
        pointer-events: none;
    }
    .\[\&_svg\]\:shrink-0 svg {
        flex-shrink: 0;
    }
    .\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4
        svg:not([class*="size-"]) {
        width: calc(var(--spacing) * 4);
        height: calc(var(--spacing) * 4);
    }
    .\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground
        svg:not([class*="text-"]) {
        color: var(--muted-foreground);
    }
    .\[\&_tr\]\:border-b tr {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 1px;
    }
    .\[\&_tr\:last-child\]\:border-0 tr:last-child {
        border-style: var(--tw-border-style);
        border-width: 0;
    }
    .\[\&\:has\(\>\.day-range-end\)\]\:rounded-r-md:has(> .day-range-end) {
        border-top-right-radius: calc(var(--radius) - 2px);
        border-bottom-right-radius: calc(var(--radius) - 2px);
    }
    .\[\&\:has\(\>\.day-range-start\)\]\:rounded-l-md:has(> .day-range-start) {
        border-top-left-radius: calc(var(--radius) - 2px);
        border-bottom-left-radius: calc(var(--radius) - 2px);
    }
    .\[\&\:has\(\[aria-selected\]\)\]\:rounded-md:has([aria-selected]) {
        border-radius: calc(var(--radius) - 2px);
    }
    .\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]) {
        background-color: var(--accent);
    }
    .first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:first-child:has(
            [aria-selected]
        ) {
        border-top-left-radius: calc(var(--radius) - 2px);
        border-bottom-left-radius: calc(var(--radius) - 2px);
    }
    .last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:last-child:has(
            [aria-selected]
        ),
    .\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has(
            [aria-selected].day-range-end
        ) {
        border-top-right-radius: calc(var(--radius) - 2px);
        border-bottom-right-radius: calc(var(--radius) - 2px);
    }
    .\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role="checkbox"]) {
        padding-right: calc(var(--spacing) * 0);
    }
    .\[\.border-b\]\:pb-6.border-b {
        padding-bottom: calc(var(--spacing) * 6);
    }
    .\[\.border-t\]\:pt-6.border-t {
        padding-top: calc(var(--spacing) * 6);
    }
    :is(.\*\:\[span\]\:last\:flex > *):is(span):last-child {
        display: flex;
    }
    :is(.\*\:\[span\]\:last\:items-center > *):is(span):last-child {
        align-items: center;
    }
    :is(.\*\:\[span\]\:last\:gap-2 > *):is(span):last-child {
        gap: calc(var(--spacing) * 2);
    }
    :is(
        .data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant="destructive"]
            > *
    ):is(svg) {
        color: var(--destructive) !important;
    }
    .\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\] > [role="checkbox"] {
        --tw-translate-y: 2px;
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .\[\&\>button\]\:hidden > button {
        display: none;
    }
    .\[\&\>span\:last-child\]\:truncate > span:last-child {
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }
    .\[\&\>svg\]\:pointer-events-none > svg {
        pointer-events: none;
    }
    .\[\&\>svg\]\:size-3 > svg {
        width: calc(var(--spacing) * 3);
        height: calc(var(--spacing) * 3);
    }
    .\[\&\>svg\]\:size-3\.5 > svg {
        width: calc(var(--spacing) * 3.5);
        height: calc(var(--spacing) * 3.5);
    }
    .\[\&\>svg\]\:size-4 > svg {
        width: calc(var(--spacing) * 4);
        height: calc(var(--spacing) * 4);
    }
    .\[\&\>svg\]\:h-2\.5 > svg {
        height: calc(var(--spacing) * 2.5);
    }
    .\[\&\>svg\]\:h-3 > svg {
        height: calc(var(--spacing) * 3);
    }
    .\[\&\>svg\]\:w-2\.5 > svg {
        width: calc(var(--spacing) * 2.5);
    }
    .\[\&\>svg\]\:w-3 > svg {
        width: calc(var(--spacing) * 3);
    }
    .\[\&\>svg\]\:shrink-0 > svg {
        flex-shrink: 0;
    }
    .\[\&\>svg\]\:translate-y-0\.5 > svg {
        --tw-translate-y: calc(var(--spacing) * 0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
    }
    .\[\&\>svg\]\:text-current > svg {
        color: currentColor;
    }
    .\[\&\>svg\]\:text-muted-foreground > svg {
        color: var(--muted-foreground);
    }
    .\[\&\>svg\]\:text-sidebar-accent-foreground > svg {
        color: var(--sidebar-accent-foreground);
    }
    .\[\&\>tr\]\:last\:border-b-0 > tr:last-child {
        border-bottom-style: var(--tw-border-style);
        border-bottom-width: 0;
    }
    .\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction="vertical"]
        > div {
        rotate: 90deg;
    }
    .\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state="open"] > svg {
        rotate: 180deg;
    }
    [data-side="left"][data-collapsible="offcanvas"]
        .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2 {
        right: calc(var(--spacing) * -2);
    }
    [data-side="left"][data-state="collapsed"]
        .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize {
        cursor: e-resize;
    }
    [data-side="right"][data-collapsible="offcanvas"]
        .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2 {
        left: calc(var(--spacing) * -2);
    }
    [data-side="right"][data-state="collapsed"]
        .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize {
        cursor: w-resize;
    }
    @media (hover: hover) {
        a.\[a\&\]\:hover\:bg-accent:hover {
            background-color: var(--accent);
        }
        a.\[a\&\]\:hover\:bg-destructive\/90:hover {
            background-color: var(--destructive);
        }
        @supports (color: color-mix(in lab, red, red)) {
            a.\[a\&\]\:hover\:bg-destructive\/90:hover {
                background-color: color-mix(
                    in oklab,
                    var(--destructive) 90%,
                    transparent
                );
            }
        }
        a.\[a\&\]\:hover\:bg-primary\/90:hover {
            background-color: var(--primary);
        }
        @supports (color: color-mix(in lab, red, red)) {
            a.\[a\&\]\:hover\:bg-primary\/90:hover {
                background-color: color-mix(
                    in oklab,
                    var(--primary) 90%,
                    transparent
                );
            }
        }
        a.\[a\&\]\:hover\:bg-secondary\/90:hover {
            background-color: var(--secondary);
        }
        @supports (color: color-mix(in lab, red, red)) {
            a.\[a\&\]\:hover\:bg-secondary\/90:hover {
                background-color: color-mix(
                    in oklab,
                    var(--secondary) 90%,
                    transparent
                );
            }
        }
        a.\[a\&\]\:hover\:text-accent-foreground:hover {
            color: var(--accent-foreground);
        }
    }
}
:root {
    --radius: 0.625rem;
    --background: #fcfeff;
    --foreground: oklch(14.5% 0 0);
    --card: oklch(100% 0 0);
    --card-foreground: oklch(14.5% 0 0);
    --popover: oklch(100% 0 0);
    --popover-foreground: oklch(14.5% 0 0);
    --primary: oklch(20.5% 0 0);
    --primary-foreground: oklch(98.5% 0 0);
    --secondary: oklch(97% 0 0);
    --secondary-foreground: oklch(20.5% 0 0);
    --muted: oklch(97% 0 0);
    --muted-foreground: oklch(55.6% 0 0);
    --accent: oklch(97% 0 0);
    --accent-foreground: oklch(20.5% 0 0);
    --destructive: oklch(57.7% 0.245 27.325);
    --border: oklch(92.2% 0 0);
    --input: oklch(92.2% 0 0);
    --ring: oklch(70.8% 0 0);
    --chart-1: oklch(64.6% 0.222 41.116);
    --chart-2: oklch(60% 0.118 184.704);
    --chart-3: oklch(39.8% 0.07 227.392);
    --chart-4: oklch(82.8% 0.189 84.429);
    --chart-5: oklch(76.9% 0.188 70.08);
    --sidebar: oklch(98.5% 0 0);
    --sidebar-foreground: oklch(14.5% 0 0);
    --sidebar-primary: oklch(20.5% 0 0);
    --sidebar-primary-foreground: oklch(98.5% 0 0);
    --sidebar-accent: oklch(97% 0 0);
    --sidebar-accent-foreground: oklch(20.5% 0 0);
    --sidebar-border: oklch(92.2% 0 0);
    --sidebar-ring: oklch(70.8% 0 0);
}
.dark {
    --background: oklch(14.5% 0 0);
    --foreground: oklch(98.5% 0 0);
    --card: oklch(20.5% 0 0);
    --card-foreground: oklch(98.5% 0 0);
    --popover: oklch(20.5% 0 0);
    --popover-foreground: oklch(98.5% 0 0);
    --primary: oklch(92.2% 0 0);
    --primary-foreground: oklch(20.5% 0 0);
    --secondary: oklch(26.9% 0 0);
    --secondary-foreground: oklch(98.5% 0 0);
    --muted: oklch(26.9% 0 0);
    --muted-foreground: oklch(70.8% 0 0);
    --accent: oklch(26.9% 0 0);
    --accent-foreground: oklch(98.5% 0 0);
    --destructive: oklch(70.4% 0.191 22.216);
    --border: oklch(100% 0 0/0.1);
    --input: oklch(100% 0 0/0.15);
    --ring: oklch(55.6% 0 0);
    --chart-1: oklch(48.8% 0.243 264.376);
    --chart-2: oklch(69.6% 0.17 162.48);
    --chart-3: oklch(76.9% 0.188 70.08);
    --chart-4: oklch(62.7% 0.265 303.9);
    --chart-5: oklch(64.5% 0.246 16.439);
    --sidebar: oklch(20.5% 0 0);
    --sidebar-foreground: oklch(98.5% 0 0);
    --sidebar-primary: oklch(48.8% 0.243 264.376);
    --sidebar-primary-foreground: oklch(98.5% 0 0);
    --sidebar-accent: oklch(26.9% 0 0);
    --sidebar-accent-foreground: oklch(98.5% 0 0);
    --sidebar-border: oklch(100% 0 0/0.1);
    --sidebar-ring: oklch(55.6% 0 0);
}
@keyframes scroll {
    0% {
        transform: translate(0);
    }
    to {
        transform: translate(-50%);
    }
}
.animate-scroll {
    animation: 30s linear infinite scroll;
}
.animate-scroll:hover {
    animation-play-state: paused;
}
.gradient-text {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #fff, #a855f7);
    -webkit-background-clip: text;
    background-clip: text;
}
.animate-scroll {
    width: max-content;
    animation: 30s linear infinite scroll;
}
.price-change-positive {
    animation: 0.5s ease-out flash-green;
}
.price-change-negative {
    animation: 0.5s ease-out flash-red;
}
@keyframes flash-green {
    0% {
        background-color: #10b98133;
    }
    to {
        background-color: #0000;
    }
}
@keyframes flash-red {
    0% {
        background-color: #ef444433;
    }
    to {
        background-color: #0000;
    }
}
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        Segoe UI,
        Roboto,
        Helvetica,
        Arial,
        sans-serif,
        Apple Color Emoji,
        Segoe UI Emoji,
        Segoe UI Symbol;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: -0.02em;
    font-family:
        Space Grotesk,
        Inter,
        sans-serif;
    font-weight: 700;
}
h1 {
    font-weight: 800;
    line-height: 1.1;
}
h2 {
    font-weight: 700;
    line-height: 1.2;
}
.text-5xl {
    font-size: 3rem;
}
.text-7xl {
    font-size: 4.5rem;
}
.text-2xl {
    font-size: 1.5rem;
}
.text-xl {
    font-size: 1.25rem;
}
.text-lg {
    font-size: 1.125rem;
}
.text-sm {
    font-size: 0.875rem;
}
@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@keyframes scaleIn {
    0% {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
@keyframes slideInLeft {
    0% {
        opacity: 0;
        transform: translate(-30px);
    }
    to {
        opacity: 1;
        transform: translate(0);
    }
}
@keyframes slideInRight {
    0% {
        opacity: 0;
        transform: translate(30px);
    }
    to {
        opacity: 1;
        transform: translate(0);
    }
}
@keyframes float {
    0%,
    to {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}
@keyframes pulse-subtle {
    0%,
    to {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}
.animate-fade-in-up {
    animation: 0.8s ease-out forwards fadeInUp;
}
.animate-fade-in {
    animation: 0.6s ease-out forwards fadeIn;
}
.animate-scale-in {
    animation: 0.6s ease-out forwards scaleIn;
}
.animate-slide-in-left {
    animation: 0.8s ease-out forwards slideInLeft;
}
.animate-slide-in-right {
    animation: 0.8s ease-out forwards slideInRight;
}
.animate-float {
    animation: 3s ease-in-out infinite float;
}
.animate-pulse-subtle {
    animation: 2s ease-in-out infinite pulse-subtle;
}
.delay-100 {
    animation-delay: 0.1s;
}
.delay-200 {
    animation-delay: 0.2s;
}
.delay-300 {
    animation-delay: 0.3s;
}
.delay-400 {
    animation-delay: 0.4s;
}
.delay-500 {
    animation-delay: 0.5s;
}
.delay-600 {
    animation-delay: 0.6s;
}
.hover-lift {
    transition:
        transform 0.3s,
        box-shadow 0.3s;
}
.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px #0000001a;
}
.hover-glow {
    transition: box-shadow 0.3s;
}
.hover-glow:hover {
    box-shadow: 0 0 20px #00000026;
}
.hover-scale {
    transition: transform 0.3s;
}
.hover-scale:hover {
    transform: scale(1.05);
}
button,
.button {
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
}
button:before,
.button:before {
    content: "";
    background: #fff3;
    border-radius: 50%;
    width: 0;
    height: 0;
    transition:
        width 0.6s,
        height 0.6s;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
button:hover:before,
.button:hover:before {
    width: 300px;
    height: 300px;
}
a {
    transition: color 0.3s;
    position: relative;
}
a:after {
    content: "";
    background: currentColor;
    width: 0;
    height: 2px;
    transition: width 0.3s;
    position: absolute;
    bottom: -2px;
    left: 0;
}
a:hover:after {
    width: 100%;
}
.card-interactive {
    transition: all 0.3s;
    position: relative;
}
.card-interactive:before {
    content: "";
    border-radius: inherit;
    opacity: 0;
    background: linear-gradient(135deg, #ffffff1a, #0000000d);
    transition: opacity 0.3s;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.card-interactive:hover:before {
    opacity: 1;
}
.card-interactive:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 20px 40px #00000026;
}
* {
    transition-property:
        background-color, border-color, color, fill, stroke, opacity,
        box-shadow, transform;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.parallax-wrapper {
    perspective: 1px;
    height: 100vh;
    overflow: hidden auto;
}
.parallax-layer {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.parallax-bg {
    transform: translateZ(-1px) scale(2);
}
.parallax-base {
    transform: translateZ(0);
}
.gradient-mesh {
    background:
        radial-gradient(at 27% 37%, #00000008 0, #0000 50%),
        radial-gradient(at 97% 21%, #00000005 0, #0000 50%),
        radial-gradient(at 52% 99%, #00000008 0, #0000 50%),
        radial-gradient(at 10% 29%, #00000005 0, #0000 50%),
        radial-gradient(at 97% 96%, #00000008 0, #0000 50%),
        radial-gradient(at 33%, #00000005 0, #0000 50%),
        radial-gradient(at 79% 53%, #00000008 0, #0000 50%);
}
.gradient-radial {
    background: radial-gradient(circle, #0000000d, #0000 70%);
}
.gradient-conic {
    background: conic-gradient(
        from 180deg,
        #00000005,
        #0000,
        #00000005,
        #0000,
        #00000005,
        #0000,
        #00000005 360deg
    );
}
.shadow-soft {
    box-shadow:
        0 2px 8px #0000000a,
        0 1px 2px #0000000f;
}
.shadow-medium {
    box-shadow:
        0 4px 16px #0000000f,
        0 2px 4px #00000014;
}
.shadow-hard {
    box-shadow:
        0 8px 32px #00000014,
        0 4px 8px #0000001a;
}
.shadow-xl-soft {
    box-shadow:
        0 20px 60px #0000001a,
        0 8px 16px #0000001f;
}
.shadow-layered {
    box-shadow:
        0 1px 2px #0000000f,
        0 2px 4px #0000000d,
        0 4px 8px #0000000a,
        0 8px 16px #00000008,
        0 16px 32px #00000005;
}
.inner-glow {
    box-shadow: inset 0 0 20px #ffffff1a;
}
.glass {
    -webkit-backdrop-filter: blur(10px);
    background: #ffffffb3;
    border: 1px solid #ffffff4d;
}
.glass-dark {
    -webkit-backdrop-filter: blur(10px);
    background: #0000004d;
    border: 1px solid #ffffff1a;
}
.depth-1 {
    transform: translateZ(10px);
}
.depth-2 {
    transform: translateZ(20px);
}
.depth-3 {
    transform: translateZ(30px);
}
.transform-3d {
    transform-style: preserve-3d;
    perspective: 1000px;
}
.rotate-y-hover:hover {
    transform: rotateY(5deg);
}
.rotate-x-hover:hover {
    transform: rotateX(5deg);
}
.gradient-border {
    background: #fff;
    border-radius: 12px;
    position: relative;
}
.gradient-border:before {
    content: "";
    background: linear-gradient(135deg, #0000001a, #0000000d, #0000001a);
    border-radius: 12px;
    padding: 2px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
    -webkit-mask-position:
        0 0,
        0 0;
    -webkit-mask-size: auto, auto;
    -webkit-mask-repeat: repeat, repeat;
    -webkit-mask-clip: content-box, border-box;
    -webkit-mask-origin: content-box, border-box;
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    -webkit-mask-source-type: auto, auto;
    mask-mode: match-source, match-source;
}
@keyframes gradient-shift {
    0%,
    to {
        background-position: 0%;
    }
    50% {
        background-position: 100%;
    }
}
.animate-gradient {
    background-size: 200% 200%;
    animation: 8s infinite gradient-shift;
}
@keyframes shimmer {
    0% {
        transform: translate(-100%);
    }
    to {
        transform: translate(100%);
    }
}
.shimmer {
    background: linear-gradient(90deg, #0000, #fff3, #0000) 0 0/1000px 100%;
    animation: 2s infinite shimmer;
}
@keyframes float-slow {
    0%,
    to {
        transform: translateY(0) translate(0);
    }
    33% {
        transform: translateY(-10px) translate(5px);
    }
    66% {
        transform: translateY(5px) translate(-5px);
    }
}
.animate-float-slow {
    animation: 6s ease-in-out infinite float-slow;
}
.parallax-scroll {
    will-change: transform;
    transition: transform 0.1s ease-out;
}
:root {
    --accent-blue: #3b82f6;
    --accent-purple: #8b5cf6;
    --accent-pink: #ec4899;
    --accent-green: #10b981;
    --accent-orange: #f59e0b;
    --accent-gradient: linear-gradient(
        135deg,
        var(--accent-blue) 0%,
        var(--accent-purple) 100%
    );
}
.text-accent-blue {
    color: var(--accent-blue);
}
.text-accent-purple {
    color: var(--accent-purple);
}
.text-accent-green {
    color: var(--accent-green);
}
.bg-accent-gradient {
    background: var(--accent-gradient);
}
.hover-accent-blue {
    transition: color 0.3s;
}
.hover-accent-blue:hover {
    color: var(--accent-blue);
}
.hover-accent-purple {
    transition: color 0.3s;
}
.hover-accent-purple:hover {
    color: var(--accent-purple);
}
.gradient-text-blue {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    -webkit-background-clip: text;
    background-clip: text;
}
.gradient-text-purple {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
    -webkit-background-clip: text;
    background-clip: text;
}
.gradient-text-multi {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #3b82f6, #8b5cf6, #ec4899);
    -webkit-background-clip: text;
    background-clip: text;
}
@keyframes color-shift {
    0%,
    to {
        filter: hue-rotate();
    }
    50% {
        filter: hue-rotate(20deg);
    }
}
.animate-color-shift {
    animation: 4s ease-in-out infinite color-shift;
}
.border-accent-gradient {
    border-image: linear-gradient(
            135deg,
            var(--accent-blue),
            var(--accent-purple)
        )
        1;
}
.glow-blue {
    box-shadow: 0 0 20px #3b82f64d;
}
.glow-purple {
    box-shadow: 0 0 20px #8b5cf64d;
}
.glow-green {
    box-shadow: 0 0 20px #10b9814d;
}
.hover-glow-accent {
    transition: box-shadow 0.3s;
}
.hover-glow-accent:hover {
    box-shadow:
        0 0 30px #3b82f666,
        0 0 60px #8b5cf633;
}
.underline-accent {
    position: relative;
}
.underline-accent:after {
    content: "";
    background: var(--accent-gradient);
    width: 0;
    height: 3px;
    transition: width 0.3s;
    position: absolute;
    bottom: -4px;
    left: 0;
}
.underline-accent:hover:after {
    width: 100%;
}
@keyframes pulse-accent {
    0%,
    to {
        box-shadow: 0 0 #3b82f6b3;
    }
    50% {
        box-shadow: 0 0 0 10px #3b82f600;
    }
}
.animate-pulse-accent {
    animation: 2s ease-in-out infinite pulse-accent;
}
.bg-gradient-animated {
    background: linear-gradient(135deg, #fcfeff, #f0f9ff, #fcfeff) 0 0/200% 200%;
    animation: 8s infinite gradient-shift;
}
.text-highlight {
    display: inline-block;
    position: relative;
}
.text-highlight:before {
    content: "";
    z-index: -1;
    transform-origin: 0;
    background: linear-gradient(135deg, #3b82f633, #8b5cf633);
    width: 100%;
    height: 30%;
    transition: transform 0.3s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0);
}
.text-highlight:hover:before {
    transform: scaleX(1);
}
.transition-colors-slow {
    transition:
        color 0.5s,
        background-color 0.5s,
        border-color 0.5s;
}
.dot-accent {
    background: var(--accent-gradient);
    border-radius: 50%;
    width: 8px;
    height: 8px;
    animation: 2s ease-in-out infinite pulse-accent;
    display: inline-block;
}
.page-transition-enter {
    opacity: 0;
    transform: translateY(20px);
}
.page-transition-enter-active {
    opacity: 1;
    transition:
        opacity 0.6s ease-out,
        transform 0.6s ease-out;
    transform: translateY(0);
}
.page-transition-exit {
    opacity: 1;
    transform: translateY(0);
}
.page-transition-exit-active {
    opacity: 0;
    transition:
        opacity 0.4s ease-in,
        transform 0.4s ease-in;
    transform: translateY(-20px);
}
html {
    scroll-behavior: smooth;
}
.section-reveal {
    opacity: 0;
    transition:
        opacity 0.8s ease-out,
        transform 0.8s ease-out;
    transform: translateY(30px);
}
.section-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
}
.stagger-children > * {
    opacity: 0;
    animation: 0.6s ease-out forwards stagger-fade-in;
    transform: translateY(20px);
}
.stagger-children > :first-child {
    animation-delay: 0.1s;
}
.stagger-children > :nth-child(2) {
    animation-delay: 0.2s;
}
.stagger-children > :nth-child(3) {
    animation-delay: 0.3s;
}
.stagger-children > :nth-child(4) {
    animation-delay: 0.4s;
}
.stagger-children > :nth-child(5) {
    animation-delay: 0.5s;
}
.stagger-children > :nth-child(6) {
    animation-delay: 0.6s;
}
@keyframes stagger-fade-in {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.btn-press {
    transition:
        transform 0.1s,
        box-shadow 0.1s;
}
.btn-press:active {
    transform: scale(0.95);
    box-shadow: 0 2px 4px #0000001a;
}
input:focus,
textarea:focus {
    border-color: #3b82f6;
    outline: none;
    transition:
        border-color 0.2s,
        box-shadow 0.2s;
    box-shadow: 0 0 0 3px #3b82f61a;
}
input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    border: 2px solid #d1d5db;
    border-radius: 4px;
    width: 20px;
    height: 20px;
    transition: all 0.2s;
    position: relative;
}
input[type="checkbox"]:checked {
    background: linear-gradient(135deg, #3b82f6, #8b5cf6);
    border-color: #3b82f6;
}
input[type="checkbox"]:checked:after {
    content: "✓";
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.toggle-switch {
    width: 50px;
    height: 24px;
    display: inline-block;
    position: relative;
}
.toggle-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}
.toggle-slider {
    cursor: pointer;
    background-color: #ccc;
    border-radius: 24px;
    transition: all 0.3s;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.toggle-slider:before {
    content: "";
    background-color: #fff;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    transition: all 0.3s;
    position: absolute;
    bottom: 3px;
    left: 3px;
}
input:checked + .toggle-slider {
    background: linear-gradient(135deg, #3b82f6, #8b5cf6);
}
input:checked + .toggle-slider:before {
    transform: translate(26px);
}
.icon-spin-hover:hover {
    animation: 0.6s ease-in-out spin;
}
@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}
.icon-bounce-hover:hover {
    animation: 0.6s bounce;
}
@keyframes bounce {
    0%,
    to {
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
        transform: translateY(-25%);
    }
    50% {
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
        transform: none;
    }
}
.tooltip {
    display: inline-block;
    position: relative;
}
.tooltip .tooltiptext {
    visibility: hidden;
    color: #fff;
    text-align: center;
    z-index: 1;
    opacity: 0;
    background-color: #1f2937;
    border-radius: 6px;
    width: 120px;
    margin-left: -60px;
    padding: 8px;
    font-size: 12px;
    transition:
        opacity 0.3s,
        transform 0.3s;
    position: absolute;
    bottom: 125%;
    left: 50%;
    transform: translateY(10px);
}
.tooltip .tooltiptext:after {
    content: "";
    border: 5px solid #0000;
    border-top-color: #1f2937;
    margin-left: -5px;
    position: absolute;
    top: 100%;
    left: 50%;
}
.tooltip:hover .tooltiptext {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}
.spinner {
    border: 3px solid #0000001a;
    border-top-color: #3b82f6;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    animation: 0.8s linear infinite spin-loader;
}
@keyframes spin-loader {
    0% {
        transform: rotate(0);
    }
    to {
        transform: rotate(360deg);
    }
}
.progress-bar {
    background-color: #e5e7eb;
    border-radius: 2px;
    width: 100%;
    height: 4px;
    overflow: hidden;
}
.progress-bar-fill {
    background: linear-gradient(90deg, #3b82f6, #8b5cf6);
    height: 100%;
    transition: width 0.3s;
    animation: 2s infinite progress-shimmer;
}
@keyframes progress-shimmer {
    0% {
        background-position: -100% 0;
    }
    to {
        background-position: 200% 0;
    }
}
.glitch {
    font-weight: 700;
    position: relative;
}
.glitch:before,
.glitch:after {
    content: attr(data-text);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.glitch:before {
    text-shadow: -2px 0 #ff00de;
    clip: rect(24px, 550px, 90px, 0);
    animation: 3s linear infinite alternate-reverse glitch-anim-2;
    left: 2px;
}
.glitch:after {
    text-shadow: -2px 0 #00fff9;
    clip: rect(85px, 550px, 140px, 0);
    animation: 2.5s linear infinite alternate-reverse glitch-anim;
    left: -2px;
}
@keyframes glitch-anim {
    0% {
        clip: rect(61px, 9999px, 90px, 0);
    }
    5% {
        clip: rect(33px, 9999px, 144px, 0);
    }
    10% {
        clip: rect(121px, 9999px, 105px, 0);
    }
    15% {
        clip: rect(144px, 9999px, 40px, 0);
    }
    20% {
        clip: rect(38px, 9999px, 88px, 0);
    }
    25% {
        clip: rect(129px, 9999px, 123px, 0);
    }
    30% {
        clip: rect(98px, 9999px, 78px, 0);
    }
    35% {
        clip: rect(54px, 9999px, 133px, 0);
    }
    40% {
        clip: rect(109px, 9999px, 52px, 0);
    }
    45% {
        clip: rect(84px, 9999px, 115px, 0);
    }
    50% {
        clip: rect(72px, 9999px, 95px, 0);
    }
    55% {
        clip: rect(117px, 9999px, 68px, 0);
    }
    60% {
        clip: rect(45px, 9999px, 142px, 0);
    }
    65% {
        clip: rect(132px, 9999px, 35px, 0);
    }
    70% {
        clip: rect(91px, 9999px, 108px, 0);
    }
    75% {
        clip: rect(63px, 9999px, 125px, 0);
    }
    80% {
        clip: rect(136px, 9999px, 58px, 0);
    }
    85% {
        clip: rect(77px, 9999px, 102px, 0);
    }
    90% {
        clip: rect(49px, 9999px, 137px, 0);
    }
    95% {
        clip: rect(114px, 9999px, 71px, 0);
    }
    to {
        clip: rect(86px, 9999px, 119px, 0);
    }
}
@keyframes glitch-anim-2 {
    0% {
        clip: rect(129px, 9999px, 36px, 0);
    }
    5% {
        clip: rect(75px, 9999px, 107px, 0);
    }
    10% {
        clip: rect(51px, 9999px, 140px, 0);
    }
    15% {
        clip: rect(122px, 9999px, 62px, 0);
    }
    20% {
        clip: rect(93px, 9999px, 113px, 0);
    }
    25% {
        clip: rect(44px, 9999px, 131px, 0);
    }
    30% {
        clip: rect(116px, 9999px, 69px, 0);
    }
    35% {
        clip: rect(82px, 9999px, 104px, 0);
    }
    40% {
        clip: rect(57px, 9999px, 135px, 0);
    }
    45% {
        clip: rect(128px, 9999px, 47px, 0);
    }
    50% {
        clip: rect(99px, 9999px, 78px, 0);
    }
    55% {
        clip: rect(41px, 9999px, 142px, 0);
    }
    60% {
        clip: rect(112px, 9999px, 65px, 0);
    }
    65% {
        clip: rect(88px, 9999px, 109px, 0);
    }
    70% {
        clip: rect(54px, 9999px, 138px, 0);
    }
    75% {
        clip: rect(125px, 9999px, 52px, 0);
    }
    80% {
        clip: rect(96px, 9999px, 83px, 0);
    }
    85% {
        clip: rect(38px, 9999px, 145px, 0);
    }
    90% {
        clip: rect(119px, 9999px, 60px, 0);
    }
    95% {
        clip: rect(85px, 9999px, 106px, 0);
    }
    to {
        clip: rect(48px, 9999px, 134px, 0);
    }
}
.neon-text {
    color: #fff;
    text-shadow:
        0 0 5px #fff,
        0 0 10px #fff,
        0 0 20px #3b82f6,
        0 0 40px #3b82f6,
        0 0 80px #3b82f6,
        0 0 90px #3b82f6,
        0 0 100px #3b82f6,
        0 0 150px #3b82f6;
    animation: 1.5s infinite alternate neon-flicker;
}
@keyframes neon-flicker {
    0%,
    18%,
    22%,
    25%,
    53%,
    57%,
    to {
        text-shadow:
            0 0 5px #fff,
            0 0 10px #fff,
            0 0 20px #3b82f6,
            0 0 40px #3b82f6,
            0 0 80px #3b82f6,
            0 0 90px #3b82f6,
            0 0 100px #3b82f6,
            0 0 150px #3b82f6;
    }
    20%,
    24%,
    55% {
        text-shadow: none;
    }
}
.neon-border {
    border: 2px solid #3b82f6;
    animation: 2s infinite neon-border-pulse;
    box-shadow:
        0 0 5px #3b82f6,
        0 0 10px #3b82f6,
        0 0 20px #3b82f6,
        inset 0 0 5px #3b82f6,
        inset 0 0 10px #3b82f6;
}
@keyframes neon-border-pulse {
    0%,
    to {
        box-shadow:
            0 0 5px #3b82f6,
            0 0 10px #3b82f6,
            0 0 20px #3b82f6,
            inset 0 0 5px #3b82f6,
            inset 0 0 10px #3b82f6;
    }
    50% {
        box-shadow:
            0 0 10px #3b82f6,
            0 0 20px #3b82f6,
            0 0 40px #3b82f6,
            inset 0 0 10px #3b82f6,
            inset 0 0 20px #3b82f6;
    }
}
.cyber-glow {
    position: relative;
    overflow: hidden;
}
.cyber-glow:before {
    content: "";
    border-radius: inherit;
    z-index: -1;
    filter: blur(8px);
    opacity: 0.7;
    background: linear-gradient(
            45deg,
            #3b82f6,
            #8b5cf6,
            #ec4899,
            #f59e0b,
            #10b981,
            #3b82f6
        )
        0 0/400%;
    animation: 20s linear infinite cyber-glow-anim;
    position: absolute;
    top: -2px;
    right: -2px;
    bottom: -2px;
    left: -2px;
}
@keyframes cyber-glow-anim {
    0% {
        background-position: 0%;
    }
    50% {
        background-position: 100%;
    }
    to {
        background-position: 0%;
    }
}
.holographic {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(
            45deg,
            #ff0080,
            #ff8c00 16%,
            #40e0d0,
            #0080ff 50%,
            #8000ff 66%,
            #ff0080,
            #ff8c00
        )
        0 0/300% 300%;
    -webkit-background-clip: text;
    background-clip: text;
    animation: 6s infinite holographic-anim;
}
@keyframes holographic-anim {
    0%,
    to {
        background-position: 0%;
    }
    50% {
        background-position: 100%;
    }
}
.scanlines {
    position: relative;
    overflow: hidden;
}
.scanlines:before {
    content: "";
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        #00000026,
        #00000026 1px,
        #0000 1px,
        #0000 2px
    );
    width: 100%;
    height: 100%;
    animation: 8s linear infinite scanlines-move;
    position: absolute;
    top: 0;
    left: 0;
}
@keyframes scanlines-move {
    0% {
        transform: translateY(0);
    }
    to {
        transform: translateY(100%);
    }
}
.hero-title {
    letter-spacing: -0.03em;
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #000, #1f2937);
    -webkit-background-clip: text;
    background-clip: text;
    font-size: clamp(2.5rem, 8vw, 5rem);
    font-weight: 800;
    line-height: 1.1;
}
.hero-subtitle {
    max-width: 42rem;
    margin-left: auto;
    margin-right: auto;
    font-size: clamp(1.125rem, 3vw, 1.5rem);
    line-height: 1.6;
}
.hero-cta {
    background: linear-gradient(135deg, #000, #1f2937);
    border-radius: 0.75rem;
    padding: 1.5rem 3rem;
    font-size: 1.125rem;
    font-weight: 600;
    transition: all 0.3s;
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 40px #0003;
}
.hero-cta:before {
    content: "";
    background: linear-gradient(90deg, #0000, #fff3, #0000);
    width: 100%;
    height: 100%;
    transition: left 0.5s;
    position: absolute;
    top: 0;
    left: -100%;
}
.hero-cta:hover:before {
    left: 100%;
}
.hero-cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 50px #0000004d;
}
.hero-orb {
    filter: blur(80px);
    opacity: 0.3;
    border-radius: 50%;
    animation: 20s ease-in-out infinite float-orb;
    position: absolute;
}
.hero-orb-1 {
    background: radial-gradient(circle, #3b82f666, #0000);
    width: 400px;
    height: 400px;
    animation-delay: 0s;
    top: 10%;
    left: 10%;
}
.hero-orb-2 {
    background: radial-gradient(circle, #8b5cf666, #0000);
    width: 500px;
    height: 500px;
    animation-delay: 5s;
    top: 50%;
    right: 10%;
}
.hero-orb-3 {
    background: radial-gradient(circle, #ec48994d, #0000);
    width: 350px;
    height: 350px;
    animation-delay: 10s;
    bottom: 10%;
    left: 50%;
}
@keyframes float-orb {
    0%,
    to {
        transform: translate(0) scale(1);
    }
    25% {
        transform: translate(30px, -30px) scale(1.1);
    }
    50% {
        transform: translate(-20px, 20px) scale(0.9);
    }
    75% {
        transform: translate(20px, 30px) scale(1.05);
    }
}
.hero-stats {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    margin-top: 4rem;
    display: grid;
}
.hero-stat-card {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    text-align: center;
    background: #fffc;
    border: 1px solid #0000001a;
    border-radius: 1rem;
    padding: 2rem;
    transition: all 0.3s;
}
.hero-stat-card:hover {
    border-color: #3b82f64d;
    transform: translateY(-5px);
    box-shadow: 0 20px 40px #0000001a;
}
.hero-stat-number {
    -webkit-text-fill-color: transparent;
    background: linear-gradient(135deg, #3b82f6, #8b5cf6);
    -webkit-background-clip: text;
    background-clip: text;
    margin-bottom: 0.5rem;
    font-size: 2.5rem;
    font-weight: 800;
}
.hero-stat-label {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b7280;
    font-size: 0.875rem;
    font-weight: 600;
}
.hero-decoration {
    pointer-events: none;
    position: absolute;
}
.hero-grid-pattern {
    background-image:
        linear-gradient(#3b82f608 1px, #0000 1px),
        linear-gradient(90deg, #3b82f608 1px, #0000 1px);
    background-size: 50px 50px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-mask-image: radial-gradient(#000 0%, #0000 70%);
    mask-image: radial-gradient(#000, #0000 70%);
}
.crypto-logo {
    object-fit: cover;
    background: 0 0;
    border: 2px solid #fff3;
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
    transition: all 0.3s;
    box-shadow: 0 2px 8px #0000001a;
}
.crypto-logo:hover {
    border-color: #3b82f680;
    transform: scale(1.1);
    box-shadow: 0 4px 12px #3b82f633;
}
.crypto-ticker-card {
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background: #fffc;
    border: 1px solid #00000014;
    border-radius: 0.75rem;
    min-width: 200px;
    padding: 1rem 1.5rem;
    transition: all 0.3s;
}
.crypto-ticker-card:hover {
    background: #fffffff2;
    border-color: #3b82f633;
    transform: translateY(-2px);
    box-shadow: 0 8px 16px #00000014;
}
.tilt-card {
    transform-style: preserve-3d;
    will-change: transform;
    transition: transform 0.3s ease-out;
}
.tilt-card:hover {
    transform: perspective(1000px) rotateX(var(--rotate-x, 0deg))
        rotateY(var(--rotate-y, 0deg)) scale3d(1.02, 1.02, 1.02);
}
.tilt-card-inner {
    transform: translateZ(20px);
}
.tilt-card-glow {
    border-radius: inherit;
    opacity: 0;
    background: radial-gradient(
        circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
        #6366f126,
        transparent 50%
    );
    pointer-events: none;
    transition: opacity 0.3s ease-out;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.tilt-card:hover .tilt-card-glow {
    opacity: 1;
}
.btn-shimmer {
    position: relative;
    overflow: hidden;
}
.btn-shimmer:before {
    content: "";
    background: linear-gradient(90deg, #0000, #ffffff4d, #0000);
    width: 100%;
    height: 100%;
    transition: left 0.5s;
    position: absolute;
    top: 0;
    left: -100%;
}
.btn-shimmer:hover:before {
    left: 100%;
}
.btn-shimmer-continuous {
    position: relative;
    overflow: hidden;
}
.btn-shimmer-continuous:after {
    content: "";
    pointer-events: none;
    background: linear-gradient(
        90deg,
        #0000,
        #ffffff1a,
        #ffffff4d,
        #ffffff1a,
        #0000
    );
    width: 100%;
    height: 100%;
    animation: 3s infinite shimmer;
    position: absolute;
    top: 0;
    left: 0;
}
@keyframes glow-pulse {
    0%,
    to {
        box-shadow:
            0 0 20px #6366f180,
            0 0 40px #6366f14d,
            0 0 60px #6366f11a;
    }
    50% {
        box-shadow:
            0 0 30px #6366f1cc,
            0 0 60px #6366f180,
            0 0 90px #6366f14d;
    }
}
.btn-glow-pulse {
    animation: 2s ease-in-out infinite glow-pulse;
}
.roadmap-line {
    z-index: 0;
    opacity: 0.3;
    background: linear-gradient(#9945ff, #00d4ff);
    width: 4px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%);
}
.timeline-dot.active {
    transform: scale(1.5);
    box-shadow: 0 0 0 5px #00d4ff80;
}
.roadmap-line-fill {
    z-index: 1;
    background: linear-gradient(#9945ff, #00d4ff);
    width: 100%;
    height: 0%;
    position: absolute;
    top: 0;
    left: 0;
}
.roadmap-item {
    opacity: 0;
    transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
    transform: translateY(30px);
}
.roadmap-item.revealed {
    opacity: 1;
    transform: translateY(0);
}
.roadmap-item[data-delay="0"].revealed {
    transition-delay: 0s;
}
.roadmap-item[data-delay="100"].revealed {
    transition-delay: 0.1s;
}
.roadmap-item[data-delay="200"].revealed {
    transition-delay: 0.2s;
}
.timeline-dot {
    z-index: 1;
    transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
}
.timeline-dot.active {
    animation: 2s ease-in-out infinite pulse-dot;
    transform: scale(1.8);
    box-shadow:
        0 0 0 8px #9333ea33,
        0 0 20px #9333ea66;
}
@keyframes pulse-dot {
    0%,
    to {
        box-shadow:
            0 0 0 8px #9333ea33,
            0 0 20px #9333ea66;
    }
    50% {
        box-shadow:
            0 0 0 12px #9333ea1a,
            0 0 30px #9333ea99;
    }
}
@property --tw-translate-x {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-translate-y {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-translate-z {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-scale-x {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-scale-y {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-scale-z {
    syntax: "*";
    inherits: false;
    initial-value: 1;
}
@property --tw-rotate-x {
    syntax: "*";
    inherits: false;
}
@property --tw-rotate-y {
    syntax: "*";
    inherits: false;
}
@property --tw-rotate-z {
    syntax: "*";
    inherits: false;
}
@property --tw-skew-x {
    syntax: "*";
    inherits: false;
}
@property --tw-skew-y {
    syntax: "*";
    inherits: false;
}
@property --tw-pan-x {
    syntax: "*";
    inherits: false;
}
@property --tw-pan-y {
    syntax: "*";
    inherits: false;
}
@property --tw-pinch-zoom {
    syntax: "*";
    inherits: false;
}
@property --tw-space-y-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-space-x-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-divide-x-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-border-style {
    syntax: "*";
    inherits: false;
    initial-value: solid;
}
@property --tw-divide-y-reverse {
    syntax: "*";
    inherits: false;
    initial-value: 0;
}
@property --tw-gradient-position {
    syntax: "*";
    inherits: false;
}
@property --tw-gradient-from {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000;
}
@property --tw-gradient-via {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000;
}
@property --tw-gradient-to {
    syntax: "<color>";
    inherits: false;
    initial-value: #0000;
}
@property --tw-gradient-stops {
    syntax: "*";
    inherits: false;
}
@property --tw-gradient-via-stops {
    syntax: "*";
    inherits: false;
}
@property --tw-gradient-from-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 0%;
}
@property --tw-gradient-via-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 50%;
}
@property --tw-gradient-to-position {
    syntax: "<length-percentage>";
    inherits: false;
    initial-value: 100%;
}
@property --tw-leading {
    syntax: "*";
    inherits: false;
}
@property --tw-font-weight {
    syntax: "*";
    inherits: false;
}
@property --tw-tracking {
    syntax: "*";
    inherits: false;
}
@property --tw-ordinal {
    syntax: "*";
    inherits: false;
}
@property --tw-slashed-zero {
    syntax: "*";
    inherits: false;
}
@property --tw-numeric-figure {
    syntax: "*";
    inherits: false;
}
@property --tw-numeric-spacing {
    syntax: "*";
    inherits: false;
}
@property --tw-numeric-fraction {
    syntax: "*";
    inherits: false;
}
@property --tw-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
    syntax: "*";
    inherits: false;
}
@property --tw-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%;
}
@property --tw-inset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
    syntax: "*";
    inherits: false;
}
@property --tw-inset-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%;
}
@property --tw-ring-color {
    syntax: "*";
    inherits: false;
}
@property --tw-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
    syntax: "*";
    inherits: false;
}
@property --tw-inset-ring-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
    syntax: "*";
    inherits: false;
}
@property --tw-ring-offset-width {
    syntax: "<length>";
    inherits: false;
    initial-value: 0;
}
@property --tw-ring-offset-color {
    syntax: "*";
    inherits: false;
    initial-value: #fff;
}
@property --tw-ring-offset-shadow {
    syntax: "*";
    inherits: false;
    initial-value: 0 0 #0000;
}
@property --tw-outline-style {
    syntax: "*";
    inherits: false;
    initial-value: solid;
}
@property --tw-blur {
    syntax: "*";
    inherits: false;
}
@property --tw-brightness {
    syntax: "*";
    inherits: false;
}
@property --tw-contrast {
    syntax: "*";
    inherits: false;
}
@property --tw-grayscale {
    syntax: "*";
    inherits: false;
}
@property --tw-hue-rotate {
    syntax: "*";
    inherits: false;
}
@property --tw-invert {
    syntax: "*";
    inherits: false;
}
@property --tw-opacity {
    syntax: "*";
    inherits: false;
}
@property --tw-saturate {
    syntax: "*";
    inherits: false;
}
@property --tw-sepia {
    syntax: "*";
    inherits: false;
}
@property --tw-drop-shadow {
    syntax: "*";
    inherits: false;
}
@property --tw-drop-shadow-color {
    syntax: "*";
    inherits: false;
}
@property --tw-drop-shadow-alpha {
    syntax: "<percentage>";
    inherits: false;
    initial-value: 100%;
}
@property --tw-drop-shadow-size {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-blur {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-brightness {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-contrast {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-grayscale {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-hue-rotate {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-invert {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-opacity {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-saturate {
    syntax: "*";
    inherits: false;
}
@property --tw-backdrop-sepia {
    syntax: "*";
    inherits: false;
}
@property --tw-duration {
    syntax: "*";
    inherits: false;
}
@property --tw-ease {
    syntax: "*";
    inherits: false;
}
@property --tw-content {
    syntax: "*";
    inherits: false;
    initial-value: "";
}
@keyframes pulse {
    50% {
        opacity: 0.5;
    }
}
@keyframes enter {
    0% {
        opacity: var(--tw-enter-opacity, 1);
        transform: translate3d(
                var(--tw-enter-translate-x, 0),
                var(--tw-enter-translate-y, 0),
                0
            )
            scale3d(
                var(--tw-enter-scale, 1),
                var(--tw-enter-scale, 1),
                var(--tw-enter-scale, 1)
            )
            rotate(var(--tw-enter-rotate, 0));
    }
}
@keyframes exit {
    to {
        opacity: var(--tw-exit-opacity, 1);
        transform: translate3d(
                var(--tw-exit-translate-x, 0),
                var(--tw-exit-translate-y, 0),
                0
            )
            scale3d(
                var(--tw-exit-scale, 1),
                var(--tw-exit-scale, 1),
                var(--tw-exit-scale, 1)
            )
            rotate(var(--tw-exit-rotate, 0));
    }
}
@keyframes accordion-down {
    0% {
        height: 0;
    }
    to {
        height: var(
            --radix-accordion-content-height,
            var(
                --bits-accordion-content-height,
                var(--reka-accordion-content-height, auto)
            )
        );
    }
}
@keyframes accordion-up {
    0% {
        height: var(
            --radix-accordion-content-height,
            var(
                --bits-accordion-content-height,
                var(--reka-accordion-content-height, auto)
            )
        );
    }
    to {
        height: 0;
    }
}
@keyframes caret-blink {
    0%,
    70%,
    to {
        opacity: 1;
    }
    20%,
    50% {
        opacity: 0;
    }
}
